-
[OS] Mass Storage (HDD, SSD)운영체제 2020. 12. 12. 17:32728x90
Mass Storage (HDD, SSD)
마그네틱 디스크(hdd) 는 데이터를 읽고 쓸 때 걸리는 시간들이 있음
-
Transfer time : 데이터를 읽기 시작하여 끝까지 다 읽어들이는 데까지 걸린 시간 (읽어야하는 데이터 총 크기에 비례)
-
Positionting time(Random-access time) = Seek time + Rotation time
-
Seek time : 디스크 헤더가 데이터가 위치한 트랙으로 이동하기까지 걸리는 시간
-
Rotation time : 헤더를 데이터가 위치한 섹터로 위치시키기 위해 Platter 가 회전하는 시간
따라서 총 데이터 접근 시간 = Seek time + Rotation time + Transfer time = Positioning time + Transfer time
파일 시스템은 1 섹터와 1블럭을 1:1 맵핑
Access time 은 현재 디스크 헤더의 위치와 Platter 상태에 따라 접근 속도가 다르므로 평균 값을 통해 표현함
Average access time = Average seek time + average roation time
Transfer rate = 읽는 속도
Controller overhead = 하드웨어 컨트롤러가 동작하는 시간
Average I/O time = Average access time + (읽어야되는 데이터 양 / Transfer rate) + Controller overhead
4KB 블럭을 읽으려고하는데 걸리는 시간을 구하라
디스크 스펙 : RPM = 7200, Average seek time = 5ms, Transfer rate = 1Gb/s, Controller overhead = 0.1ms
Average rotation time = 60000 / 7200 / 2 = 8.3 / 2 = 4.15
Transfer time = 32 / (1024 * 1024) = 0.031
0.1 + (5 + 4.15) + 0.031 = 9.281 ms
OS 는 디스크 컨트롤러와의 인터페이스를 정의만 해두고, 디스크 제작사가 이 인터페이스에 맞는 컨트롤러를 만들어서 함께 판매
디스크 드라이브는 Logical block 의 1차원 배열로 구성되며 logical block 은 cylinder(물리 블럭) 단위로 연속적으로 맵핑
'운영체제' 카테고리의 다른 글
[OS] NVM / RAID 구조 (0) 2020.12.12 [OS] 디스크 스케쥴링 (0) 2020.12.12 [OS] 디스크 볼륨과 파티션 / 가상 파일 시스템 (0) 2020.12.12 [OS] 디스크 볼륨과 파티션 / 가상 파일 시스템 (0) 2020.12.12 [OS] Disk free space 관리 (0) 2020.11.30 -