개발
요리책 운영체제. Chapter 10 입출력 시스템과 저장장치 연습문제 풀이
mycloudy
2021. 11. 1. 01:12
Part 4 저장장치 관리
Chapter 10 입출력 시스템과 저장장치
요약
- 입출력 버스의 구조
- 현대의 컴퓨터는 CPU와 메모리를 연결하는 메인버스, CPU와 그래픽카드를 연결하는 그래픽 버스, 고속 입출력 버스와 저속 입출력 버스를 사용한다.
- 직접 메모리 접근
- CPU의 도움 없이도 메모리에 접근할 수 있도록 입출력 제어기(I/O Controller)에 부여된 권한으로, 입출력 제어기에는 직접 메모리에 접근하기 위한 DMA 제어기가 마련되어 있다.
- 하드웨어 인터럽트
- 주변장치의 입출력 요구나 하드웨어의 이상 현상을 CPU에 알려주는 역할을 하는 신호이다.
- CPU가 요청한 작업을 완료했을 때, 키보드로 데이터를 입력받았을 때, 네트워크 카드에 새로운 데이터가 도착했을 때, 하드웨어에 이상이 발생했을 때 등 다양한 경우에 인터럽트가 발생한다.
- 디스크 장치의 전송 시간
- 하드디스크에서 데이터를 가져오는 데 걸리는 총시간은 탐색 시간, 회전 지연 시간, 전송 시간의 총합이다.
- 디스크 장치 관리
- 디스크 장치를 사용하는 데에는 파티션, 포매팅, 조각 모음과 같은 관리 기법이 필요하다.
- 파티션은 디스크를 논리적으로 분할하는 작업이고,
- 포매팅은 디스크 표면을 초기화하는 자겅ㅂ이며,
- 조각 모음은 디스크에 파일을 저장했다 지우기를 반복함으로써 중간중간에 생긴 빈 공간을 하나로 모으는 작업이다.
- 네트워크 저장장치
- 네트웤를 사용하는 저장장치는 어떻게 구성하느냐에 따라 DAS, NAS, SAN으로 구분된다.
- DAS는 서버와 같은 컴퓨터에 직접 연결된 저장장치를 말하고,
- NAS는 기존 저장장치를 LAN이나 WAN에 붙여서 사용하는 방식이며,
- SAN은 데이터 서버, 백업 서버, RAID 등의 장치를 네트워크로 묶고 데이터 접근을 위한 서버를 두는 형태에다.
- 디스크 스케줄링 기법
- FCFS 디스크 스케줄링: 가장 단순한 디스크 스케줄링 방식으로, 트랙 요청이 들어온 순서대로 서비스한다.
- SSTF 디스크 스케줄링: 현재 헤드가 있는 위치에서 가장 가까운 트랙부터 서비스한다. 만약 다음에 서비스할 두 트랙의 거리가 같다면 먼저 요청받은 트랙을 서비스한다.
- 블록 SSTF 디스크 스케줄링: SSTF 디스크 스케줄링의 공평성 위배를 어느 정도 해결한 방법으로, SSTF 디스크 스케줄링에 에이징을 적용한 것이다.
- SCAN 디스크 스케줄링: SSTF 디스크 스케줄링의 공평성 위배 문제를 완화하기 위해 만들어진 기법으로, 헤드가 움직이기 시작하면 맨 마지막 트랙에 도착할 때까지 뒤돌아가지 않고 계속 앞으로만 전진하면서 요청받은 트랙을 서비스한ㄴ다.
- C-SCAN 디스크 스케줄링: 헤드가 한쪽 방향으로 움직일 때는 요청받은 트랙을 서비스하지만 반대 방향으로 돌아올 때에는 서비스하지 않고 헤드만 이동한다.
- LOOK 디스크 스케줄링: 더 이상 서비스할 트랙이 없으면 헤드가 끝까지 가지 않고 중간에서 방향을 바꾼다.
- C-LOOK 디스크 스케줄링: C-SCAN 디스크 스케줄링의 LOOK 버전이다. 더 이상 서비스할 트랙이 없으면 헤드가 중간에서 방향을 바꾼다.
- SLTF 디스크 스케줄링: 헤드가 고정된 저장장치에서 사용하는 스케줄링 기법으로, 작업 요청이 들어온 섹터의 순서를 디스크가 회전하는 방향에 맞추어 다시 정렬한 후 서비스한다.
- RAID
- 자동으로 백업ㅇ르 하고 장애가 발생하면 이를 복구하는 시스템으로, 동일한 규격의 디스크를 여러 개 모아 구성하며 장애가 발생했을 때 데이터를 복구하는 데 사용한다.
- 디스크를 구성하는 방식에 따라 RAID 0, 1, 2, 3, 4, 5, 6, 0+1, 10, 50, 60 등이 있다.