라운드 로빈 스케줄링은 각 프로세스에 일정 시간(타임 슬라이스)을 할당하고, 할당된 시간 내에 완료되지 않으면 준비 상태 큐의 맨 뒤로 보내는 방식입니다. 1. **실행 순서 및 완료 시간 계산** * **타임 슬라이스(Time Slice)**: 4초 * **프로세스 A**: 실행 시간 17초 * **프로세스 B**: 실행 시간 4초 * **프로세스 C**: 실행 시간 5초 | 시간(초) | 실행 프로세스 | 남은 실행 시간 | | :--- | :--- | :--- | | 0 ~ 4 | A | A: 13 | | 4 ~ 8 | B | B: 0 (완료) | | 8 ~ 12 | C | C: 1 | | 12 ~ 16 | A | A: 9 | | 16 ~ 17 | C | C: 0 (완료) | | 17 ~ 21 | A | A: 5 | | 21 ~ 25 | A | A: 1 | | 25 ~ 26 | A | A: 0 (완료) | 2. **프로세스별 반환 시간(Turnaround Time) 계산** * 반환 시간 = **완료 시간 - 도착 시간**. (모든 프로세스는 0초에 도착했다고 가정) * **프로세스 A**의 완료 시간: **26초** * **프로세스 B**의 완료 시간: **8초** * **프로세스 C**의 완료 시간: **17초** 3. **평균 반환 시간 계산** * 평균 반환 시간 = (A 반환 시간 + B 반환 시간 + C 반환 시간) / 3 * \(\frac{26 + 8 + 17}{3} = \frac{51}{3} = 17\) 따라서 평균 반환 시간은 17초입니다.