01 리눅스의 기본 개념과 프로그램 작성

· 다중작업 : 선점 가능한(preemptive) 실제 다중 작업 지원

 - 작업 :  실행중인 상태의 프로그램(프로세스)

· 다중 사용자

- 동시에 여러 명의 사용자가 시스템에서 작업하는 것을 허용

- 터미널이나 네트워크 연결을 통해서 동일한 하나의 리눅스 시스템을 이용

· 다중 프로세서 : 리눅스는 다중 프로세서 구조에서도 실행 가능

- 다중 프로세서 : 2개 이상의 CPU로 구성된 컴퓨터 시스템

· 이식성이 높고 다양한 언어로 사용이 가능해 확장성이 좋음

· 파일 시스템

- 트리구조

- 별도로 추가된 물리적인 보조기억장치들이나 하드웨어 디바이스들도 파일형태로 파일시스템에 연동되어있음

· 권한

- 사용자별로 별도의 권한 부여

- 관리자 : 시스템을 관리하기 위해 막강한 권한을 갖음

- 사용자 : 여러 명의 사용자가 동시에 사용할 수 있기 때문에 발생할 수 있는 여러 가지 문제를 사전에 방지

· 셸

- 사용자가 시스템을 쉽게 사용할 수 있게 중간자 역할의 프로그램

- 프롬프트에 명령어 라인 입력해서 원하는 작업 수행 가능


· man 명령어 : 시스템의 명령이나 프로그래밍 언어의 함수 사용법을 익히기 위한 핵심

· cat 명령어 : 파일 내용을 화면에 표시(도스의 type과 유사)

· vi 편집기 : 편집모드→명령어모드→ESC→:→wq→Enter


★gcc를 별다른 옵션 없이 실행하면 생성되는 실행파일명은 항상 a.out

· 실행파일명을 변경하고 싶으면 - o 옵션을 사용하면 변경 가능

$ gcc [option] source_1.c [source_2.c source_3.c ... source_n.c]

[option]

- o filename(생성될 실행파일명)

- c (one.c) : 저장한 소스코드의 목적파일 만들 때


 [두 개 이상의 소스코드로 하나의 실행 파일 만들기]

 실행 파일을 만들기 위한 두 개의 소스코드 one.c와 two.c가 있음


 Q. 두 개의 파일을 동시에 컴파일하여 한 개의 실행파일인 three를 만들려고 한다. 컴파일하는 명령어를 쓰세요.

 A. $ gcc - o three one.c two.c


· make와 Makefile

- Makefile 파일

= 소스 코드, 목적 코드, 실행 코드들의 연관성을 나타내고, 이전 단계의 파일이 갱신되었을 때 다음 단계의 파일을 만들기 위한 명령어를 포함

= make 프로그램은 Makefile 파일에서 정한 연관성을 유지해 항상 최신의 소스코드에 부합하는 실행코드를 쉽게 만들수 있도록 함

= Makefile의 간단한 구조

target_list: dependency_list

command_list

 Q. three 실행파일이 만들어질 수 있도록 make 유틸리티를 실행할 수 있는 Makefile 파일의 내용을 쓰세요.

 A. three: one.c two.c

        gcc - o three one.c two.c


02 파일 시스템

 부트 블록(Boot Block)

 슈퍼 블록(Super Block)

 아이노드 블록(Inode Blocks)

 데이터 블록(Data Blocks)


· 부트 블록 : 운영체제를 부팅하기 위한 코드 저장

· 슈퍼 블록 : 파일 시스템과 관련된 정보를 담고 있음

· 아이노드 블록 : 파일에 대한 정보를 저장하고 있는 부분, 파일 하나당 반드시 하나의 아이노드를 가지고 있음

· 데이터 블록 : 파일에 실제로 보관해야 할 데이터들을 저장, 보관하는 데이터 크기에 따라 여러개일 수 있음


$ls -l

-

rw-r--r--

1

kimyh

graduate

30 

