코루틴
파이프(pipe)는 유닉스 계열 운영 체제에서(어느 정도까지는 마이크로소프트 윈도에서) 제공되는 병행성 메커니즘의 하나로서, 두 프로세스가 생산자-소비자 모델에 따라 통신할 수 있게 해주는 원형 버퍼이다. 즉, 파이프는 한 프로세스가 쓰고 다른 프로세스가 읽는 선입선출 형태의 큐(큐 (자료 구조))라 할 수 있다. 파이프의 개념은 코루틴(coroutine)으로부터 영향을 받아 만들어졌으며, 운영 체제 기술의 발전에 큰 공헌을 하였다. 파이프에는 일정한 크기의 공간이 할당되어 있다. 어떤 프로세스가 파이프에 데이터를 기록하려고 할 때 충분한 공간이 남아있다면 기록이 즉시 수행되겠지만, 공간이 부족하다면 그 프로세스는 차단된다. 이것은 운영체제가 상호배제를 수행한 결과이다. 즉 한 순간에 1개의 프로세스만이 파이프에 접근할 수 있는 것이다.
파이프 메커니즘에 영향을 준 게 뭐야
파이프 (유닉스)