5장 디스크 스케줄링 200812120 이나현.

Slides:



Advertisements
Similar presentations
운영 체제 (5 장 디스크 스케줄링 ) 국지웅. 자기 디스크란 ? 자기 디스크 알루미늄 합금의 원판 표면에 자성물질을 입힌 보조기억장치. 정보는 다수의 동심원 위의 트랙에 기억되어 고속 회전하는 디스크의 표면과 미소간격을 유지하여 위치가 정해진 자기.
Advertisements

자동창고 Automated Storage and Retrieval System
2010 – 06 – 24 주간 보고서.
컴퓨터와 인터넷.
적외선으로 감지하는 추적 카메라 조원 : 최승호, 백진영, 이현지.
재료수치해석 HW # 박재혁.
뇌를 자극하는 Windows Server 2012 R2
제 5장 파일 시스템 5.1 개요 파일 시스템은 사용자가 운영체제에서 가장 관찰하기 쉬운 부분으로서, 파일에는 데이터와 프로그램이 저장된다. 운영체제는 디스크나 CD-ROM 같은 기억용량이 큰 기억장치를 관리/운영함으로써 파일을 추상적으로 구현한다. 5.2 디스크 구조.
7장. 보조 기억장치 다루는 내용 컴퓨터 본체와 보조기억장치와의 연결 살펴보기 자기 디스크 기억장치 광 기억장치.
Operating Systems Chapter 04 CPU 스케줄링.
연결리스트(linked list).
컴퓨터 프로그래밍 기초 [Final] 기말고사
램( RAM ) 램의 개념 램 선택법 듀얼채널의 의미.
디스크 스케줄링 채상훈.
운영체제 4장 요약정리(CPU 스케줄링) 2A 박훈.
04 CPU 스케줄링 CPU Scheduling
Windows Server 장. 사고를 대비한 데이터 백업.
Chapter 02 순환 (Recursion).
제 7 장 보조기억 장치관리와 디스크 스케줄링 Section 1 개 요 Section 2 캐시 기억장치
8장. 원격지 시스템 관리하기.
11장. 포인터 01_ 포인터의 기본 02_ 포인터와 Const.
Error Detection and Correction
                              데이터베이스 프로그래밍 (소프트웨어 개발 트랙)                               퍼스널 오라클 9i 인스톨.
10 장 데이터 링크 제어(Data Link Control)
제 3 장 Memory - SRAM.
디스크 스케줄링 C 최 은 선.
Operating system #5 Disk Scheduling
자료구조: CHAP 4 리스트 (3) 순천향대학교 컴퓨터공학과 하 상 호.
보조저장장치 구조(Secondary Storage Structure)
뇌를 자극하는 Windows Server 장. 장애 조치 클러스터.
자바 5.0 프로그래밍.
디지털회로설계 (15주차) 17. 시프트 레지스터와 카운터 18. 멀티바이브레이터 * RAM & ROM.
UNIT 07 Memory Map 로봇 SW 교육원 조용수.
Quiz #7 다음 수들을 합병 정렬과 퀵 정렬 알고리즘을 이용하여 오름 차순으로 정렬하였을 때, 데이터 이동 회수를 각각 구하라. 여러분은 정렬 과정을 단계별로 보이면서 이동 회수를 추적해야 한다. 단, 퀵 정렬시에 피봇으로 배열의 왼쪽 첫 번째 원소를 선택한다. 5.
뇌를 자극하는 Windows Server 2012 R2
디스크 스케줄링 B 박래환.
디스크 스케줄링 C 박상수.
뇌를 자극하는 Windows Server 장. 원격 접속 서버.
3. 디스크 스케줄링 디스크 스케줄링 전략 입출력장치(디스크 드라이버)는 요청(Request)을 위한 큐를 가짐.
디스크스케줄링 chapter05 2A 박부균.
논리회로 설계 및 실험 5주차.
ARM Development Suite v1.2
10 장 데이터 링크 제어(Data Link Control)
10 장 데이터 링크 제어(Data Link Control)
5장 디스크 스케줄링 박도하.
네트워크 환경 구축과 이미지 전송 호스트/타겟 통신 직렬 통신을 이용한 이미지 전송 수퍼 데몬 BOOTP 환경 구축
균형이진탐색트리 이진 탐색(binary search)과 이진 탐색 트리(binary search tree)와의 차이점
알고리즘 알고리즘이란 무엇인가?.
클러스터 시스템에서 효과적인 미디어 트랜스코딩 부하분산 정책
4장. 데이터 표현 방식의 이해. 4장. 데이터 표현 방식의 이해 4-1 컴퓨터의 데이터 표현 진법에 대한 이해 n 진수 표현 방식 : n개의 문자를 이용해서 데이터를 표현 그림 4-1.
DA :: 퀵 정렬 Quick Sort 퀵 정렬은 비교방식의 정렬 중 가장 빠른 정렬방법이다.
AT MEGA 128 기초와 응용 I 기본적인 구조.
Chapter 1 단위, 물리량, 벡터.
UNIT 25 SPI 로봇 SW 교육원 조용수.
9 장 오류 검출 및 오류 정정 9.1 오류 종류 9.2 검출 9.3 오류 정정 9.4 요약.
Chapter 7. 주변 장치 e-learning Computers.
멀티미디어시스템 제 5 장. 멀티미디어 데이터베이스 개념 IT응용시스템공학과 김 형 진 교수.
5.2.3 교환방식의 비교 학습내용 교환방식의 비교.
System Security Operating System.
제 4 장 Record.
스케줄링 2A 박남규.
I/O Management and Disk Scheduling
인덕대학 컴퓨터소프트웨어과 2학년 C반 김 정 은
디스크 스케줄링 이 은.
5.1 개요 고정 헤드 디스크 유동 헤드 디스크 드럼 플로피디스크
ARP.
4.CPU스케줄링 교과명 : 운영체제 학 과 : 컴퓨터 소프트웨어 학 번 : 이 름 : 최 은 선
디스크 스케줄링 학번 : 이름 : 조장호.
Chapter5 디스크 스케줄링 조은성.
5장 디스크 스케줄링 2학년 B반 강 원재.
Presentation transcript:

5장 디스크 스케줄링 200812120 이나현

자기 디스크의 소개 자기 디스크의 개요 얇고 둥근 금속 원판에 자성물질로 코팅되어 만들어진 것으로 그 평판 위에 헤드가 전도성 코일을 통해 표면을 자화시켜 데이터를 저장하는 원리이다. 자기 디스크의 구조

자기 디스크에서의 물리적 주소 자기 디스크 시스템에서 데이터의 전송 단위는 물리적으로 섹터 단위이다. 시스템에서 하나의 섹터를 정확히 지정하기 위해서 실린더 번호, 표면 번호, 섹터 번호가 필요하다.

자기 디스크의 액세스 시간 디스크 액세스 시간 = 탐색시간+회전지연시간+데이터전송시 ① 탐색시간(Seek Time) ⇒ 헤드를 해당 트랙으로 이동하는데 걸리는 시간 ② 회전 지연 시간(Latency Time)=서어치 시간(Search Time) ⇒ 해당 섹터가 헤드 아래로 회전 되어 올 때까지의 시간이다. ③ 데이터 전송 시간(Data Transfer Time) ⇒ 헤드를 통해 디스크의 특정 지역에 데이터를 저장하거나 읽는데 걸리는 시간이다.(디스크와 주기억장치 사이에 전송하는 시간) ♣ 위의 3가지 중 가장 큰 비중을 차지하는 것은 탐색시간이다. 속도는 10~30ms이다.