Nov 18 16:54

temp

파일유형

접근권한

하드링크수

소유자명

그룹명

파일크기

생성날짜

파일명

아이노드 블록에 저장

디렉터리 파일의 데이터 블록에 저장


· 파일

- 시스템에서 정보를 저장하기 위한 가장 기본적인 단위

- 단순히 바이너리 데이터의 흐름을 저장

- 논리적인 구조는 정해져있지 않음(프로그램에 의해 논리적인 구조 결정됨)


· 디렉터리 : 파일의 목록을 저장하기 위한 특수한 형태의 파일(디렉터리 파일)


$ls -lai : 각 파일의 아이노드 번호를 확인할 수 있음

· 디렉터리 항

- 디렉터리 파일의 목록

- 모든 디렉터리는 항상 두 개의 항을 가지고 있음

= 자기 자신을 나타내는 항 : .

= 부모 디렉터리를 나타내는 항 : ..

· od 명령어

- 지정한 파일의 데이터 블록의 내용을 출력

- 기본적으로 바이트의 값을 8진수 형태로 보여줌

$od -c : 문자 코드에 해당하는 값일 경우 실제 문자를 보여줌


119271 . \0

15552   . . \0

119272 f i l e \0

119273 t e x t \0

먼저 아이노드 나오고 다음으로 파일명에 해당하는 NULL문자로 종결


· 계층구조(트리구조)


· 절대경로 : 불변하는 절대적인 위치를 가지는 루트 디렉터리를 기준으로 파일의 위치 표현

· 상대경로 : 현재 디렉터리를 기준으로 파일의 위치 표현


 Q. 다음의 트리 구조에서 현재 디렉터리가 /root/bin일 때, banana 디렉터리를 절대 경로와 상대 경로로 표현하세요.

 A. 절대경로 : /home/banana

     상대경로 : ../../home/banana


· 새로운 파일 생성

① 생성할 디렉터리에 동일한 이름의 항이 존재하는지 확인

② 아이노드 블록 하나를 할당받음

③ 할당받은 아이노드 블록에 파일의 정보를 저장

④ 파일이 저장할 데이터의 크기에 따라 데이터 블록 할당받음


Q. 임의의 텍스트 파일 temp.txt를 하나 만들고, 그 파일의 권한을 소유자는 읽기, 쓰기, 실행이 가능하도록 권한을 주고, 동일 그룹은 읽기만 가능하고, 기타 사용자는 실행만 가능하도록 권한 설정하는 명령어를 쓰세요.

A. $ touch temp.txt

   $ chmod 741 temp.txt


   $ cat > temp.txt

   $ chmod 741 temp.txt


· 소유권과 허가

- 소유권

= 파일이 어느 사용자의 것인지 나타냄

= 모든 파일은 시스템에 등록된 사용자 중 한 사용자의 소유


- 허가

= 모든 파일 : 읽기, 쓰기, 실행 권한

= 소유주 / 동일 그룹 사용자/ 기타 사용자

· 접근 권한 수정

$ chmod 644 file : file의 권한을 644로 변경

· 파일의 유형

- 일반 파일 : 흔히 접하는 파일 유형으로 실행파일, 디렉터리 파일 등

- 특수 파일 : 주기억장치, 보조기억장치, 파이프, 터미널 연결상태 등

= 'c'와 'b'로 표현됨

= 'c'는 문자(character) 단위로 데이터를 전송하는 디바이스

= 'd'는 블록(block) 단위로 데이터를 전송하는 디바이스

· 'tty' 명령으로 자신의 연결 상태가 어떤 파일로 표현되어 있는지 확인 가능

 $tty

 /dev/pts/7

 $ls -l /dev/pts

 total 0

 crw--w---- 1 fineplus tty 136, 2 Nov 18 19:26 2

 crw--w---- 1 kimyh   tty 136, 7 Nov 18 19:57 7

 $who

 fineplus pts/2

 kimyh   pts/7


