운영체제 12장 - 대용량 저장장치
목차
- 12.1 Mass Storage 구조 개관
- 12.2 Disk 구조
- 12.3 Disk 부착(Attachment)
- 12.4 Disk Scheduling
- 12.5 Disk 관리
- 12.6 Swap-Space 관리
- 12.7 RAID 구조
12.1 Mass Storage 구조 개관
- 마그네틱 디스크
- 현대 컴퓨터 시스템에서 가장 많이 사용하는 보조 저장장치
- 실린더 - 트랙 - 섹터
- 접근 시간 = Positioning time = 탐색 시간 + 회전 지연
- 디스크 드라이브는 I/O 버스를 통해 컴퓨터와 연결됨
12.2 Disk 구조
- 논리 블록(Logical Block)
- 디스크 드라이브는 논리 블록들의 1차원 배열로 취급됨
- 논리 블록이 전송 최소 단위임
- 논리 블록의 크기는 대부분 512B, low-level format을 통해 다른 크기를 가질 수 있음
- 논리 블록의 물리 맵핑
- 논리 블록의 1차원 배열을 디스크의 섹터에 순차적으로 맵핑
- 논리 블록의 Sector 0는 바깥 실린더의 첫번째 트랙, 첫번째 섹터
- 밖에서 안으로, 위에서 아래로
12.3 Disk 부착(Attachment)
- 컴퓨터의 디스크 저장장치 접근 방식
- host-attached storage : I/O bus에 연결하는 I/O 포트를 경유
- IDE/ATA, SATA, FC 등
- network-attached storage : 분산 파일 시스템에서 원격 호스트 경유
- NFS/CIFS 등
- host-attached storage : I/O bus에 연결하는 I/O 포트를 경유
12.4 Disk Scheduling
- 운영체제를 통해 디스크 드라이브의 빠른 접근시간, 높은 전송량을 보장함
- 디스크 접근 시간 = seek time + rotational latency
- 디스크 대역폭(Disk bandwidth) = B/sec
디스크 스케줄링
- 디스크 I/O 요청 처리 순서를 적절한 순서로 스케줄링하여, 접근 시간과 대역폭 모두 향상 가능
- 성능은 디스크 요청 회수와 유형에 좌우됨
- 파일 할당 방법에 영향을 받음
1. FCFS(First-Come First-Serve) scheduling
- 선입선처리 스케줄링
- 요청을 순서대로 처리
- 적은 수의 처리에 유용함
- 빠른 서비스를 제공하지 못하며, 부하가 많은 경우 특히 비효율적
2. SSTF(Shrotest-Seek-Time) scheduling
- 현재 헤드 위치에서 탐색시간이 최소인 위치의 요청을 먼저 선택
- 일부 요청의 기아 상태가 발생할 수 있음
- 부하가 적을 때 유용함
3. SCAN scheduling
- Elevator algorithm
- 디스크 암이 한쪽 끝에서 시작하여 다른 쪽 끝으로 이동하면서, 가는 길에 있는 모든 요청을 처리함
- 신호 방향에서 탐색 거리가 짧은 요청 처리
- 다른 쪽 끝에 도달하면 다시 역방향으로 이동하면서 같은 동작을 반복함
- 가운데 트랙이 양쪽 끝 트랙보다 대기시간이 짧음
- 부하가 큰 시스템에 적합
3-1. C-SCAN scheduling
- 각 방향의 마지막 요청에 도달하면, 헤드의 이동 방향을 즉시 바꿈
- SCAN과 유사하지만, 끝까지 가지 않음
4.1 C-LOOK scheduling
- 한 방향으로 이동하면서, 마지막 요청 처리 후, 시작했던 방향으로 이동 후 다시 처리
12.5 Disk 관리
- Disk Formatting
- Low-Level formatting : physical formatting 혹은 공장 초기화로 불림
- Partition : 여러개의 실린더로 구성
- Logical formatting : 파일 시스템 포멧팅
- 파티션과 로지컬 포메팅은 운영체제가 작업
- 손상된 블록 처리 방법
- sector sparing
- sector slipping
12.6 Swap-Space 관리
- 가상 메모리가 주기억장치의 확장으로서 사용하는 디스크 공간
- swap-space 위치
- 파일 시스템의 큰 파일 사용 - 구현이 용이, 비효율적
- 분리된 디스크 파티션 사용 - 일반적으로 사용함. 속도면에서 효율적
12.7 RAID 구조
- 디스크 사용의 향상 방법
- 협력하여 동작하는 여러 개의 디스크를 사용
- RAID(redundant array of independent disks)
- 중복 데이터 저장 및 병렬 접근으로 저장 장치의 신뢰성 및 성능 향상
- Mirroring(or shadowing) : 디스크의 복사본 유지. 높은 비용
- Block interleaved parity : parity 블록과 디스크 striping의 결합. 적은 비용으로 중복 허용_
이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.