728x90
반응형
장치 컨트롤러의 역활
- CPU와 입출력장치 간의 통신중개
- 오류 검출
- 데이터 버퍼링
데이터 레지스터
- CPU와 입출력장치 사이에 주고받을 데이터가 담기는 레지스터 (버퍼)
- RAM을 사용하기도 함
상태 레지스터
- 상태 정보 저장
- 입출력자치가 입출력 작업을 할 준비가 되었는지
- 입출력 작업이 완료되었는지
- 입출력장치에 오류는 없는지 등의 상태 정보
제어 레지스터
- 입출력장치가 수행할 내용에 대한 제어 정보
장치 드라이버: 장치 컨트롤러의 동작을 감지하고 제어하는 프로그램
프로그램 입출력: 입출력 명령어로써 컨트롤러와 상호작용
- 메모리에 저장된 정보를 하드 디스크에 백업
- CPU는 하드 디스크 컨트롤러의 제어 레지스터에 쓰기 명령을 보냄
- 하드 디스크 컨트롤러는 하드 디스크 상태 확인 => 상태 레지스터에 준비 완료 표시
- 메모리에 저장된 정보를 하드 디스크에 백업
- CPU는 상태 레지스터를 주기적으로 읽어보며 하드 디스크의 준비 여부를 확인
- 하드 디스크가 준비되었다면 백업할 메모리의 정보를 데이터 레지스터에 쓰기
CPU가 입출력장치의 주소(레지스터)을 어떻게 알까?
- 메모리 맵 입출력: 메모리에 접근하기 위한 주소 공간과 입출력장치에 접근하기 위한 주소 공간을 하나의 주소 공간으로 간주하는 방법
- 고립형 입출력: 메모리를 위한 주소 공간과 입출력 장치를 위한 주소 공간을 분리하는 방법
메모리 맵 입출력 | 고립형 입출력 |
메모리와 입출력장치는 같은 주소 공간 사용 | 메모리와 입출력장치는 분리된 주소 공간 사용 |
메모리 주소 공간이 축소됨 | 메모리 주소 공간이 축소되지 않음 |
메모리와 입출력장치에 같은 명령어 사용 가능 | 입출력 전용 명령어 사용 |
728x90
반응형
'전공 > 컴퓨터 구조' 카테고리의 다른 글
보조기억장치 (0) | 2023.07.29 |
---|---|
RAM의 특성과 종류 (1) | 2023.07.29 |
CPU) 설계, 병렬 처리, CISC & RISC (0) | 2023.07.29 |
CPU) ALU와 제어장치, 레지스터, 명령어 사이클과 인터럽트 (0) | 2023.07.28 |
소스코드와 명령어 (0) | 2023.07.28 |