Computer Science/Operating System
혼자 공부하는 운영체제 - 8. 입출력장치
git-sun
2024. 7. 31. 18:26

장치 컨트롤러
- 입출력제어기, 입출력모듈로도 불린다
- 역할
- CPU와 입출력장치 간 통신 중개
- 오류 검출
- 데이터 버퍼링
- 구성
- 데이터 레지스터
- 상태 레지스터
- 제어 레지스터
장치 드라이버
- 장치 컨트롤러 감지/제어
입출력 방법
- 종류
- 프로그램 입출력
- 메모리 맵 입출력
- 메모리와 입출력장치가 같은 주소 공간 사용
- 고립형 입출력
- 메모리와 입출력장치가 분리된 주소 공간 사용
- 메모리 맵 입출력
- 인터럽트 기반 입출력
- 폴링
- CPU가 직접 입출력장치를 확인하는 방식
- 인터럽트 기반 입출력과 반대되는 개념
- PIC
- Programmable Interrupt Controller
- 다중 인터럽트 우선순위 판별 컨트롤러
- 폴링
- DMA 입출력
- DMA 컨트롤러 사용
- Direct Memory Access Controller
- (CPU 대신) 메모리와 입출력장치 간 통신 제어
- 사이클 스틸링
- DMA 컨트롤러가 CPU보다 우선하여 시스템 버스를 점유하는 현상
- CPU의 시스템 버스 이용률 저하 발생
- 입출력 버스를 별도로 구성하여 사이클 스틸링 해결 가능
- 입출력 버스
- DMA 컨트롤러와 장치 컨트롤러를 연결하는 버스
- 종류
- PCI(Peripheral Component Interconnect) 버스
- PCI Express(PCIe) 버스
- 입출력 버스
- DMA 컨트롤러가 CPU보다 우선하여 시스템 버스를 점유하는 현상
- DMA 컨트롤러 사용
- 프로그램 입출력
반응형