플로피 디스크의 소개 ■ 종류 ① 3.5인치(1inch=2.54cm) ② 5.25인치 ③ 8인치 ■ 디스크의 형태 5장 ■ 종류 ① 3.5인치(1inch=2.54cm) ② 5.25인치 ③ 8인치 ■ 디스크의 형태 ① 단면(Single) : 한쪽 면만 기록 ② 양면(Double) : 양면에 기록 ■ 밀도 단위 ① 2DD : 양면 배밀도 ⇒ Double side Double density ② 2HD : 양면 고밀도 ⇒ Double side High density 5.25인치 3.5인치 디스켓 레이블 (상표) 용량 섹터 (sector) 트랙 (track)   320KB 8 40 MD2D/DS,DD 360KB 9 MD2DD/DS,2DD 720KB 80 MD2HD/DS,HD 1.2MB 15 1.44MB 18

RAID RAID(Redundant Array of Inexpensive Disk; 복수 배열 독립 디스크) 정의 데이터를 분할해서 복수의 자기 디스크 장치에 대해 병렬로 데이터 를 읽는 장치 또는 읽는 방식이다. 즉, 여러 개의 하드디스크를 마치 1개의 하드디스크처럼 다룰 수 있는 기술이다. 다시 말하면 여러 개 의 하드디스크를 1개의 디스크처럼 사용함으로써 속도 향상을 가져 온다. ID의 목적 ① 데이터 전송 속도 향상 ② 대용량 디스크 확장 가능 ③ I/O 요구 처리율 향상 ④ 결함 허용도 향상 RAID의 Level 복수의 디스크를 병렬로 처리하여 컴퓨터와의 입출력을 제공하기 위한 디스크 관리 방법. 방법에 따라 RAID-0부터 RAID-5까지 있다. ⇒ PC에서 흔히 보이는 것이 RAID Level 0,1,0+1 이다.

RAID RAID-0 Disk Stripping을 이용하는 Disk 배열로 Redundancy는 포함하지 않음. 배열내의 모든 Disk들에 데이터를 분산 저장 배열 관리 소프트웨어(Array Management Software) 필요 장점: I/O요구의 병렬처리 및 Strip들의 병렬 Access로 I/O 전송시간 감소 단점: 디스크 데이터의 Parity를 계산하여 저장하는 디스크를 따로 배정하지 않았으므로 Disk Data Failure의  경우 복구 방법이 없음.  RAID-1 디스크반사(disk mirroring)방식 Disk Data Input에 있어서 2개 디스크에 Parallel Write가 가능 Disk Data Output에 있어서는 2개의 데이터 중 어느 하나의 데이터에 임의로 접근 할 수 있어 Access Time은 하나의 Disk일 경우 보다 오히려 줄일 수 있음. 두개의 디스크에 동일하게 데이터를 기록(Mirroring) 장점: 높은 신뢰도 단점: write 시 Overhead가 큼 RAID-2 : 비트-단위 인터리빙 및 검사 디스크 사용 Hamming Code를 이용한 오류검출과 정정 검사에 많은 Overhead발생으로 실제로는 사용하지 않음.

RAID RAID-3 : 패리티 디스크(parity disk)사용 각각의 Disk에 데이터를 Bit 단위로 Stripping하여 기록하며, 안전성 확보를 위해 별도 디스크에 Parity Disk를 저장함. 장점 : Overhead 낮음 단점 : Parity Disk가 성능상의 bottleneck이 됨. RAID-4 : 병렬 데이터 전송 채널 추가 Block 단위의 Interleaving 장점 : 동시 Access가능하며 병렬전송으로 전송률 향상 단점: 쓰기 동작 시에 4번의 Access(데이터와 Parity의 읽기와 쓰기)필요 RAID-5 : 회전 패리티(rotated parity) 방식 이용 회전 Parity Disk를 사용함 장점 : Parity Disk에 대한 병목현상 해소   RAID-6 : 2차원 패리티(2-dimensional parity)방식 2차원 디스크 배열로 열에 대한 패리티 외에 행에 대한 패리티 추가 장점 : 2개 이상의 디스크에 결함이 발생하여도 회복 가능 단점 : 한번의 쓰기 동작에 6번의 디스크 액세스 발생

