티스토리 뷰
입출력 I/O 제어 (왜 I/O 장치는 시스템 버스에 직접 접속되지 않을까?)
컴퓨터 시스템에서는 다양한 입출력(I/O) 장치들이 사용되며, 이들 장치는 시스템 버스에 직접 접속되지 않는 경우가 많습니다. 이에는 다양한 이유들이 있습니다. 이 글에서는 I/O 장치가 시스템 버스에 직접 접속되지 못하는 이유와 그 대안인 I/O 제어기(I/O controller)에 대해 알아보겠습니다.
제어 회로의 다양성
각각의 I/O 장치는 제어 방법이 서로 다르며, 이러한 제어 회로를 CPU 내부에 모두 포함시키는 것은 현실적으로 불가능합니다. CPU는 다양한 장치들을 동시에 제어하기 위해 일반적인 제어 회로를 갖추고 있으며, 모든 I/O 장치의 제어를 수행하기에는 한계가 있습니다.
데이터 전송 속도
I/O 장치들의 데이터 전송 속도는 CPU의 데이터 처리 속도에 비해 훨씬 느립니다. 따라서 고속의 시스템 버스와 I/O 장치들 사이에 직접 데이터를 교환하는 것은 불가능합니다. 데이터 전송 속도의 차이로 인해 시스템의 성능 저하가 발생할 수 있습니다.
데이터 형식의 차이
다양한 I/O 장치들과 CPU는 사용하는 데이터 형식의 길이가 서로 다를 수 있습니다. 이는 데이터의 호환성을 유지하기 어렵게 만들고, 직접 접속하는 것을 어렵게 합니다.
따라서 위와 같은 이유로 I/O 장치는 시스템 버스에 직접 접속되지 않고, I/O 제어기를 통해 제어되고 데이터가 교환됩니다. I/O 제어기는 다음과 같은 주요 기능을 수행합니다.
I/O 장치의 제어와 타이밍 조정
CPU와의 통신 담당
I/O 장치와의 통신 담당
데이터 버퍼링 기능 수행
오류 검출
I/O 장치가 시스템 버스에 직접 접속되지 못하는 이유는 제어 회로의 다양성, 데이터 전송 속도, 데이터 형식의 차이 등이 있습니다. 이를 대체하기 위해 I/O 제어기가 제어와 데이터 교환을 담당하여 I/O 장치와 CPU 간의 효율적인 통신을 도와줍니다. I/O 제어기는 복잡한 제어 회로를 포함하고 있으며, CPU의 명령을 받아 I/O 장치를 제어하고 데이터를 주고받습니다.
I/O 제어 방식에는 기억장치-사상 I/O(memory-mapped I/O)와 분리형 I/O(isolated I/O) 두 가지가 있습니다. 기억장치-사상 I/O 방식은 기억장치 주소 영역의 일부분을 I/O 제어기의 레지스터 주소로 할당하는 방식입니다. 이를 통해 기억장치 관련 명령어를 I/O 장치 제어에도 사용할 수 있습니다. 분리형 I/O 방식은 별도의 I/O 명령어를 사용하여 I/O 장치를 제어합니다. 기억장치와는 별도의 주소 공간을 할당하고, I/O 읽기/쓰기 신호를 사용합니다.
각 방식은 각자의 장단점을 가지고 있습니다. 기억장치-사상 I/O 방식은 프로그래밍이 용이하지만 기억장치 주소 공간이 감소하는 단점이 있습니다. 반면, 분리형 I/O 방식은 별도의 I/O 명령어를 사용하여 프로그래밍이 불편하지만, 기억장치 주소 공간이 줄어들지 않는 장점이 있습니다.
'it' 카테고리의 다른 글
컴퓨터 시스템의 핵심 요소인 버스와 종류에 대해 알아보자 (0) | 2023.07.08 |
---|---|
버스 중재방식, 버스경합 (0) | 2023.07.07 |
인터럽트를 이용한 I/O(데이터 처리의 효율성과 성능 향상을 위한 방법) (0) | 2023.07.05 |
병렬컴퓨터 구조(Flynn의 분류와 병렬처리의 다양한 형태) (0) | 2023.07.04 |
다중프로세서시스템 구조(공유-기억장치와 분산-기억장치의 장단점과 선택 기준) (0) | 2023.07.03 |
- Total
- Today
- Yesterday
- qr코드만드는방법
- 엄마친구아들무료로보기
- 서버용량확인
- 엄마친구아들무료보기
- qr코드만드는법
- 티스토리챌린지
- linux용량
- 손해보기싫어서무료시청
- 무료사진다운로드
- 엄마친구아들
- 검색기록지우는방법
- 큐알코드만드는법
- 무료사진다운
- linux용량확인
- 리눅스서버용량
- 오블완
- 신데렐라게임실시간시청방법
- 검색히스토리
- 신데렐라게임실시간
- 엄마친구아들무료시청
- 엄마친구아들실시간무료보기
- 네이버검색기록삭제
- 검색히스토리삭제
- linux서버용량확인
- 노트북인터넷연결
- 노트북인터넷
- 신데렐라게임생방
- tvn무료로보기
- 신데렐라게임
- 리눅스용량
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |