1. 디스크 구조
가장 일반적인 보조 기억 장치인 하드 디스크는 아래 사진과 같은 구조로 되어있습니다.
디스크는 원판(plotter), 팔(arm), 헤드(head)로 구성되어 있습니다.
원판에는 원 모양의 트랙(track)이 존재하며, 모든 원판에서 같은 위치를 갖는 트랙들의 집합을 실린더(cylinder)라고 합니다. 각 트랙은 섹터(sector)로 구성되어 있으며, 섹터는 데이터를 읽거나 기록할 때의 기본 단위입니다. 보통 섹터의 크기는 512바이트입니다.
디스크의 헤드는 각 원판의 읽기/쓰기가 가능한 면마다 하나씩 존재합니다. 헤드의 개수, 트랙(또는 실린더)의 개수, 그리고 각 트랙마다 섹터의 개수에 따라 디스크의 전체 용량과 물리적 특성이 결정됩니다.
섹터는 디스크 내부에서 데이터를 관리하는 단위이며, Disk Controller가 직접 관리합니다. 데이터는 섹터에 저장되어 있지만 디스크 외부에서는 논리적인 단위인 Logic Control Block 단위로 디스크에 접근합니다.
Logical Block은 주소를 가진 1차원 배열처럼 구성되어 있습니다. 이는 정보를 전송하는 최소 단위입니다. 섹터는 이러한 Logical Block이 물리적인 디스크에 매핑된 위치를 나타냅니다. 예를 들어, sector 0은 최외곽 실린더의 첫 번째 트랙에 있는 첫 번째 섹터를 가리킵니다.
2. Disk Access Time
디스크에 접근하는 Access Time은 세 가지의 시간 요소로 구성됩니다.
- Seek Time (탐색 시간)
- Rotational Latency (회전 지연 시간)
- Transfer Time (전송 시간)
1. Seek Time (탐색 시간)
디스크 헤드가 읽거나 쓰려는 트랙 위치로 이동하는 데 걸리는 시간입니다. 이동하는 과정에서 헤드가 안팎으로 이동해야 하기 때문에 다른 요소들보다 시간이 상대적으로 오래 걸립니다.
2. Rotational Latency (회전 지연 시간)
디스크 원판을 회전하여 읽거나 쓰려는 섹터가 헤드 아래로 위치될 때까지 걸리는 시간입니다. 회전하는 디스크에서 특정 섹터에 접근하기 위해서는 해당 섹터가 헤드 아래로 오도록 디스크를 회전시켜야 합니다.
3. Transfer Time (전송 시간)
실제로 데이터를 읽거나 쓰는 데 걸리는 시간입니다. 헤드가 위치한 섹터의 데이터를 읽거나 쓰는 시간으로, 전송 시간은 일반적으로 매우 짧습니다.
3. Disk Bandwidth
Disk Bandwidth 는 디스크의 성능을 나타내는 중요한 지표 중 하나입니다. 이는 단위 시간당 디스크로부터 전송되는 데이터의 양을 나타냅니다. 디스크 접근 시간은 주로 Seek Time에 의해 좌우되므로, 높은 Disk Bandwidth를 얻기 위해서는 가능한 한 Seek Time을 줄이는 것이 중요합니다.
이러한 디스크의 구조와 동작 특성을 고려하여 디스크에서 발생하는 요청을 효율적으로 처리하기 위해 Disk Scheduling이 필요합니다. Disk Scheduling은 디스크에 대한 외부 요청을 처리하는 순서를 조정하여, Seek Time을 최소화하고 Disk Bandwidth를 향상시키려고 합니다.
다음 포스팅에서는 Disk Scheduling에 대해 알아보겠습니다.
참고자료
[KOCW 이화여대 반효경 교수님 - Disk Management & Scheduling 1]
https://core.ewha.ac.kr/publicview/C0101020140523151255773807?vmode=f
[ Operating System Concepts - Abraham Silberschatz ]
'CS > 운영체제' 카테고리의 다른 글
[운영체제] 운영체제 반효경 교수님 강의 노트 총 정리 모음 (0) | 2024.02.07 |
---|---|
[운영체제] 11. 디스크 관리 : 디스크 스케줄링 (Disk Management & Scheduling 1, 2) (0) | 2024.02.06 |
[운영체제] 10. 파일 시스템 : 페이지 캐시 & 버퍼 캐시 (File System Implementations 2) (0) | 2024.02.04 |
[운영체제] 10. 파일 시스템 : VFS와 NFS (File System Implementations 1) (0) | 2024.02.01 |
[운영체제] 10. 파일시스템 : 디렉터리 구현 방법과 메타 데이터 보관 위치 (File System Implementations 1) (0) | 2024.02.01 |