03 파일 다루기

 함수

 의미

 open

 이미 존재하는 파일을 읽기 또는 쓰기용으로 열거나, 새로운 파일을 생성하여 연다.

 creat

 새로운 파일을 생성하여 연다.

 close

 open 또는 creat로 열려진 파일을 닫는다.

 read

 열려진 파일로부터 데이터를 읽어 들인다.

 write

 열려진 파일에 데이터를 쓴다.

 lseek

 파일 안에서 지정한 바이트 위치로 이동한다.

 unlink, remove

 파일을 삭제한다.


 /*program ex03-01.c*/

 #include<sys/types.h>

 #include<fcntl.h>

 #include<unistd.h>

 #include<stdio.h>

 #include<string.h>


 void main()

 {

     int filedes, fdnew1, fdnew2;

     ssize_t nread;

     off_t newpos;


     char buffer[1024];

     char content[] = "Hello my friend!!\n";


     filedes = open("data.txt", O_RDWR);


     nread = read(filedes, buffer, 1024);

     printf("%s", buffer);


     write(filedes, content, strlen(content));


     newpos = lseek(filedes, (off_t)0, SEEK_SET);

     nread = read(filedes, buffer, 1024);

     printf("%s", buffer);


     close(filedes);


     fdnew1 = open("newdata1.txt", O_RDWR | O_CREAT, 0644);

     fdnew2 = creat("newdata2.txt", 0644);


     close(fdnew1);

     close(fdnew2);

     unlink("newdata2.txt");

 }


· 파일을 다루는 프로그램을 작성할 때 반드시 알아야 하는 두 가지의 개념

<파일 기술자> <읽기/쓰기 포인터>
· 파일 기술자

- 실행중인 프로그램과 하나의 파일 사이에 연결된 개방 상태

- 음수가 아닌 정수형 값으로 시스템이 결정

- 프로그램 작성 시 실제 값이 무엇인지 알 필요 없음

- 파일 개방 실패하면 -1이 됨

- 커널에 의해서 관리

- 하나의 프로그램은 동시에 여러 개의 파일을 개방할 수 있음

- 여러 개의 프로그램이 동시에 하나의 파일을 개방할 수 있음

- 어떤 경우든 커널에 의해서 각 개방상태가 유일하게 식별되어 관리됨


· 읽기/쓰기 포인터

- 개방된 파일 내에서 읽기 작업이나 쓰기 작업을 수행할 바이트 단위의 위치

- 특정 위치를 기준으로 한 상대적인 위치를 의미하는 오프셋(offset)

- 파일 개방한 직후 읽기/쓰기 포인터 : 0

= 파일의 첫번째 바이트 가리킴

= 파일의 내용을 읽거나 파일에 새로운 데이터가 작성되면 그만큼 증가함

= 파일을 다 읽으면 파일의 마지막을 의미하는 EOF(end-of-file) 가리킴

- 파일 기술자마다 하나씩 존재

= 서로 다른 프로그램이 동일한 파일을 개방해도 파일 기술자가 다르기 때문에 마찬가지로 서로 다른 읽기/쓰기 포인터를 갖음

= 서로의 작업이 상대에게 영향을 주지 않음


· open : 이미 존재하는 파일을 읽기 또는 쓰기 용으로 열거나, 새로운 파일을 생성하여 연다.

- 절대경로로 지정

filedes = open("/home/lsp/data.txt", O_RDONLY);

- 상대경로로 지정

filedes = open("data.txt", O_RDONLY);


- O_RDONLY : 읽기만 가능한 상태로 접근

- O_WRONLY : 쓰기만 가능한 상태로 접근

- O_RDWR : 읽기, 쓰기 모두 가능한 상태로 접근


- 반환값

= 0 : 표준 입력

= 1 : 표준 출력

= 2 : 표준 에러

= -1 : 개방 실패(파일 존재하지 않거나 접근권한 없음)

+ if(filedes = -1)

