[컴퓨터구조] 입출력 기기( I/O device)
I/O device
- 지금까지 memory, processor에 대해 배웠는데, 이런 장치를 통해 컴퓨터가 일을 하고 그 결과를 I/O device를 통해 내보낸다.
- I/O가 컴퓨터에 없으면 절대 안된다.
- 예시) keyboard, disk, network, printer, graphic output
- I/O를 통해 사람들이 컴퓨터와 상호작용한다.
- I/O가 있어야 long-term 메모리를 가질 수 있다. (HDD,Flash memory는 전원이 꺼져도 데이터를 잃지 않기 때문)
- I/O는 로봇 제어, 프로펠러,fins, BOB 등에서 이용된다.
I/O의 특징
- 비용, 의존성이 좋다.
- 확장성과 다양성
- 성능에 관한 복잡한 고려가 필요 (latency, throughput)
다양성 (고려되야 하는 것)
- Behavior (용도) : input, output, storage
- partner (사용하는 사람) : 인간 , 기계
- Data rate (속도) : 기계가 생성하는 최대치의 요구량
자기 디스크 저장소 (Magnetic Disk storage)
목적
- 기억이 지워지지 않는 저장소
- 크고, 싸고, 느리다.
- 메모리 계층 구조에서 가장 아래에 존재한다.
종류
- 플로피 디스크, 하드 디스크
디스크의 두가지 타입
1) 자기장의 표면으로 덮여있는 플래터는 돌고, arm은 고정되있음
2) arm이 움직이면서 디스크에 접근
- 500 ~ 2000개의 트랙
- 한 트랙 당 32개~ 128개의 섹터
- 섹터는 읽고 쓰는 가장 작은 기본 단위이다.
모든 트랙은 같은 수의 섹터를 가진다.
- constant bit density : 안쪽 섹터가 작고, 바깥쪽 섹터가 크니까 바깥쪽에 더많은 데이터를 저장하는 방식
☞ arm은 일정한 속도로 돌아야 하는데 이 방법은 안쪽 데이터는 천천히 읽고 바깥쪽 데이터는 빨리 읽어야한다는 단점이 있다.
- recently relaxed : 모든 섹터의 같은 양의 데이터를 넣는 방법( 밖 밀도는 낮고 안 밀도는 높다.)
디스크 접근 시간
- seek time : arm 이 track을 찾는데 걸리는 시간
- rotational latency : 돌면서 원하는 섹터를 찾는데 걸리는 시간
- transfer : 데이터를 전송하는 시간
디스크 array (=RAID)
:Disk를 여러개 모아놓은 것
장점
- 단위 시간당 일하는 양이 늘어난다.
- 두세개의 디스크에 동시에 데이터를 쓰니까 속도가 빨라진다.
- 1GB짜리 디스크를 두세개 쓰니까 용량이 늘어난다.
- 데이터를 동시에 여러개의 디스크에 쓰고 만약 하나가 고장나면 다른 곳에서 데이터를 가지고 올 수 있기 때문에 신뢰도가 높아진다.
MTTR : 수리하는데 걸리는 시간 MTTF : 처음으로 디스크가 고장이 날 때까지의 시간 = MTTR + MTTF = 디스크의 한 주기
Flash memory
디스크를 대체하는 메모리
- non-volatile인 반도체 메모리이다.
- 속도가 굉장히 빠르다. (디스크에 비해)
- 크기가 작고 가벼워서 모바일 기기에 사용된다.
- EEPROM 기술이다.