728x90

C 2

Message Queue [C]

- 메시지큐란 IPC기법중 하나이다. Queue를 사용하여 데이터를 선입선출하며, "msgtype"에 따라서 특정 메시지 중 가장 먼저 들어온 메시지를 따로 받아올 수 도 있다. 이 메시지는 kernel에서 보관하기 때문에 프로세스가 종료되어도 사라지지 않는다. 메시지는 큐의 용량이 허용하는 한, 큐에 계속 쌓이며 읽은 메시지는 큐에서 삭제한다. LINUX(UNIX)에서는 POSIX 메시지큐를 사용한다(=System V 메시지큐의 최신버전). 본 글에서는 System V 방식의 메시지 큐를 사용할 것이다. ※ 메시지큐는 아래와 같은 협의된 데이터 구조를 활용한다. struct msgbuf{ /* 메시지 타입은 반드시 long이면서 0이상의 값 */ long mType; /* 아래의 데이터의 형식과 크기는..

C 2023.12.16

시스템 프로그래밍[C] #1 파일 입출력

- 파일 입출력은 low-level IO와 high-level IO가 있다. Low-Level File IO (System Call) (1) System call을 이용해서 파일 입출력 (2) File descriptor 사용 (3) Byte 단위로 디스크에 입출력 (4) 특수파일에 대한 입출력 가능 High-Level File IO (Buffered IO) (1) C standard library를 사용하여 파일 입출력 (2) File pointer 사용 (3) 버퍼(block) 단위로 디스크에 입출력 (4) 여러 형식의 입출력 지원 - 파일을 오픈할 때 사용하는 매소드는 open이다. int open(const char *pathname, int flags [, mode_t mode]); pathna..

C 2023.07.31