READ WRITE 함수이용해 한번에 데이터를 받는지 여부.
글쓴이: sok1029 / 작성시간: 금, 2009/11/20 - 8:29오후
TCP 기반으로 데이터를 전송할 때는 데이터를 받은 입력버퍼의 크기에 의해 전송 패킷 양이 결정되는 걸로 알고 있는데요
소켓끼리가 아닌 PIPE를 통해서 부모와 자식간의 write와 read로 하였을 경우는
패킷이 나누어 지지 않고 한번에 보내어 지나요 크기 지정만 하면
즉 for문을 돌리지 않고 한번에 가는 지 궁금하네요...
만약 가지 않는 경우가 있다면
소켓의 경우는 EOF를 전송할 떄까지 반복문을 돌리면 되는데
PIPE로 주고 받을 때는 어떻게 해야 할 지 궁금하네요 선배님들 부탁드립니다.
Forums:
pipe를 잘 모르는데...
좀 찾아보니...
pipe를 생성하면, 프로세스 안에서 생성되는 것이 아니라 커널에서 생성된다고 하는군요
하나의 프로세스에서 pipe를 생성했다면(실제론 커널에서 생성한 것이니),
다른 프로세서가 그 pipe를 사용하는 디스크립터를 사용할 수만 있으면
IPC로서 사용이 가능한 것이군요.
즉, 내부전송 같은 것은 없습니다.
디스크립터만 사용할 수 있으면 되는 것입니다.
댓글 달기