operating system

장치 컨트롤러와 드라이버 경계

I/O 계층은 장치 세부 명령을 드라이버가 감추고, 커널은 interrupt, DMA, buffer cache로 CPU와 장치 속도 차이를 조절합니다.

장치 경계
01device register 02driver 03interrupt / DMA 04buffer cache
device register

컨트롤러의 status, command, data register가 장치와 커널의 실제 접점이다.

driver

드라이버는 장치별 명령을 공통 파일/블록/네트워크 인터페이스로 변환한다.

interrupt / DMA

완료 알림은 interrupt가 맡고, 큰 데이터 이동은 DMA가 CPU 복사를 줄인다.

buffer cache

반복 읽기와 지연 쓰기는 캐시가 흡수하지만 flush 시점이 일관성을 좌우한다.

드라이버·컨트롤러 책임

장치 문제는 user API가 아니라 드라이버 큐, interrupt 발생 여부, DMA 버퍼, 캐시 flush 지점을 따라가야 실제 병목이 보입니다.