본문 바로가기

운영체제/I/O Hardware

운영체제 - I/O Hardware

운영체제 - I/O Hardware

<그림 1: I/O devices>

<그림 1>과 같이 컴퓨터 시스템에서 input/output 기능을 수행하는 hardware를 I/O device라고 한다.
I/O device는 그래픽 카드, 네트워크 카드, 하드디스크/SSD 등이 있다.

<그림 2 : I/O device와 통신 - BUS>

컴퓨터 시스템에서 CPU와 I/O device간의 통신은 BUS를 통해 이루어진다.
Address Bus는 접근하고자 하는 메모리 주소를,
Data Bus는 접근한 메모리 주소에 적힌 값을,
Control Bus는 Write/Read 여부를 결정한다.

BUS의 종류로 SATA, PCIe, SCSI 가 있다.
컴퓨터 시스템에서 I/O device를 조작(control)한다는 것은 I/O device의 레지스터 값을 수정하는 것과 동일한 말이다.
I/O device의 레지스터(이하 port register)의 값의 변경으로 말미암아 I/O device의 동작이 결정된다.

I/O Device 내부의 Register
1) Status register
- 장치의 상태를 나타내는 레지스터
2) Control register
- 장치의 동작을 결정하는 레지스터
3) Data register
- 입출력할 데이터를 잠시 보관하는 레지스터

I/O device는 입출력 데이터의 크기와 특성에 따라 아래와 같이 3가지로 나뉜다.
1) character device : 데이터의 입출력 단위가 character인 I/O device
- 마우스, 키보드
2) block device : 데이터의 입출력 단위가  block인 I/O device
- 하드디스크, SSD
3) network device : 네트워크를 통해 데이터의 입출력이 이루어지는 I/O device