{

 printf("file open error!!n");

 exit(1);

}

· close : 열려진 파일을 닫는다.

- 할당받은 파일 기술자를 반환

- 사용이 끝나면 반드시 닫아야함

= 하나의 프로세스가 동시에 개방할 수 있는 파일의 수는 제한되어 있음

= 시스템 차원에서 동시에 개방할 수 있는 파일의 수는 제한되어 있음

+ filedes = open("data.txt", O_RDONLY); //파일을 읽기전용으로 개방

...

close(filedes); // 파일 닫기


· open으로 새로운 파일 생성하기

- O_CREAT 플래그 : open으로 새로운 파일 생성할 때 사용

+ filedes = open("data.txt", O_RDONLY | O_CREAT, 0644);

- O_EXCL 프래그 : 이미 존재하는 파일을 O_CREAT 플래그를 사용해 개방할 때 O_EXCL이 파일 개방 막음(개방 실패)

= 이미 존재하는 파일을 O_CREAT 플래그 사용해 개방하면 기존의 내용을 수정할 수 있는 경우 방지

= O_EXCL 플래그를 사용해 개방 자체를 실패하게함


· 플래그 종류

- O_RDONLY

- O_WRONLY

- O_RDWR

- O_CREAT

- O_EXCL

- O_APPEND

= 파일을 개방한 직후에 읽기/쓰기 포인터를 파일 내용의 마지막 바로 뒤로 이동

= 파일 개방 후 기존 데이터 보존

- O_TRUNC

= 파일 개방한 직후에 읽기/쓰기 포인터를 파일 내용의 첫 부분으로 이동

= 파일 개방 후 기존 데이터 삭제


· creat : 새로운 파일을 생성하여 연다.

- creat는 open을 O_WRONLY, O_CREAT, O_TRUNC와 함께 사용

- 이미 존재하는 파일을 지정해 creat하는 경우 : 파일 개방과 동시에 가지고 있는 데이터를 모두 삭제

- creat에서 지정한 파일이 함부로 변경되면 안 될 때 O_EXCL 플래그와 함께 사용하면 됨


· read : 열려진 파일로부터 데이터를 읽어 들인다.

· write : 열려진 파일에 데이터를 쓴다.

read

O_RDONLY

O_RDWR

write

O_WRONLY

- read

+ if((nread = read(filedes, buf, BUFSIZE)) > 0) // read가 정상적으로 수행되었는지 검사

= 대부분의 경우 세번째 인수 count로 지정한 값이 반환됨

= 파일의 마지막 부분을 읽을 경우 count보다 작은 값이 반환됨

= 반환값이 0일 경우 읽기/쓰기 포인터가 EOF에 있음

= 0 이상의 값이 반환 : 호출 성공

= 0 반환 시 내용 모두 읽어서 더이상 읽을 것이 없음을 의미

- write

+ if(write(filedes, buf, nread) < nread) // write가 정상적으로 수행되었는지 검사

= 모든 경우에서 반환값은 세번째 인수 count로 지정한 값이 반환됨

= 반환값이 count로 지정한 값이 아닌 경우 쓰기 작업이 실패

= write는 항상 세 번째 인수로 지정한 값이 반환되어야 호출 성공

= 호출 실패할 경우 : 반환값 < 세번째 인수의 값


· lseek : 파일 안에서 읽기/쓰기 포인터를 지정한 바이트 위치로 이동한다.

+ off_t newpos;

  newpos = lseek(filedes, (off_t) offset, int whence);

= whence (SEEK_SET, SEEK_CUR, SEEK_END)


· unlink/remove : 파일을 삭제한다.

- pathname으로 지정한 파일을 삭제

- 비어있는 디렉터리는 remove만 삭제 가능(unlink는 불가능)

- 비어있지 않은 디렉터리는 둘 모두 삭제할 수 없음



04 파일의 관리

