[시스템] 입출력장치① - I/O에 대한 모든것(입출력 통신, 장치드라이버)

 

마더보드의 구성

 

- 핵심 요소 : CPU중앙처리장치, RAM주기억장치, 입출력장치I/O controller

- 주변장치들을 연결하는 확장슬롯과 각종 포트와 단자가 있음

- 전원 공급 장치와 중앙처리장치를 위한 냉각 송풍기, 케이블과 전선들이 있음

- 각 구성요소들은 버스로 연결되어 데이터를 송수신함

 

* Mother Board를 PCB(Printed Circuit Board)라고도 함

* 마운팅Mounting : 소켓, 슬롯에 CPU, RAM 등의 장치를 장착하는 것

*  통로

- 내부통로 : Bus(속도 빠름),  외부통로 : Cable(속도 느림)

- 외부에서 내부로 들어올 때에는 케이블 가지고 전송할 수 없으므로 데이터를 버스에 태워야 함

 

 

입출력장치

 

 

* Socket소켓

- 외부장치를 연결, 장착

- 국제 표준화 되어있음 (-> 독립적)

 

* 랜카드

- 시스템 내부 탑재되어있어 요즘에는 잘 안 쓰임

 

   

입출력 모듈의 연결

 

- 컴퓨터에서 각 장치 간의 연결은 계층적

  * 입출력 장치도 별도의 입출력 버스가 존재하며, 시스템 버스에 연결됨

- 계층적으로 연결된 입출력 모듈들

 * 버스어댑터는 입출력 버스와 시스템 버스를 연결하여 입출력 데이터들에 대한 입출력 제어 역할을 수행

- 입출력 모듈은 속도 및 동작 특성이 유사한 입출력장치들을 제어하고 관리

- 입출력 버스는 시스템 버스와 동일하게 데이터 버스, 주소 버스, 제어 버스로 구성됨

 

* 모듈 : 여러 개의 장치를 연결해서 관리하고 제어

* 어댑터 : A와 B를 결합하여 동작하도록 만듦

 

* 입출력 버스와 시스템 버스는 속도와 용량의 차이가 있음

 

* 시스템 버스와 PCI

- 시스템 버스 : CPU와 Memory를 연결, I/O가 건드릴 수 없음

- PCI : I/O 장치를 위한 버스, CPU는 알지 못하며 시스템 버스는 탈 수 없음

 

* 네트워크도 용도는 다르지만 입출력 장치이다

 

 

장치 드라이브 Device Driver

I/O driver => I/O service controller

 

- 각 입출력 장치를 제어 및 관리하는 소프트웨어(펌웨어-firmware)

- 시스템내 메모리에 존재시키며 입출력 포트를 통해 외부 장치들 통신

- 각 입출력 장치마다 고유의 Driver를 가짐

 * 많은 드라이버를 가질수록 많은 입출력장치를 가질 수 있음

- 외부/내부 인터럽트 요청에 의해 구동

 * Vector Table을 거쳐 인터럽트를 통해서 제어

 

입출력장치 통신

 

* 하드웨어는 수동적이며 소프트웨어에 의해서 동작이 결정!

- 하드웨어인 입출력 장치는 스스로 동작할 수 없으므로 소프트웨어인 드라이브가 입출력장치를 관리하고 제어함

 

* 메모리 안 → 소프트웨어

- 소프트웨어 = data + program

  

* 각각 고유의 드라이버 있어야함

* 입출력장치를 사용하기 전에 드라이브를 설치해야함

 

 

반응형
그리드형

댓글

❤️김세인트가 사랑으로 키웁니다❤️