[분산시스템] IPC
- 최초 등록일
- 2009.03.18
- 최종 저작일
- 2008.05
- 20페이지/
MS 워드
- 가격 2,500원
![할인쿠폰받기](/images/v4/document/ico_det_coupon.gif)
목차
1. Pipe
2. Message queue
3. Signal
4. Shared memory
5. Socket
본문내용
1. Pipe
파이프(Pipe)는 한 프로세스의 표준 출력(Standard output)을 다른 프로세스의 표준 입력(Standard input)으로 연결하는 방법이다. 파이프는 IPC툴 중 가장 오래된 것으로 유닉스 운영체제의 초기 단계부터 사용되어 왔다. 파이프는 프로세스간의 단방향(반이중,half-duplex) 통신의 한 방법을 제공한다. 프로세스는 write 시스템 호출을 이용하여 자료를 파이프로 보낼 수 있고, 다른 프로세스가 read 시스템 호출을 이용하여 이 자료를 받을 수 있다.
1) 파이프를 이용할 때 사용되는 함수
int pipe(int filedes[2]);
한 프로그램에서 파이프는 pipe 시스템 호출을 이용하여 만들어진다. 시스템 호출이 성공적으로 수행되면, 두 개의 파일 기술자를 복귀한다. 그 중 하나는 파이프에 쓰기 위한 것이고, 다른 하나는 파이프로부터 읽기 위한 것이다. filedes[0]은 파이프로부터 읽기용으로 개방되고, filedes[1]은 파이프에 쓰기용으로 개방된다.
2) Code and Result
파이프를 이용해 자식 프로세스가 부모 프로세스에 메세지를 전달하는 프로그램
>> Code : pipe2.c
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
int main()
{
int data_processed;
int file_pipes[2];
const char some_data[] = "Lee Ho Yong";
char buffer[BUFSIZ + 1];
참고 자료
없음