본문 바로가기

컴퓨터공학/운영체제

(2)
디스크 스케줄링(디스크 구조, 기법) 우선 디스크 스케줄링을 알아보기 전에, 실린더, 플래터, 헤더, 트랙, 섹터 등의 용어들에 대해서 정리하고 가자. 위의 그림이 가장 정확하게 하드 디스크를 설명했다. 모든 플래터에는 헤드가 모두 존재한다. 입력으로 주어지는 것들은 트랙 번호이다. 추가적으로, 하드디스크 구조를 눈으로 보고 싶은 분들을 위해서 유튜브 영상도 하나 링크한다. www.youtube.com/watch?v=NtPc0jI21i0 위의 영상을 보면서, 하드디스크 구조를 확실히 파악할 수 있을 것이다. 디스크 스케줄링은 주어진 트랙 번호들을 찾아가는 과정들을 의미하며, 이동 거리 비교를 통해서 각 상황에서 스케줄링의 우위를 판단하게 된다. FCFS(First Comes First Served) 스택과 동일하게, 선입 선출 구조 들어온 ..
CPU 스케줄링(gantt chart) CPU 스케줄링을 gantt chart로 계산해보자. Q. FCFS인 경우 평균 시간을 어떻게 될까? FCFS의 경우, 순차적으로 프로세스가 실행되므로 평균 시간은 각 프로세스의 시작 시간과 같다. 간단히 직관적으로 이해될 것이다. Q. 라운도 로빈(RR)의 경우 평균 시간은 어떻게 될까? 위의 그림을 이해해보자, P2는 4초에 시작하고 7초에 모두 마무리된다. P3도 7초에 시작해서 10초에 마무리된다. 하지만 P1은 0 ~ 4초까지 실행이 되고, 10초에 다시 시작되므로 대기시간이 (10 - 4)가 존재한다. 따라서 (P1의 대기시간 + P2의 대기시간 + P3의 대기 시간) / 3을 한 값이 평균 대기 시간이 된다. 다양한 CPU 프로세스 알고리즘이 존재한다. 어떤 방식이든 평균 대기 시간이라는 것..