
요약네트워크 소켓이나 파이프 I/O에서 read(fd, buf, N)나 write(fd, buf, N)와 같은 기본 Unix I/O 호출은 요청한 바이트 수를 한 번에 처리해주지 못하는 Short Count 현상이 자주 발생합니다. 예를 들어, read는 아직 커널 버퍼에 도착하지 않은 데이터가 있으면 가능한 만큼만 반환하고 멈추며, write는 비블로킹 파이프에서 버퍼 용량만큼만 전송하고 나머지를 잘라버립니다. CSAPP 10.5장의 RIO(Robust I/O) 패키지는 이 문제를 자동으로 처리하고, 내부 8KB 버퍼를 활용해 시스템 콜 횟수를 획기적으로 줄이는 버퍼링 기법을 제공합니다.1. 기본 Unix I/O의 한계: Short Count 현상1.1 Short Read현상: read(fd, buf,..