학습 개요
- 입 출력 장치 중 저장 장치에 대해 더 자세히 알아봄
- 디스크는 컴퓨터 시스템이 동작하는 데 있어 중요한 장치로 디스크의 효율적 관리가 매우 중요함
- 저장 장치와 관련하여 파일 관리자는 시스템 내에 존재하는 파일을 제어하고 관리함
- 저장 장치의 종류를 살펴보고, 자기 디스크 장치의 특성과 디스크 스케줄링 알고리즘에 대해 살펴 봄
- 파일 관리자의 기본적인 개념을 살펴봄
학습 목표
- 저장 장치의 종류를 설명할 수 있음
- 다양한 디스크 스케줄링 알고리즘을 설명할 수 있음
- 파일 관리자에 대해 이해하고 디스크 공간 할당을 설명할 수 있음
강의록
저장 장치의 종류
순차 접근 저장 장치
- 데이터를 순차적으로 읽거나 쓸 수 있는 저장 장치
ex) 테이프 장치
- 초기 접근 시간이 굉장히 오래 걸림
- 대량의 데이터 백업 용으로 사용
직접 접근 저장 장치
- 지정한 위치를 직접 찾아 데이터를 읽거나 쓸 수 있는 저장 장치
- 임의 접근 저장 장치
- ex) 자기 디스크, 광 디스크, SSD
- 자기 디스크
자성을 띤 디스크의 표면에 데이터를 쓰거나 읽음
- 광 디스크
- 디스크 표면에 레이저를 쏘아 반사되는 빛의 차이를 이용하여 데이터를 읽거나 씀
- ex) CD-ROM, CD-RW, DVD, 블루레이 디스크 등
- 나선형인 하나의 트랙으로 구성
- SSD
- 읽고 쓰기가 가능하면서 전력 공급이 없어도 데이터가 지워지지 않는 메모리 이용
- 자기 디스크보다 속도가 빠르고 전력 소모가 적음
- 용량 대비 가격이 비싸며 수명이 짧음
디스크 스케줄링 알고리즘
디스크 스케줄링
- 디스크 접근 요구를 효율적으로 처리하는 순서를 결정하는 작업
- 디스크 접근 요구
- 디스크에서 데이터를 읽거나 쓰는 요구
- 디스크 접근 요구
- 프로세스들의 요구를 디스크 큐에 두고 관리
- 기계적 동작이 최소화되도록 디스크 큐를 재 배열
- 직접 접근을 위해 헤드의 이동, 디스크의 회전 같은 기계적 움직임 필요
디스크 접근 요구 처리 시간
탐구 시간 + 회전 지연 시간 + 전송 시간
스케줄링 형태
- 탐구 시간 최적화
- 회전 지연 시간 최적화
디스크 스케줄링 알고리즘
- FCFS 스케줄링
- SSTF 스케줄링
- SCAN 스케줄링
- C-SCAN 스케줄링
- LOOK 스케줄링
- C-LOOK 스케줄링
- SLTF 스케줄링
FCFS 스케줄링
- FCFS(First-Come, First-Served)
먼저 도착한 접근 요구가 먼저 서비스를 받는 방법
- 총 탐구 시간
- 1 + 5 + 15 + 20 = 41
- 총 탐구 시간
- 장점
- 접근 요구의 도착 순서대로 실행 되므로 공평
- 단점
- 도착 순서에 따라 총 탐구 시간이 커질 수 있음
- 디스크 부하가 높을수록 응답 시간이 길어짐
SSTF 스케줄링
- SSTF (Shortest-Seek-Time-First)
탐구 시간이 가장 짧은 접근 요구를 먼저 처리하는 방법
- 총 탐구 시간
- 1 + 5 + 5 + 20 = 31
- 총 탐구 시간
- 장점
- FCFS 스케줄링보다 처리 량, 평균 응답 시간 개선
- 일괄처리 운영체제에 적합
- FCFS 스케줄링보다 처리 량, 평균 응답 시간 개선
- 단점
- 양 끝 쪽에 위치한 트랙에 대한 접근 요구는 기아 상태 발생 가능
- 트랙 위치에 따라 응답 시간 편차가 큼
- 시 분할 운영체제에 부적합
SCAN 스케줄링
양 끝 트랙 사이를 왕복하며 진행 방향의 가장 가까운 접근 요구를 먼저 처리하는 방법
- 총 탐구 시간
- 1 + 10 + 55 + 5 = 71
- 총 탐구 시간
- 장점
- SSTF 스케줄링의 응답 시간 편차를 어느 정도 개선
- 단점
- 새로운 요구가 헤드 진행 방향의 바로 앞이냐 뒤냐에 따라 응답 시간 편차 발생
- 양 끝 트랙은 헤드가 한 번 왕복 할 때 한 번의 서비스 기회만 있음
C-SCAN 스케줄링
오로지 한쪽 방향으로만 진행 방향의 가장 가까운 접근 요구를 먼저 처리하는 방법으로 나머지는 SCAN 스케줄링과 동일
- 총 탐구 시간
- 1 + 10 + 180 + 5 = 196
- 총 탐구 시간
장점
- 양 끝 트랙에 대한 접근 요구의 차별 제거
- 응답 시간의 편차가 매우 작음
LOOK 스케줄링
SCAN 스케줄링처럼 처리하되 진행 방향으로 더 이상 접근 요구가 없으면 방향을 바꾸는 방법
- 총 탐구 시간
- 1 + 10 + 15 + 5 = 31
- 총 탐구 시간
C-LOOK 스케줄링
C-SCAN 스케줄링처럼 처리하되 진행 방향으로 더 이상 접근 요구가 없으면 방향을 바꾸어 가장 먼 접근 요구의 트랙까지 이동하는 방법
총 탐구 시간
- 1 + 10 + 20 + 5 = 36
SLTF 스케줄링
- SLTF(Shortest Latency Time First)
동일 실린더의 여러 섹터에 대한 접근 요구에 대해 회전 지연 시간이 가장 짧은 것을 먼저 처리하는 방법
- 높은 부하 상태에서 유용
- 회전 지연 시간 최적화
- 이론적인 최적해와 거의 일치
파일 관리
파일 관리자
- 파일을 생성, 삭제, 수정
- 파일에 접근하는 것을 제어
- 파일에 의해 사용 되는 자원을 관리
파일 관리자의 요소
- 액세스 방식
- 파일에 저장되어 있는 데이터에 접근하는 방식
- 파일 관리
- 파일을 저장 · 참조 · 공유 및 안전하게 보호되도록 함
- 보조 기억 장치 관리
- 보조 기억 장치에 파일을 저장하는 데 필요한 공간 할당
- 파일 무결성 유지
- 파일의 정보가 소실되지 않도록 보장
파일 관리자의 기능
- 사용자가 파일을 생성, 수정 및 삭제할 수 있게 함
- 타인의 파일을 공동으로 사용할 수 있게 함
- 읽기, 쓰기, 실행 등 여러 종류의 액세스 제어 방법 제공
- 사용자가 각 응용에 적합한 구조로 파일을 구성할 수 있게 함
- 백업 및 복구
- 기호화 된 이름을 사용하여 파일을 참조할 수 있게 함
- 정보가 안전하게 보호되고 비밀이 보장되게 함
파일 구조와 접근 방식
- 파일 구조
- 파일을 구성하는 레코드들이 보조 기억 장치에 배치되는 방식
- 접근 방식
- 순차 파일, 인덱스 된 순차 파일, 직접 파일
- 순차 파일
- 레코드가 물리적 순서에 따라 저장되어 있는 파일
- 논리적 순서와 물리적 순서가 동일
- 순차 접근 저장 장치에 많이 이용
- 인덱스 된 순차 파일
- 각 레코드의 키를 기준으로 한 논리적 순서대로 레코드가 저장됨
- 일부 주요 레코드의 실제 주소가 저장된 인덱스를 구성하여 관리하는 파일
- 순차 접근(키 순서)과 직접 접근(인덱스 검색) 모두 가능
보통 디스크에 이용
- 직접 파일 (Direct File)
- 각 레코드의 키를 이용하여 직접 접근 저장 장치의 물리적 주소를 통해 직접 액세스 되는 파일
논리적인 키와 물리적 주소의 사상은 프로그래머가 정의
디스크 공간 할당
- 연속 할당 기법
- 보조 기억 장치의 연속된 가용 공간에 파일 저장 공간을 할당
- 필요한 공간의 크기를 미리 정해야 함
- 장점
- 액세스가 효율적
- 디렉터리 구현이 단순
- 단점
- 외부 단편화
- 파일 크기 확장에 대한 대응이 비효율적
- 불연속 할당 기법
- 섹터 또는 블록 단위로 공간을 할당
- 포인터를 이용하여 블록들을 연결
- 장점
- 단편화 문제 해결
- 파일 확장 문제 해결
- 단점
- 파일 공간 분산으로 성능 저하
- 포인터 관리를 위한 연산 및 공간 소비
정리 하기
- 저장 장치는 순차 접근 저장 장치와 직접 접근 저장 장치로 나뉨
- 직접 접근 저장 장치인 자기 디스크의 접근 요구 처리 시간은 탐구 시간, 회전 지연 시간, 전송 시간으로 구성 됨
- 디스크 스케줄링은 디스크 접근 요구를 효율적으로 처리하는 순서를 결정하는 작업으로, 탐구 시간을 최소화하는 것이 가장 중요함
- SSTF 스케줄링 알고리즘은 헤드 위치로부터 탐구 시간이 가장 짧은 접근 요구를 먼저 처리하는 방법임
- SCAN 스케줄링 알고리즘은 양 끝 트랙 사이를 왕복하며 진행 방향의 가장 가까운 접근 요구를 먼저 처리하는 방법임
- C-SCAN 스케줄링 알고리즘은 정해진 한 방향으로만 가장 가까운 접근 요구를 먼저 처리하는 방법으로, 트랙의 끝에 도달하면 반대편 트랙 끝으로 이동한 후 다시 같은 방향으로 진행하는 방법임
- LOOK과 C-LOOK 스케줄링 알고리즘은 진행 방향의 앞쪽에 더 이상 접근 요구가 없으면 바로 방향을 바꾸는 방법임
- 이때 C-LOOK 스케줄링은 반대편 트랙 끝까지 이동하지 않고 가장 먼 접근 요구의 트랙까지만 이동함
- SLTF 스케줄링 알고리즘은 회전 지연 시간 최적화를 위한 알고리즘으로, 동일 실린더에서 회전 지연 시간이 가장 짧은 접근 요구를 먼저 처리하는 방법임
- 파일 관리자는 파일의 생성 · 수정 · 삭제, 파일의 공유 및 액세스 제어, 백업, 정보 보호 등의 기능을 수행함