함수

 의미

 umask

 파일 생성 마스크를 설정한다.

 access

 파일에 대한 사용자의 접근 권한을 확인한다.

 chmod, fchmod

 파일에 대한 접근 권한을 변경한다.

 chown, fchown

 파일의 소유주와 그룹을 변경한다.

 link

 파일의 새로운 이름을 생성한다.(Hard Link)

 rename

 파일의 이름이나 위치를 변경한다.

 symlink

 파일의 새로운 이름을 생성한다.(Soft Link, Symbolic Link)

 readlink

 심볼형 링크의 값을 읽어온다.

 stat, fstat

 파일의 상태 정보를 가져온다.


#include<unistd.h>

#include<fcntl.h>

#include <sys/types.h>

#include <sys/stat.h>

#include <stdio.h>


int main()

{

     char *originalname = "test.txt";

     char *hardfilename = "test.txt.hard";

     char *softfilename = "test.txt.soft";


     int filedes, retval;


     mode_t oldmask;

     char bufer[1024];

     int nread;

     struct stat finfo;


     oldmask = umask(0377);


     filedes = open(originalname, O_RDWR | O_CREAT, 0755);

     close(filedes);


     if(retval = access(originalname, W_OK) == -1)

     {

          printf("%s is not writable\n", originalname);

          chmod(originalname, 0644);

     }


     link(originalname, hardfilename);

     symlink(originalname, softfilename);


     rename(hardfilename, "newname.txt");


     nread = readlink(softfilename, buffer, 1024);

     write(1, buffer, nread);


     stat(originalname, &finfo);

     printf("\n%s\n", originalname);

     printf("File mode : %o\n", finfo.st_mode);

     printf("Files size : %d\n", (int)finfo.st_size);

     printf("Num of blocks : %d\n", (int)finfo.st_blocks);

}


05 디렉터리 다루기

 함수

 의미

 mkdir

 새로운 디렉터리를 작성한다.

 rmdir

 디렉터리를 삭제한다.

 opendir

 디렉터리를 파일처럼 개방한다.

 closedir

 개방한 디렉터리를 닫는다.

 readdir

 개방된 디렉터리로부터 디렉터리 항목을 읽어온다.

 rewinddir

 개방된 디렉터리 스트림을 초기화한다.

 chdir

 디렉터리 경로를 변경한다.

 getcwd

 현재 작업 디렉터리를 구한다.


+

· 커널(Kernel)

- UNIX의 가장 핵심적인 부분

- 하드웨어를 보호(캡슐화)

- 주기억장치에 상주

- 프로세스 관리, 기억장치 관리, 입·출력 관리 등

· 셸(Shell)

- 명령어 해석기

- 시스템과 사용자간의 인터페이스 담당

- DOS의 COMMAND.COM과 같은 기능 수행


※ 컴파일러와 인터프리터의 비교

구분

컴파일러

인터프리터

번역 단위

전체

행(줄)

목적 프로그램

생성함

생성하지 않음

실행 속도

빠름

느림

번역 속도

느림

빠름

관련 언어

FORTRAN, COBOL, C, ALGOL 등

BAIC, LISP, APL, SNOBOL 등


'일상 > 끄적끄적' 카테고리의 다른 글

제안서 + 특허  (0) 2017.06.20
4차 산업혁명 기술 및 등장배경  (0) 2017.06.17
빌립보서 4장 13절  (4) 2017.05.16
이사야 41장 10절  (0) 2017.02.09
블로그 시작!  (0) 2017.01.28

