목차
운영체제 2025학년도 1학기 방송통신대 중간과제물
1. 교재와 강의를 기준으로 다음에 대해 답하시오.
(1) 운영체제의 대표적인 네 가지 유형
(2) 쓰레드와 프로세스 정보 관리 문제
2. 5개 프로세스의 프로세스별 도착시각과 필요한 CPU 사이클이 아래 표와 같을 때, 다음에 대해 답하시오. 단, 모든 답안은 근거(과정에 대한 설명, 계산식 등)가 함께 제시되어야 한다.
(1) FCFS 스케줄링 수행 과정 및 결과
(2) HRN 스케줄링 수행 과정 및 결과
(3) HRN 결과 기반 대기시간 및 평균 대기시간
3. 참고문헌
1. 교재와 강의를 기준으로 다음에 대해 답하시오.
(1) 운영체제의 대표적인 네 가지 유형
(2) 쓰레드와 프로세스 정보 관리 문제
2. 5개 프로세스의 프로세스별 도착시각과 필요한 CPU 사이클이 아래 표와 같을 때, 다음에 대해 답하시오. 단, 모든 답안은 근거(과정에 대한 설명, 계산식 등)가 함께 제시되어야 한다.
(1) FCFS 스케줄링 수행 과정 및 결과
(2) HRN 스케줄링 수행 과정 및 결과
(3) HRN 결과 기반 대기시간 및 평균 대기시간
3. 참고문헌
본문내용
잘못된 메모리 참조로 인해 오류가 발생했을 때, 해당 쓰레드만 종료되고 나머지 쓰레드는 정상적으로 동작을 계속할 수 있도록 설계하는 것이다. 이러한 보호 기법은 특히 실시간 시스템이나 안전이 중요한 소프트웨어에서 필수적인 요소이다.
2. 5개 프로세스의 프로세스별 도착시각과 필요한 CPU 사이클이 아래 표와 같을 때, 다음에 대해 답하시오. 단, 모든 답안은 근거(과정에 대한 설명, 계산식 등)가 함께 제시되어야 한다.
(1) FCFS 스케줄링 수행 과정 및 결과
FCFS(First Come, First Served) 스케줄링은 이름 그대로 프로세스가 CPU에 도착한 순서대로 실행되는 방식이다. 이 알고리즘은 선입선출(First-In-First-Out) 원칙을 따르며, 가장 먼저 도착한 프로세스가 가장 먼저 실행된다. 스케줄링 구조가 매우 단순하고 구현이 쉬워 운영체제 초창기부터 많이 사용되었다.
그러나 이 방식의 가장 큰 단점은 비선점형(non-preemptive)이라는 점이다. 즉, 한 번 CPU를 할당받은 프로세스는 자신의 작업을 모두 완료할 때까지 CPU를 독점하게 된다. 이로 인해, 실행 시간이 긴 프로세스가 먼저 도착한 경우 뒤따르는 짧은 프로세스들이 불필요하게 오랜 시간을 대기하게 되는 현상이 발생한다. 이를 콘보이 효과(convoy effect)라고 부른다.
시뮬레이션 조건
프로세스 목록: A, B, C, D, E
도착 시각: A=1, B=3, C=4, D=5, E=6
CPU 버스트(실행 시간): A=1, B=3, C=1, D=4, E=3
■ Gantt 차트 (FCFS)
■ 프로세스별 대기시간
프로세스 A: 대기시간 0프로세스 B: 대기시간 0프로세스 C: 대기시간 2프로세스 D: 대기시간 2프로세스 E: 대기시간 5
프로세스
도착 시간
시작 시간
완료 시간
CPU 버스트
대기 시간
A
1
1
2
1
0
B
3
3
6
3
0
C
4
6
7
1
2
D
5
7
11
4
2
E
6
11
14
3
5
■ 평균 대기시간 계산
위와 같이 시뮬레이션에서는 총 5개의 프로세스(A~E)가 주어졌고, 각 프로세스의 도착 시각과 실행 시간(CPU 버스트)을 기준으로 FCFS 방식으로 순차적으로 실행되었다. 시간 흐름에 따라 Gantt 차트를 구성하고, 각 프로세스의 시작 시각과 도착 시각의 차이를 통해 대기시간을 산출하였다. 이를 바탕으로 평균 대기시간을 계산한 결과, 전체 평균 대기시간은 1.8 단위 시간으로 도출되었다.
전체 대기시간 합계 = 0 + 0 + 2 + 2 + 5 = 9평균 대기시간 = 전체 대기시간의 합 ÷ 프로세스 수 = 9 ÷ 5 = 1.8 단위 시간
(2) HRN 스케줄링 수행 과정 및 결과
HRN(Highest Response Ratio Next) 스케줄링은 프로세스의 대기시간과 서비스시간(CPU 버스트)을 종합적으로 고려하여 다음에 실행할 프로세스를 결정하는 비선점형 스케줄링 기법이다. HRN의 핵심은 프로세스의 응답률(Response Ratio)을 계산하여, 그 값이 가장 높은 프로세스를 우선 실행하는 방식이다.
■ 응답률 계산 공식
응답률 = (대기시간 + 서비스시간) ÷ 서비스시간 = 1 + (대기시간 ÷ 서비스시간)
이 방식은 특히 실행 시간이 긴 프로세스가 지나치게 오래 대기하지 않도록 공정성을 확보하는 데 유리하다. 대기시간이 길어질수록 응답률이 높아지므로, 짧은 프로세스들이 먼저 처리된 이후에는 긴 프로세스도 자연스럽게 CPU를 할당받게 된다. 즉, 짧은 프로세스 우선 전략(SJF)의 단점을 보완할 수 있는 기법이다.
이번 시뮬레이션에서는 시간 단위로 각 프로세스의 도착 여부를 확인하고, 그 시점에서 실행 가능한 프로세스들의 응답률을 계산하였다. 계산된 응답률 값 중 가장 높은 값을 갖는 프로세스를 선택하여 실행함으로써, 전체 스케줄링 순서를 결정하였다. 그 결과 HRN 방식은 FCFS와 달리 중간에 짧은 작업인 프로세스 C를 우선 처리하였으며, 마지막에는 대기시간이 길어진 프로세스 E를 가장 높은 응답률을 기준으로 실행하였다. 이러한 전략을 통해 효율적이고 균형 잡힌 실행 순서를 구성할 수 있었다.
■ Gantt 차트 (HRN)
(3) HRN 결과 기반 대기시간 및 평균 대기시간
HRN 방식으로 프로세스들을 실행한 결과, 각 프로세스의 대기시간은 해당 프로세스가 실제 실행을 시작한 시점에서 도착 시점을 뺀 값으로 계산할 수 있다. 이를 바탕으로 각 프로세스의 개별 대기시간을 도출하고, 모든 프로세스의 대기시간을 더한 후, 프로세스 수로 나누어 평균 대기시간을 산출하였다.
이번 사례에서는 A~E 총 5개의 프로세스에 대해 HRN 스케줄링을 적용하였고, 그 결과 다음과 같은 대기시간이 발생하였다:
프로세스 A: 0단위 시간
프로세스 B: 2단위 시간
프로세스 C: 1단위 시간
프로세스 D: 3단위 시간
프로세스 E: 6단위 시간
프로세스
도착 시간
시작 시간
완료 시간
CPU 버스트
대기 시간
응답률
A
1
1
2
1
0
1
B
3
3
8
3
2
1.67
C
4
5
6
1
1
2
D
5
8
12
4
3
1.75
E
6
12
15
3
6
3
■ 평균 대기시간 계산
평균 대기시간 계산
전체 대기시간 합계: 0 + 2 + 1 + 3 + 6 = 12
평균 대기시간 = 전체 대기시간의 합 ÷ 프로세스 수
평균 대기시간 = 12 ÷ 5 = 2.4 단위 시간
이처럼 HRN 스케줄링에서는 대기시간이 지나치게 짧거나 지나치게 길지 않도록 균형 잡힌 분배가 이루어졌음을 확인할 수 있다. 각 프로세스의 대기시간을 모두 더하면 총 12단위 시간이 되며, 이를 5개의 프로세스로 나누면 평균 대기시간은 2.4 단위 시간으로 계산된다.
3. 참고문헌
김진욱, 이인복(2023). 운영체제. 한국방송통신대학교출판문화원.
강성훈, 김형주, 윤종록. (2021). 운영체제론. 한빛아카데미.
정재화. (2020). 시스템 프로그래밍과 운영체제. 생능출판.
황기태. (2023). 컴퓨터 구조 및 운영체제. 교문사.
김윤명, 윤성훈. (2022). 클라우드 컴퓨팅과 운영체제의 이해. 이한출판사.
정민철. (2021). 멀티코어 프로그래밍과 병렬처리 시스템. 인피니티북스.
2. 5개 프로세스의 프로세스별 도착시각과 필요한 CPU 사이클이 아래 표와 같을 때, 다음에 대해 답하시오. 단, 모든 답안은 근거(과정에 대한 설명, 계산식 등)가 함께 제시되어야 한다.
(1) FCFS 스케줄링 수행 과정 및 결과
FCFS(First Come, First Served) 스케줄링은 이름 그대로 프로세스가 CPU에 도착한 순서대로 실행되는 방식이다. 이 알고리즘은 선입선출(First-In-First-Out) 원칙을 따르며, 가장 먼저 도착한 프로세스가 가장 먼저 실행된다. 스케줄링 구조가 매우 단순하고 구현이 쉬워 운영체제 초창기부터 많이 사용되었다.
그러나 이 방식의 가장 큰 단점은 비선점형(non-preemptive)이라는 점이다. 즉, 한 번 CPU를 할당받은 프로세스는 자신의 작업을 모두 완료할 때까지 CPU를 독점하게 된다. 이로 인해, 실행 시간이 긴 프로세스가 먼저 도착한 경우 뒤따르는 짧은 프로세스들이 불필요하게 오랜 시간을 대기하게 되는 현상이 발생한다. 이를 콘보이 효과(convoy effect)라고 부른다.
시뮬레이션 조건
프로세스 목록: A, B, C, D, E
도착 시각: A=1, B=3, C=4, D=5, E=6
CPU 버스트(실행 시간): A=1, B=3, C=1, D=4, E=3
■ Gantt 차트 (FCFS)
■ 프로세스별 대기시간
프로세스 A: 대기시간 0프로세스 B: 대기시간 0프로세스 C: 대기시간 2프로세스 D: 대기시간 2프로세스 E: 대기시간 5
프로세스
도착 시간
시작 시간
완료 시간
CPU 버스트
대기 시간
A
1
1
2
1
0
B
3
3
6
3
0
C
4
6
7
1
2
D
5
7
11
4
2
E
6
11
14
3
5
■ 평균 대기시간 계산
위와 같이 시뮬레이션에서는 총 5개의 프로세스(A~E)가 주어졌고, 각 프로세스의 도착 시각과 실행 시간(CPU 버스트)을 기준으로 FCFS 방식으로 순차적으로 실행되었다. 시간 흐름에 따라 Gantt 차트를 구성하고, 각 프로세스의 시작 시각과 도착 시각의 차이를 통해 대기시간을 산출하였다. 이를 바탕으로 평균 대기시간을 계산한 결과, 전체 평균 대기시간은 1.8 단위 시간으로 도출되었다.
전체 대기시간 합계 = 0 + 0 + 2 + 2 + 5 = 9평균 대기시간 = 전체 대기시간의 합 ÷ 프로세스 수 = 9 ÷ 5 = 1.8 단위 시간
(2) HRN 스케줄링 수행 과정 및 결과
HRN(Highest Response Ratio Next) 스케줄링은 프로세스의 대기시간과 서비스시간(CPU 버스트)을 종합적으로 고려하여 다음에 실행할 프로세스를 결정하는 비선점형 스케줄링 기법이다. HRN의 핵심은 프로세스의 응답률(Response Ratio)을 계산하여, 그 값이 가장 높은 프로세스를 우선 실행하는 방식이다.
■ 응답률 계산 공식
응답률 = (대기시간 + 서비스시간) ÷ 서비스시간 = 1 + (대기시간 ÷ 서비스시간)
이 방식은 특히 실행 시간이 긴 프로세스가 지나치게 오래 대기하지 않도록 공정성을 확보하는 데 유리하다. 대기시간이 길어질수록 응답률이 높아지므로, 짧은 프로세스들이 먼저 처리된 이후에는 긴 프로세스도 자연스럽게 CPU를 할당받게 된다. 즉, 짧은 프로세스 우선 전략(SJF)의 단점을 보완할 수 있는 기법이다.
이번 시뮬레이션에서는 시간 단위로 각 프로세스의 도착 여부를 확인하고, 그 시점에서 실행 가능한 프로세스들의 응답률을 계산하였다. 계산된 응답률 값 중 가장 높은 값을 갖는 프로세스를 선택하여 실행함으로써, 전체 스케줄링 순서를 결정하였다. 그 결과 HRN 방식은 FCFS와 달리 중간에 짧은 작업인 프로세스 C를 우선 처리하였으며, 마지막에는 대기시간이 길어진 프로세스 E를 가장 높은 응답률을 기준으로 실행하였다. 이러한 전략을 통해 효율적이고 균형 잡힌 실행 순서를 구성할 수 있었다.
■ Gantt 차트 (HRN)
(3) HRN 결과 기반 대기시간 및 평균 대기시간
HRN 방식으로 프로세스들을 실행한 결과, 각 프로세스의 대기시간은 해당 프로세스가 실제 실행을 시작한 시점에서 도착 시점을 뺀 값으로 계산할 수 있다. 이를 바탕으로 각 프로세스의 개별 대기시간을 도출하고, 모든 프로세스의 대기시간을 더한 후, 프로세스 수로 나누어 평균 대기시간을 산출하였다.
이번 사례에서는 A~E 총 5개의 프로세스에 대해 HRN 스케줄링을 적용하였고, 그 결과 다음과 같은 대기시간이 발생하였다:
프로세스 A: 0단위 시간
프로세스 B: 2단위 시간
프로세스 C: 1단위 시간
프로세스 D: 3단위 시간
프로세스 E: 6단위 시간
프로세스
도착 시간
시작 시간
완료 시간
CPU 버스트
대기 시간
응답률
A
1
1
2
1
0
1
B
3
3
8
3
2
1.67
C
4
5
6
1
1
2
D
5
8
12
4
3
1.75
E
6
12
15
3
6
3
■ 평균 대기시간 계산
평균 대기시간 계산
전체 대기시간 합계: 0 + 2 + 1 + 3 + 6 = 12
평균 대기시간 = 전체 대기시간의 합 ÷ 프로세스 수
평균 대기시간 = 12 ÷ 5 = 2.4 단위 시간
이처럼 HRN 스케줄링에서는 대기시간이 지나치게 짧거나 지나치게 길지 않도록 균형 잡힌 분배가 이루어졌음을 확인할 수 있다. 각 프로세스의 대기시간을 모두 더하면 총 12단위 시간이 되며, 이를 5개의 프로세스로 나누면 평균 대기시간은 2.4 단위 시간으로 계산된다.
3. 참고문헌
김진욱, 이인복(2023). 운영체제. 한국방송통신대학교출판문화원.
강성훈, 김형주, 윤종록. (2021). 운영체제론. 한빛아카데미.
정재화. (2020). 시스템 프로그래밍과 운영체제. 생능출판.
황기태. (2023). 컴퓨터 구조 및 운영체제. 교문사.
김윤명, 윤성훈. (2022). 클라우드 컴퓨팅과 운영체제의 이해. 이한출판사.
정민철. (2021). 멀티코어 프로그래밍과 병렬처리 시스템. 인피니티북스.
추천자료
경영학원론 2025학년도 1학기 방송통신대 중간과제물) 1.유능한 경영자(경영층)는 기업의 성...
사회문제론 2025학년도 1학기 방송통신대 중간과제물) 독후감 - 김재형(2021) 질병, 낙인 무...
[소설창작론 2025학년도 1학기 방송통신대 중간과제물] 최근에 경험한 가까운 사람의 행동(결...
[성인학습및상담론 2025학년도 1학기 방송통신대 중간과제물] 행동주의 학습이론, 인본주의 ...
[청소년인성교육 2025학년도 1학기 방송통신대 중간과제물) 청소년인성교육 교재 6장과 동영...
통계조사방법론 2025학년도 1학기 방송통신대 중간과제물- 고등학생을 대상으로 스마트폰 사...
[전략적간호관리 2025학년도 1학기 방송통신대 중간과제물- 업무위임 또는 권한위임과 관련하...
운영체제 2025년 1학기 방송통신대 중간과제물)운영체제의 대표적인 네 가지 유형이무엇인지 ...
[경영분석 2025학년도 1학기 방송통신대 중간과제물) 자신이 관심있는 기업을 선정하여 의사...
소개글