목차
1. 다음에 대해 답하시오. (10점)
(1) 본인이 사용하는 컴퓨터 시스템의 운영체제에 대해 이름과 버전을 찾아 쓰시오.
①운영체제
②내 컴퓨터의 운영체제 이름과 버전
(2) (1)의 컴퓨터 시스템 이외에 운영체제를 사용하는 시스템을 본인 주변에서 찾아, 그 시스템의 종류와 사용되는 운영체제의 이름 및 버전을 쓰시오.
① 우분투 리눅스
② 본인 주변에서 사용하는 시스템의 종류와 운영체제 이름 및 버전
2. 다음에 대해 답하시오.
(1) SJF 스케줄링 알고리즘과 HRN 스케줄링 알고리즘을 각각 설명하시오.
①SJF 스케줄링 알고리즘 ②HRN 스케줄링 알고리즘
(2) 프로세스별 도착시간과 필요한 CPU 사이클이 표와 같을 때, SJF 스케줄링 알고리즘과 SRT 스케줄링 알고리즘 각각에 대해 프로세스들이 실행되는 순서를 시간과 함께 표시하고 평균 대기시간도 구하시오.
①SJF 스케줄링 알고리즘 ②SRT 스케줄링 알고리즘
3. 참고문헌
(1) 본인이 사용하는 컴퓨터 시스템의 운영체제에 대해 이름과 버전을 찾아 쓰시오.
①운영체제
②내 컴퓨터의 운영체제 이름과 버전
(2) (1)의 컴퓨터 시스템 이외에 운영체제를 사용하는 시스템을 본인 주변에서 찾아, 그 시스템의 종류와 사용되는 운영체제의 이름 및 버전을 쓰시오.
① 우분투 리눅스
② 본인 주변에서 사용하는 시스템의 종류와 운영체제 이름 및 버전
2. 다음에 대해 답하시오.
(1) SJF 스케줄링 알고리즘과 HRN 스케줄링 알고리즘을 각각 설명하시오.
①SJF 스케줄링 알고리즘 ②HRN 스케줄링 알고리즘
(2) 프로세스별 도착시간과 필요한 CPU 사이클이 표와 같을 때, SJF 스케줄링 알고리즘과 SRT 스케줄링 알고리즘 각각에 대해 프로세스들이 실행되는 순서를 시간과 함께 표시하고 평균 대기시간도 구하시오.
①SJF 스케줄링 알고리즘 ②SRT 스케줄링 알고리즘
3. 참고문헌
본문내용
으로 상쇄된다. 따라서 SRT와 SJF의 정확한 비교는 문맥 교환에 요구되는 시간을 고려해 평가해야 한다. 프로세스 실행 중 작업이 거의 끝나갈 때 실행시간의 추정치가 매우 작은 작업이 입력되었다고 가정할 때, SRT에서는 실행 중인 프로세스를 중단하고 실행시간 추정치가 매우 작은 작업을 선점하지만, 항상 이러한 선택이 바람직하다고 할 수는 없다. 따라서 임계치(threshold value)를 두고, 실행 중인 작업이 왼료되기까지 남은 시간이 이 임계치보다 작다면 시스템은 그 작업을 계속 실행할수 있게 한다.
처음에는 프로세스 A만 도착했으므로 A를 디스패치하여 실행시킨다. 1만큼 시간이 경과된 후에도 준비 큐에는 A만 있으므로 A를 계속 실행시킨다. 2의 시간이 경과된 후 B가 도착한다. 이때 프로세스 별 실행시간 추정치는 A는 5이고 B는 4이다. 따라서 B를 시간 1만큼 실행시킨다. 새로 도착한 프로세스가 아직 없으므로 B의 실행시간 추정치가 여전히 가장 짧으므로 B를 계속 실행시킨다. 시간 4 경과 후 C가 도착한다. 이때 프로세스별 실행시간 추정치는 A 5, B 2, C 1이므로 C를 디스패치하여 실행시킨다.
C가 종료된 후 즉, 5의 시간이 경과된 때에 D가 도착한다. 이때 실행시간 추정치가 가장 짧은 프로세스는 B의 2이다. 따라서 B를 실행시킨다. B가 종료될 때까지 새로 도착한 프로세스는 없으므로, D의 3이 가장 짧은 실행시간 추정치이므로 D를 디스패치하여 시간 9까지 실행시킨다. 시간 9가 경과된 후에 새로운 프로세스 E가 도착한다. 이때 남아 있는 실행시간의 추정치가 가장 짧은 프로세스는 D의 1이다. 따라서 D를 완료한다.
D가 완료된 시점 즉, 시간 10이 경과된 후 남아 있는 프로세스 중 실행시간 추정치가 가장 짧은 것은 E의 2이다. 따라서 E를 디스패치하여 실행시킨다. 새로운 프로세스가 더 이상 없으므로 E를 계속 실행시켜 완료한다. E가 종료된 후에는 A만 남아 있으므로 A를 실행하고 종료한다.
A
A
B
B
C
B
B
D
D
D
E
E
A
A
A
A
A
대기시간은 프로세스의 수행이 완료될 때까지 준비 큐에서 기다린 시간의 합이다. 따라서 프로세스 A는 시간 2부터 12사이가 되어 대기시간은 12 - 2 = 10이 된다. 프로세스 B의 대기시간은 시간 4부터 5사이 즉, 5 - 4 = 1이다. 프로세스 C의 대기시간은 도착 후 바로 종료될 때까지 실행되었으므로 0이다. 프로세스 D의 대기시간은 시간 5부터 7 사이이므로 7 -5 = 2이다. 프로세스 E의 대기시간은 시간 9에서 시작해 10 사이이므로 10 - 9 = 1이다.
프로세스
A
B
C
D
E
대기시간
10
1
0
2
1
따라서
3. 참고문헌
김진욱, 이병래, 곽덕훈(2016). 운영체제. 한국방송통신대학교출판문화원.
조성호(2018). 쉽게 배우는 운영체제. 한빛아카데미.
정준석(2017). 리룩스의 신 : 우분투 리눅스 입문편. 로드북.
윤지현(2010). 키워드로 풀어본 컴퓨터 구조. 이담북스.
https://ubuntu.com/
처음에는 프로세스 A만 도착했으므로 A를 디스패치하여 실행시킨다. 1만큼 시간이 경과된 후에도 준비 큐에는 A만 있으므로 A를 계속 실행시킨다. 2의 시간이 경과된 후 B가 도착한다. 이때 프로세스 별 실행시간 추정치는 A는 5이고 B는 4이다. 따라서 B를 시간 1만큼 실행시킨다. 새로 도착한 프로세스가 아직 없으므로 B의 실행시간 추정치가 여전히 가장 짧으므로 B를 계속 실행시킨다. 시간 4 경과 후 C가 도착한다. 이때 프로세스별 실행시간 추정치는 A 5, B 2, C 1이므로 C를 디스패치하여 실행시킨다.
C가 종료된 후 즉, 5의 시간이 경과된 때에 D가 도착한다. 이때 실행시간 추정치가 가장 짧은 프로세스는 B의 2이다. 따라서 B를 실행시킨다. B가 종료될 때까지 새로 도착한 프로세스는 없으므로, D의 3이 가장 짧은 실행시간 추정치이므로 D를 디스패치하여 시간 9까지 실행시킨다. 시간 9가 경과된 후에 새로운 프로세스 E가 도착한다. 이때 남아 있는 실행시간의 추정치가 가장 짧은 프로세스는 D의 1이다. 따라서 D를 완료한다.
D가 완료된 시점 즉, 시간 10이 경과된 후 남아 있는 프로세스 중 실행시간 추정치가 가장 짧은 것은 E의 2이다. 따라서 E를 디스패치하여 실행시킨다. 새로운 프로세스가 더 이상 없으므로 E를 계속 실행시켜 완료한다. E가 종료된 후에는 A만 남아 있으므로 A를 실행하고 종료한다.
A
A
B
B
C
B
B
D
D
D
E
E
A
A
A
A
A
대기시간은 프로세스의 수행이 완료될 때까지 준비 큐에서 기다린 시간의 합이다. 따라서 프로세스 A는 시간 2부터 12사이가 되어 대기시간은 12 - 2 = 10이 된다. 프로세스 B의 대기시간은 시간 4부터 5사이 즉, 5 - 4 = 1이다. 프로세스 C의 대기시간은 도착 후 바로 종료될 때까지 실행되었으므로 0이다. 프로세스 D의 대기시간은 시간 5부터 7 사이이므로 7 -5 = 2이다. 프로세스 E의 대기시간은 시간 9에서 시작해 10 사이이므로 10 - 9 = 1이다.
프로세스
A
B
C
D
E
대기시간
10
1
0
2
1
따라서
3. 참고문헌
김진욱, 이병래, 곽덕훈(2016). 운영체제. 한국방송통신대학교출판문화원.
조성호(2018). 쉽게 배우는 운영체제. 한빛아카데미.
정준석(2017). 리룩스의 신 : 우분투 리눅스 입문편. 로드북.
윤지현(2010). 키워드로 풀어본 컴퓨터 구조. 이담북스.
https://ubuntu.com/
추천자료
SJF 알고리즘
C로 만든 프로세스 스케줄링 시뮬레이터(FCFS, SJF, SRT, RR) 코드 및 자료
C언어로 구현한 CPU 스케줄링 알고리즘 시뮬레이터(SJF, SRT,MFQ)
운영체제의 기억장치 관리전략 및 스케줄링 정책
2018년 1학기 운영체제 중간시험과제물 공통(비선점 스케줄링 정책과 선점 스케줄링 정책)
2019년 1학기 운영체제 중간시험과제물 공통(프로세스의 개념과 다섯가지 상태 등)
2020년 1학기 운영체제 중간시험과제물 공통(SJF 스케줄링, SRT 스케줄링)
2020학년도 1학기 운영체제 대체과제 - 참조용
2021년 1학기 운영체제 중간시험과제물 공통(운영체제의 역할, FCFS, RR)
소개글