SEM 구성요소 : VBM, ABM, BSC
APT(지능형 지속 위협) : Advanced Persistent Threats
USIM(범용 가입자 식별 모듈) : Universal Subscriber Identity Module
Social Engineering(사회 공학) : 신뢰쌓기, 비기술적 시스템 침입 수단
Typosquatting : 유사한 유명 도메인 미리 등록하는 행위
IEEE 1471 특징 : 표준화, 중립성, 유연성, 의사소통
튜닝 : 데이터베이스 세계에서의 최적화 개념
ONS : 사물에 관한 구체적인 정보가 저장되어있는 서버의 위치를 알려주는 서비스
PKI(Public Key Infrastructure) : 공개키 암호화
APT : 침투해 때를 기다리면서 보안 무력화시키고 정보 수집한 다음 외부로 빼돌리는 형태의 공격
CRM : 고객의 정보을 종합적으로 분석 및 관리하여 마케팅에 활용하고 있는 금융권
EAI : 기업내 애플리케이션 유기적으로 연결
GPS(Global Positioning System) : 위성 위치 확인 시스템
디지털 발자국
DRM : 디지털 매체를 통해 유통되는 데이터의 저작권을 보호하기 위한 시스템
CCL(Creative Commons License) : 저작자가 자신의 저작물에 대한 이용방법 및 조건을 표기하는 저작물 이용 약관
SSL
AMR : 원격 관리
Social Curation : 사용자가 자기 취향대로 사진이나 그림, 동영상 등을 수집하고 가공해 인터넷에서 다른 여러 사람과 공유하는 것
Augmented Reality : 증강현실
DLP : 사내 직원의 PC와 네트워크상의 모든 정보 검색해 외부로의 유출을 사전에 막는 보안 기법
Botnet : 악성 프로그램에 감염되어 향후 악의적인 의도로 사용될 수 있는 다수의 컴퓨터들이 네트워크로 연결된 형태
IMS : 멀티미디어 서비스를 제공하는 규격
HVC : High Performance Video Coding
UCC : User Created Contents
PET : 사용자 프라이버시 보호 기술
프록시 서버 기능 : 방화벽, 캐시
VHT : IEEE에서 802.11n 후속으로 진행하고 있는 표준안
비트코인 : 가상의 디지털 화폐
NFC : Near Field Communication

스누핑(snooping) : 네트워크상에서 남의 정보를 염탐하여 불법으로 가로채는 행위이다. 소프트웨어 프로그램(스누퍼)을 이용하여 원격으로 다른 컴퓨터의 정보를 엿볼 수 있어, 개인적인 메신저 내용, 로그인 정보, 전자 우편 등의 정보를 몰래 획득한다. 반면, 네트워크 트래픽을 분석하기 위해 사용되기도 한다. 네트워크 주변을 지나다니는 패킷을 엿보면서 계정과 패스워드를 알아내는 행위인 스니핑(sniffing)이 유사어로 사용된다.


서비스 수준 협약 : 서비스 사업자와 서비스 사용자가 제공될 정보 서비스 및 그와 연관된 여러 조건들에 대한 서로의 책임과 의무 사항을 기술해 놓은 협약서

PAD(Progeram Associated Data) : 전송되고 있는 프로그램의 내용과 부가적인 정보를 설명하기 위하여 관련 정보를 제공하는 것으로 방송에 관련된 개념

LBS : 이동통신망을 기반으로 사람이나 사물의 위치를 정확하게 파악하고 이를 활용하는 응용 시스템 및 서비스

디지털 프로슈머 : 인터넷 커뮤니티에 참여해 콘텐츠를 즐기고 정보와 자료를 얻는 소비자이면서 동시에 의견을 적극 개진해 생산에도 영향을 미치는 사람

크리슈머(Cresumer) : 새로운 문화와 소비유행을 만들어가는 사람들

위치 기반 소셜 네트워크 서비스 : 위치 기반 서비스에 소셜 네트워크 서비스를 결합한 서비스

하둡 : 오픈 소스를 기반으로 한 분산 컴퓨팅 플랫폼

4K 해상도 : 차세대 고화질 모니터의 해상도를 지칭하는 용어

Nomophobia : 스마트폰이 곁에 없을 때 불안감이나 두려움을 느끼는 증상

Social Dining : SNS를 통해 관심사가 비슷한 사람끼리 모여서 식사하며 관계를 형성하는 모임

FinTech : 이동통신과 인터넷 기술을 금융 산업과 접목시킨 서비스

