Notice
Recent Posts
Recent Comments
Link
250x250
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Tags
more
Archives
Today
Total
관리 메뉴

거인의 코딩일지

[정처산기_필기]Chapter01_응용SW 기초 기술 활용/04 본문

자격증/정처산기_필기

[정처산기_필기]Chapter01_응용SW 기초 기술 활용/04

코딩거인 2023. 5. 18. 17:29
728x90
RR(Round-Robin) 스케줄링 기법에서 시간 할당량에 대한 설명으로 옳지 않은것은??

- 시간 할당량이 너무 적으면 오버헤드의 발생이 적어진다.

라운드 로빈은 시간할당량이 너무 적으면 문맥교환이 자주 일어나서 오버헤드 발생이 많아지게 되고, 시간할당량이 너무 크면 FIFO 기법과 거의 같아 라운드 로빈 알고리즘 효과가 떨어진다!

 

여러 개의 큐를 두어 낮은 단계로 내려갈수록 프로세스의 시간 할당량을 크게하는 프로세스 스케줄링 방식은?

- MFQ(Multi - level Feedback Queue)

MLFQ(= MFQ) - 입출력 위주와 CPU 위주인 프로세스의 특성에 따라 큐마다 서로 다른CPU 시간 할당량을 부여
- FCFS(FIFO)와 라운드 로빈 스케줄링 기법을 혼합한 것으로, 새로운 프로세스는 높은 우선순위, 프로세스의 실행시간이 길어질수록 점점 낮은 순위 우선순위 큐로 이동하고 마지막 단계에는 라운드 로빈을 적용
- 여러개의 큐를 두어 낮은 단계로 내려갈수록 프로세스의 시간 할당량을 크게 하는 프로세스 스케줄링 방식 
SJF - 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간을 갖는 프로세스가 종료 시 까지 자원 점유
SRT - 가장 짧은 시간이 소요되는 프로세스를 먼저 수행, 남은 처리시간이 더 짧다고 판단되는 프로세스가 준비큐에 생기면 언제라도 프로세스가 선점됨
라운드 로빈
(Round Robin)
- 프로세스는 같은 크기의 CPU 시간을 할당(시간 할당량), 프로세스가 할당된 시간내에 처리 완료를 못하면 준비 큐 리스트의 가장 뒤로 보내지고, CPU는 대기중인 다음 프로세스로 넘어감
SJF(Shortest Job First) 스케줄링에서 작업 도착 시간과 CPU 사용시간은 다음 표와 같다!
모든 작업들의 평균 대기시간은 얼마인가?

작업 도착시간 CPU 사용시간
1 0 23
2 3 35
3 8 10

 

- 15

- SJF는 비선점 스케줄링 방식으로 프로세스가 도착하는 시점에 따라 그 당시 가장 작은 서비스 시간을 갖는 프로세스가 종료 시 까지 자원을 점유하는 방식!
- 따라서 평균 반환시간을 구하기 위해서는 우선적으로 종료시간을 그림을 그려서 구한다
- 종료시간을 구한 이후 반환시간과 대기시간을 구하고 평균 대기시간을 구한다!
프로세스 도착시간 서비스 시간
(실행시간)
종료시간 반환시간 대기시간
1 0 23 23 23(23-0) 0(23-23)
2 3 35 35 65(68-3) 30(65-35)
3 8 10 10 25(33-8) 15(25-10)
== 평균 대기시간 = (0+30+15) / 3 : 15

 

HRN 스케줄링 기법을 적용할 경우 우선순위가 가장 낮은 것은?

프로세스 실행시간 대기시간
A 10 50
B 20 40
C 50 10
D 30 30
 - C
-  HRN 스케줄링 기법의 우선순위는 '(대기시간 + 서비스 시간)/ 서비스 시간' 이며 우선순위의 점수가 높아야 가장 높은 우선순위가 된다.

A (50+10)/10 = 6 C (10+50)/50 = 1.2
B (40+20)/20 = 3 D (30+30)/30 = 2
  == 따라서 A의 우선순위가 가장 높고, C의 우선순위가 가장 낮다.

 

교착상태의 예방을 위하여 각 자원 유형에 일련 순서번호를 부여하는 것은 다음 중 어떤 교착상태 발생 조건을 제거하기 위한 것인가?

- 환형 대기 조건

환형 대기 조건은 2개이상의 프로세스간 자원의 점유와 대기가 하나의 원형을 구성한 상태이다.

 

교착상태(Dead Lock) 발생의 필요조건이 아닌것은?

- Preemption

교착상태 발생 조건
상점비환 - 상호배제(Mutual Exclusion)
- 점유와 대기(Hold & Wait)
- 비선점(Non Preemption)
- 환형대기(Circular Wait) 
상호 배제를 올바로 구현하기 위한 요구조건에 대한 설명으로 틀린것은?

- 2개이상의 프로세스들이 공유데이터에 접근하여 동시에 수행할 수 있어야 한다.

상호 배제는 프로세스가 자원을 배타적으로 점유하여 다른 프로세스가 그 자원(임계구역)을 사용할 수 없는 상태여야 한다.

 

728x90