디스크 스케줄링 기준 디스크 스케줄링은 디스크 입출력을 하기 위해 대기하고 있는 요청 (request)들 중에서 어느 요청을 먼저 처리할 것인가를 결정하는 것 이유 -큐(Queue)에 대기중인 요청들에 대해 서비스 순서를 어떻게 결정하는 지에 따라 디스크 시스템의 성능이 달라지므로 더 좋은 성능을 얻기 위한 것이다. 디스크 스케줄링에서는 데이터 액세스 시간 중에 데이터 전송시간은 제외 되므로 탐색시간, 회전 대기시간의 최적화 기법이 필요하다. 디스크 스케줄링의 평가 기준 ① 단위 시간당 처리량(Throughput)⇒ 극대화 ② 평균 응답 시간(Mean Response Time)⇒ 감소 ③ 응답 시간의 예측성(Predictability)

탐색 시간의 최적화 FCFS(first come first served scheduling) 스케줄링 가장먼저 입력된 요구가 우선적으로 서비스를 받는 방법 ① 구현 - 대기 큐에 입력된 요구 순서대로 서비스 진행 ② 특징 - 대기 큐의 순서대로 서비스하며 더 높은 우선 순위의 요청이 입력되어도 순서가 바뀌지 않아 공평성이 보장 됨 - 디스크 오버헤드(부하)가 커지면 응답시간이 길어지고 비효율적.

SCAN 스케줄링(엘리베이터 알고리즘) Denning이 개발, SSTF가 갖는 응답시간의 편차와 차별을 극복하기 위한 방법 오버헤드가 적은 경우에 사용 ① 구현 - 헤드진행 방향과 같은 방향의 가장 짧은 거리에 있는 요청을 먼저 서비스하고 진행 중 가장 바깥쪽까지 갔거나 더 이상 요구가 없으면 반대쪽으로 방향을 바꾸어 서비스한다. ② 특징 - 디스크 오버헤드가 적어야 가장 좋은 효율을 가짐 - 대부분의 디스크 스케줄링의 기본 전략 - 밀도가 높은 쪽의 요청은 상당히 오랜 시간 대기하게 됨 SSTF 스케줄링 - 탐색 거리가 가장 짧은 요청을 먼저 처리하는 방법  - 탐색 시간의 극소화, 극단적일 경우 기아상태 발생 가능 ① 구현 - 현재 위치에서 가장 가까운 거리에 있는 요청을 서비스한다. - 대기 큐의 우선순위에 관계없이 다음 최단 거리 요청을 서비스 ② 특징 - 실린더 지향 기법 - 가장 안쪽이나 바깥쪽의 트랙은 가운데 트랙보다 서비스를 받지 못하기 때문에 응답시간의 편차가 크다. - FCFS보다 처리량이 많고 평균 응답시간이 짧다. - 일괄처리 시스템에 유용하고 응답시간의 편차가 크므로 대화형 시스템에 부적합.

헤드가 안팎으로 움직이나 어떤 진행 방향의 진행이 시작될 당시 대기 중 이던 요청들만 서비스를 한다. N-단계 SCAN 스케줄링 헤드가 안팎으로 움직이나 어떤 진행 방향의 진행이 시작될 당시 대기 중 이던 요청들만 서비스를 한다. 서비스가 한쪽 방향으로 진행될 때 대기 중이던 요구들만 서비스한다. ① 구현 - SCAN과 동일 - 진행 중 입력된 요청들은 한데 모아 반대방향 진행 때 서비스한다. ② 특징 - 처리량과 평균응답시간에 있어 효율적 - SSTF 나 SCAN 방법보다 응답시간의 편차가 적다. - 한 실린더에 많은 요청이 도착해도 대기중인 요청만 처리하므로 무한대기가 없다. C(Circular)-SCAN 스케줄링 SCAN 스케줄링 전략을 수정 한 것 헤드는 향상 같은 방향으로 헤드를 이동하면서 디스크 요청을 처리 하나 더 이상 그 방향으로 요청이 없을 때 반대 방향으로 헤드를 요청하는 것이 아니라 같은 방향의 처음부터 다시 처리 한다. ① 구현 - 바깥쪽 실린더에서 안쪽으 로 진행하면서 최단거리의 요구를 서비스 한다. - 더 이상 요구가 없으면 가장 바깥쪽에서 서비스하지 않은 요구로 이동하여 서비스 ② 특징 - 진행도중 도착한 요청은 다음 수행 시 서비스 - 응답시간의 편차가 매우 적다. - 회전 시간의 최적화가 가능하며 부하(overhead)가 많이 걸리는 경우 효과적이다.

