: 커널에서 제공하는 입출력과 관련된 서비스들입니다. 하드웨어와 장치 드라이버 구조를 바탕으로 합니다. 1) I/O 스케줄링 : 입출력을 실행할 순서를 결정합니다. 응용 프로그램이 봉쇄형 입출력 시스템 콜을 하면 그 입출력 요청은 해당 장치의 큐에 들어갑니다. 입출력 스케줄러는 성능과 평균 응답 시간을 향상시키기 위해 큐 안의 순서를 재배치해줍니다. 2) 버퍼링 : 두 장치 사이 또는 장치와 응용 프로그램 사이에서 데이터가 전송되는 동안 전송 데이터를 임시로 저장하는 메모리 영역입니다. 버퍼링이 필요한 이유에는 세가지가 있습니다. 데이터의 생산자와 소비자 사이의 속도 차이에 대처하기 위해. 데이터 전송 크기가 다른 장치들 사이의 완충을 제공할 때. (ex) 네트워킹에서 송신 측 큰 메시지는 보다 작은 네..