코드커터족 : 지상파와 케이블 등 기존 텔레비전 방송 서비스를 햊하고 인터넷 방송 서비스를 선택하는 소비자군

포직스 : 유닉스를 기반으로 한 표준 운영체제 인터페이스

Foursquare : 모바일 기기에 특화된 위치 기반 소셜 네트워크 서비스

Infodemics : 정보와 전염병의 합성어로 저보 확산으로 인한 각종 부작용

O2O : 인터넷과 스마트폰 등의 온라인 매장에서 오프라인 매장으로 고객을 유치하는 마케팅 방법

데이터 다이어트 : 데이터를 삭제하는 것이 아니라 압축하고 겹친 정보는 중복을 배제하고, 새로운 기준에 따라 나누어 저장하는 작업

Beacon : 전파를 이용하여 통신

증발품 : 판매 계획 또는 배포 계획은 발표되었으나 실제로 고객에게 판매되거나 배포되지 않고 있는 소프트웨어

Subscription Commerce : 정기적인 비용을 지불하고 전문가의 큐레이션을 통해 선정된 제품들을 주기적으로 배송 받는 상거래

Zapping Effect(재핑 효과) : 채널을 돌리다가 중간에 있는 채널의 시청률이 높아지는 현상

생명정보학 : 컴퓨터를 이용해 각종 생명정보를 처리하는 학문으로 방대한 생물의 유전자 정보를 분석하기 위한 학문

스마트 그리드 : 전력 IT

Meformer : 미포머/ 나를 알리는 데에만 열중하는 사람

Tajo(타조) : 오픈 소스 기반 분산 컴퓨팅 플랫폼인 아파치 하둡 기반의 분산 데이터 웨어하우스 프로젝트

3D Printing : 대상을 평면에 출력하는 것이 아니라 손으로 만질 수 있는 실제 물체로 만들어 내는 것

4D 프린팅 (fourth dimension printing, 4D printing) : 4D 프린팅이란, 특정 시간이나 환경 조건이 갖추어 지면 스스로 형태를 변화시키는 것이나 제조되는 자가조립(Self-assembly) 기술이 적용된 제품을 3D 프린팅하는 기술 / 4D 프린팅을 위해서는 인간의 개입 없이 열·진동·습도·중력 등 다양한 환경이나 에너지원에 자극 받아 변화하는 스마트 소재가 필요하며, 이는 형상기억합금이나 나노기술을 통해 전기회로를 내장하는 방법 등으로 제조 된다. /  4D 프린팅으로 제조된 제품에 전기로 열을 가하면 기존에 설정한 모양으로 접히는 종이접기 로봇이나, 접힌 상태에서 출력되어 완전한 형태로 변화하는 키네메틱스 드레스(Kinematics Dress) 등이 선보여진 바 있다.

AJAX(Asynchronous JavaScript and XML, 비동기 자바 스크립트와 XML) : 웹 페이지 내에서 자바 스크립트와 CSS, HTML 등을 이용하여 XML로 데이터를 교환하고, 제어함으로써 사용자들이 웹 페이지를 '새로고침'하지 않고도 대화형 웹페이지 기능을 이용할 수 있게 하는 기술

딥 러닝 : 인간의 두뇌를 모델로 만들어진 인공 신경망을 기반으로 하는 기계 학습 기술

소셜 큐레이션 : 사용자가 자기 취향대로 사진이나 그림, 동영상 등을 수집하고 가공해 인터넷에서 다른 여러 사람과 공유하는 것



출처 : 2017 시나공 정보처리기사 실기

'정보처리기사 > 신기술 동향' 카테고리의 다른 글

정보처리기사 실기  (1) 2017.04.16
신기술 동향 - 모바일 컴퓨팅  (0) 2017.04.14
신기술 동향 - 인터넷  (0) 2017.04.14
신기술 동향 - 데이터 통신  (0) 2017.04.14

+ Recent posts