디스크
최소단위: sector (저장)
logical block: 외부에서보는 디스크의 단위 정보 저장 공간들
Dick Managemnet
Pysical formatting(Low-level formatting): 디스크를 컨트롤러가 읽고 쓸 수 있도록 섹터들로 나누는 과정
각 섹터는 header+실제 data(보통 512byte)+trailer 로 구성
header와 trailer는 sector number, ECC(Error-Correcting Code) 등의 정보가 저장되며 controller가 직접 접근 및 운영
Partitioning
디스크를 하나 이상의 실린더 그룹으로 나누는 과정
OS는 이것을 독립적 disk로 취급(logical disk)
Logical formatting
파일 시스템을 만드는 것
FAT, Inode, free space등의 구조 포함
Booting
ROM에 있는 small bootstrap loader의 실행
sector 0 (boot block)을 load하여 실행
sector 0은 full Bootstrap loader program
OS를 디스크에서 load하여 실행
Disk Scheduling
Access time의 구성
Seek time: 헤드를 해당 실린더로 움직이는 데 걸리는 시간 (대부분의 시간)
Rotational latency: 헤드가 원하는 섹터에 도달하기까지 걸리는 회전지연시간
Transfer time: 실제 데이터의 전송 시간
Disk bandwidth: 단위 시간 당 전송된 바이트의 수
Disk Scheduling: Seek time을 최소화하는 것이 목표 (Seek time = seek distance)
Disk Scheduling Alogorithm: 53번 헤드에서 98 183 37 122 14 124 65 67 알고리즘 실행 결과는?
FCFS(First Com First Service): 들어온 순서대로 처리, 비효율적 (98 183 37 ... -> 640cylinders)
SSTF(Shortest Seek Time First): 현재 헤드 위치에서 제일 가까운 위치를 실행(65 67 37 ...), Starvation 문제
SCAN: disk arm이 디스크의 한쪽 끝에서 다른쪽 끝으로 이동하며 가는 길목에 있는 모든 요청을 처리(순서와 상관없이 지그재그)
-> 가운데가 끝보다 더 자주 처리됨
C-SCAN: SCAN을 하는데 시작점과 끝점이 똑같음(한 방향으로만) -> 모든 점에서 시간이 동일해짐
N-SCAN: SCAN과 똑같이 하다가, 가는 도중에 온 요청은 다음에 처리함
LOOK and C-LOOK: SCAN과 C-SCAN은 끝에서 끝으로 이동하는데, 이것을 개선해 요청이 있는 만큼만 가고 돌아온다.
Swap-Space Management
Disk를 사용하는 두 가지 이유
memory의 voilate한 특성 -> file system
프로그램 실행을 위한 memory 공간 부족 -> swap space (swap area)
Swap-space
Virtual memory system에서는 디스크를 memory의 연장 공간으로 사용
파일시스템 내부에 둘 수도 있으나 별도 partition 사용이 일반적
공간효율성보다는 속도 효율성이 우선
일반 파일보다 훨씬 짧은 시간만 존재하고 자주 참조됨
따라서, block의 크기 및 저장 방식이 일반 파일 시스템과 다름
Physical disk
Logical disk1: File System: 512의 동일한 크기로
Logical disk2: Swap area: 굉장히 큰 단위로
RAID(Redundant Array of Independent Disks)
여러 개의 디스크를 묶어서 사용
목적
디스크 처리 속도 향상
여러 디스크에 block의 내용을 분산 저장
병렬적으로 읽어 옴 (Interleaving, striping)
신회성(reliability) 향상
동일 정보를 여러 디스크에 중복 저장
하나의 디스크가 고장시 다른 디스크에서 읽어옴
단순한 중복 저장이 아니라 일부 디스크에 parity를 저장하여 공간의 효율성을 높일 수 있다.
'Studying > Operating System' 카테고리의 다른 글
10. File Systems Implementation (2/3) (3/3) (0) | 2018.07.15 |
---|---|
10. File Systems (1/3) (0) | 2018.07.14 |
09. Virtual Memory (2/2) (0) | 2018.07.12 |
09. Virtual Memory (1/2) (0) | 2018.07.11 |
08. Memory Management (4/4) (0) | 2018.07.10 |