예션바흐 기법(Eschenbach Scheme) Look 스케줄링 헤드가 진행하다가 도중에 진행방향의 앞쪽으로 더 이상 요청이 없을 경우 양끝 실린더까지 진행하지 않고 그 자리 에서 방향을 바꾼다. 예션바흐 기법(Eschenbach Scheme) 이 기법은 매우 부하가 큰 항공 예약 시스템에 의 해 개발. - 탐색시간 뿐만 아니라 회전 지연시간도 최적화하려고 했던 최초의 기법들 중 하나이다.

회전 지연 시간의 최적화 일반적으로 회전 지연 시간의 최적화를 위해 섹터 큐잉(Sector Queuing) 기법을 사용한다. SLTF(Shortest Latency Time First) 기법 이라고도 한다. 이 기법은 각 섹터별로 별도의 규를 두어 관리하며 하나의 실린더에 대한 여러 입출력 요구가 도착할 때 이들을 각 섹터별로 설정된 큐에 삽입한다. 이런 상태에서 헤드의 탐색과정이 끝나고 헤드가 특정 실린더에 도착한 후 헤드 아래에 먼저 도착된 순서대로 각 섹터에 대한 서비스를 한다. ① 구현 - 디스크 헤드가 특정 실린더에 도착하면 여러 트랙을 가리 키게 된다.      - 이 여러 트랙에 대한 많은 요구들 중 가장 짧은 회전지연 시간을 갖는 요청에 대해 먼저 서비스 한다. ② 특징 - 구현하기 쉽다. 이론적 최적 값과 거의 일치    - 회전지연시간 최적화는 디스크 주변의 가장 가까운 섹터가 가장먼저 서비스되므로 섹터 큐잉(sector queuing)이라 불림     - 고정헤드 디스크를 위한 스케쥴링 기법

기타고려사항 1) 버퍼링(buffering) 2) 디스크 스트라이핑(disk striping) 버퍼링이란? 정보의 송수신을 원활하게 하기 위해서 정보를 일시적으로 저장하여 처리 속도의 차를 흡수하는 방법이다. 기법은 디스크에서 자주 참조되는 자료를 주기억장치 커널 공간의 버퍼 영역에 저장하여 관리 한다. 디스크의 입출력 횟수가 적어지므로 시스템 성능이 향상된다. 2) 디스크 스트라이핑(disk striping) 2~32개의 개별 디스크에 하나의 가상적 스트라이프를 작성하여 이들 디스크를 컴퓨터의 운영체제가 단일의 디스크 구동 장치로 인식하도록 하여, 이들 디스크상에 존재하는 똑같은 크기의 디스크 분할의 집합을 단일 디스크 볼륨으로 종합하는 방법. 같은 볼륨 내에서의 다중 입출력 동작이 동시에 진행될 수 있게 되어 성능이 크게 향상된다. 디스크 스트라이핑은 윈도즈 NT에서 지원되고 있으며, 성능은 뛰어나지만 장애 허용성은 없다. 고성능과 대용량을 중요시 하는 시스템에서 일반적으로 사용한다. 여기서 스트라이프란 입출력 단위가 되는 블럭을 의미 한다.