파이프

    [운영체제] 파이프

    [운영체제] 파이프

    [파이프] 파이프는 두 프로세스가 통신할 수 있는 통로이다. [일반 파이프] 일반 파이프는 생산자-소비자 형태로 두 프로세스 간의 통신을 허용한다. 생산자는 파이프희 한 종단(쓰기 종단)에 쓰고, 소비자는 다른 종단(읽기 종단)에서 읽는다. 결과적으로 일반 파이프는 한쪽으로만 데이터를 전송할 수 있는 단방향 통신이다. UNIX 시스템에서는 일반 파이프는 pipe(int fd[]) 함수를 사용하여 구축된다. cf ) fd[0]은 읽기 종단, fd[1]은 쓰기 종단으로 동작한다. 파이프를 생성한 후에는 read()와 write() 시스템 콜을 사용하여 접근할 수 있다. 일반 파이프는 파이프를 생성한 프로세스 이외에는 접근을 할 수 없기 때문에 통상 부모 프로세스가 파이프를 생성하고 fork()로 생성한 자식..