목록2024/01/10 (2)
Machineboy空
세 가지 입출력 방식 프로그램 입출력 인터럽트 기반 입출력 DMA 입출력 1) 프로그램 입출력 프로그램 속 명령어로 입출력장치(입출력장치에 연결된 장치 컨트롤러)를 제어하는 방법 입출력 명령어로써 장치 컨트롤러와 상호작용 ex. 메모리에 저장된 정보를 하드 디스크에 백업 (= 하드 디스크에 새로운 정보를 쓰기) CPU가 장치컨트롤러의 레지스터 값을 읽고 씀으로써 이루어진다. → 근데 입출력장치의 종류가 너무나도 다양해서 방법을 규격화하기 어렵다고 했는데, 어떻게 장치컨트롤러의 레지스터를 다 알 수 있지? CPU가 장치컨트롤러의 레지스터값을 알기 위한 방법 2가지 메모리 맵 입출력 (Memory Mapped I/O) 고립형 입출력(Isolated I/O) 메모리 접근 명령어 == 입출력장치 접근 명령어 ..
입출력장치 - CPU의 정보 주고 받기 입출력장치는 앞서 학습한 CPU, 메모리보다 다루기가 더 까다롭다. 입출력장치 종류가 너무 많아서 컴퓨터 내부와 정보를 주고 받는 방식을 규격화 하기 힘들다. CPU와 메모리의 데이터 전송률은 높지만 입출력장치의 데이터 전송률은 낮다. 물론 CPU나 메모리 등 보다 훨씬 빠른 속도의 입출력장치도 있다. 장치 컨트롤러 이런 이유로 입출력장치는 장치 컨트롤러를 통해 컴퓨터와 연결된다 장치 컨트롤러의 역할 CPU와 입출력장치 간의 통신 중개 일종의 번역가 역할 입출력장치와 CPU의 정보 주고 받는 형식이 규격화하기 어렵다는 단점을 극복. 오류 검출 입출력장치에 어떤 문제가 있진 않은지 데이터 버퍼링 *버퍼링(buffering): 전송률이 높은 장치와 낮은 장치 사이에 주..