DISK Structure
■ logical block
ㅡ> 논리적 디스크 단위
ㅡ> sector와 매핑
■ Sector
ㅡ> 물리적 디스크 단위
ㅡ> Sector 0 : 최외곽 실린더, 첫 트랙, 첫 번째, 부팅정보 들어감
플래터
실린더 : 여러 플래터에서 같은 트랙을 모은 것
트랙
클러스터
섹터
Disk Management
■ physical formatting
ㅡ> 물리적 초기화
ㅡ> 디스크를 섹터단위로 나누는 것
ㅡ> low-level formatting
■ Partitioning
ㅡ> 하나의 물리적 디스크를 여러개의 파티션(logical disk)으로 분할
ㅡ> OS는 각각의 파티션을 독립적 DISK로 취급 (Logical DISK)
■ Logical formatting
ㅡ> 논리적 초기화
ㅡ> 파일 시스템 설치
■ Booting
ㅡ> ROM : 비휘발성 메모리, 부팅loader는 날아가면 안돼서 여기다 저장
ㅡ> 부팅을하면 CPU가 ROM에 넘어가서 small bootstrap loader의 instruction을 실행 ▶ 하드디스크 섹터0의 boot block을 load
ㅡ> OS의 위치를 찾아서 메모리에 load
DISK Scheduling
■ Access time
ㅡ> Seek time : 헤드가 실린더로 움직이는 시간. (시간 대부분을 차지)
ㅡ> Rotational latency : 헤드가 섹터로 도달하는 시간 (디스크가 회전함)
ㅡ> Transfer time : 헤드가 데이터 전송하는 시간
■ Disk bandwidth
ㅡ> 데이터 전송 속도
■ Disk Scheduling
ㅡ> 목표 : seek time 최소화 (= seek distance 최소화)
DISK Scheduling Algorithm
알고리즘 구현되는 곳이 대부분 DISK 내부가 아니기 때문에
정확한 DISK의 위치는 모를 수 있다
ㅡ> 대신, Logical block 번호로 스케줄링 하면 실제위치와 어느정도 맞아 떨어진다
근데 여기서는 실런더 번호로 알고리즘을 설명하겠다
FCFS (First Come First Service)
들어온 순서대로 처리
ㅡ> 비효율적
SSTF (Shortest Seek Time First)
현재 헤드 위치에서 제일 가까운 요청을 먼저 처리
■ 단점
ㅡ> Starvation
SCAN (엘리베이터 스케줄링)
헤드가 항상 한쪽끝에서 다른쪽 끝까지 왔다갔다 한다
ㅡ> 가는 길목에 있는 요청을 처리
■ 장점
ㅡ> Starvation 발생x
■ 단점
ㅡ> 실린더 위치에 따라 대기 시간이 다름 ▶ 가운데랑 가장자리랑 최악의 경우 기다리는 시간이 다름 (반바퀴, 한바퀴)
C-SCAN
헤드가 한쪽 끝에서 반대쪽 끝으로 이동할때 요청들을 처리한다
ㅡ> 되돌아올때는 요청을 처리 안한다
■ 장점
ㅡ> SCAN에 비해, 실린더 위치에 따른 대기 시간이 균일해짐
나머지 알고리즘
기본적으로 SCAN에 기반한 알고리즘들이다
■ N-SCAN
ㅡ> 한쪽끝에서 출발해서 반대쪽에 도착하는 사이에 들어온 요청들은 그 다음에 처리하는걸로 미룬다
ㅡ> 대기시간이 더 균일해짐
■ LOOK
ㅡ> 한쪽끝으로 이동중인데 그쪽에 요청이 없으면 도중에 꺾어서 반대쪽 끝으로 이동
ㅡ> C-LOOK : 되돌아올때는 요청 처리x
알고리즘의 결정
보통 SCAN방식 씀
■ File의 할당 방법에따라 다름
ㅡ> 연속할당, 불연속할당 등등..
Swap-Space Management
■ DISK를 사용하는 이유
ㅡ> 1. 메모리의 휘발성 때문에 ▶ 파일 시스템처럼 영속적으로 유지해야되는 것은 비휘발성의 DISK가 필요
ㅡ> 2. 메모리 공간 부족 ▶ DISK를 Swap-Space로 사용
■ 파티션 (Logical disk)
ㅡ> File system으로 쓸 수도 있고, Swap area로 쓸 수도 있다
ㅡ> Swap area : 공간 효율성보단 속도 효율성이 중요
RAID
저렴한 여러개의 디스크를 묶어서 같이 씀
■ 중복저장, 분산저장
ㅡ> 디스크 처리 속도 향상 : 여러 디스크에 분산 저장하고 병렬적으로 읽어옴
ㅡ> 신뢰성 항상 : 하나의 디스크가 고장나면 다른 디스크에서 읽어옴
■ parity
ㅡ> 중복 저장의 정도를 굉장히 낮게 해서, 오류가 생겼는지를 알아내고 복구할 수 있을 정도로만 함
'CS > 운영체제' 카테고리의 다른 글
[OS] File System (0) | 2025.02.16 |
---|---|
[OS] Virtual Memory (0) | 2025.02.11 |
인터페이스 (1) | 2025.02.04 |
[OS] Memory Management (0) | 2025.01.22 |
[OS] DeadLock (교착상태) (0) | 2025.01.17 |