作業系統-行程管理作業

1.請說明行程與程式的差異

(1)行程是主動的個體,程式是被動的個體

(2)行程是暫時的,程式是長存的。

(3)行程與程式的組成內容不同。

2.請說明在哪些情況下會產生新行程

(1)使用者登入

(2)使用者執行某個程式

(3)請求系統提供服務

(4)由現有行程產生

3.請說明何謂內文切換

當CPU的使用權由一個行程切換成另一個行程時,作業系統必須將行程的相關資訊儲存在該行程的行程控制區段中,並且將另一個行程的行程控制區段載入系統中,以便將執行環境復原為後者當初被中斷時的狀態-這個儲存與載入的動作,就稱為內文切換(context switch)

4.內文切換對系統而言是額外的負擔,請問有哪些因素會影響內文切換所花的時間。

需要拷貝的暫存器數目、記憶體速度、硬體是否提供特殊指令。

5.請解釋CPU暴衝、I/O暴衝與CPU為主、I/O為主行程之間的關係。

cpu暴衝是指持續的使用CPU;I/O暴衝是專注在I/O的運算。

在大量的CPU運算中,包含較長的CPU暴衝時間,是為以CPU為主;包含較多很短的CPU暴衝時間,是為I/O為主。

6.有一組行程如下:
到達時間皆為0,順序為P1、P2、P3、P4。請分別使用FCFS與不可搶先的SJF排程法,求出平均等待時間。

行程 CPU暴衝時間(毫秒)
P1 15
P2 7
P3 4
P4 10

平均等待時間計算:

FCFS:(0+15+22+26)/4=15.75

SJF:(0+4+11+21)/4=9

7.假設有四個行程P1、P2、P3和P4,都在時間0到達,順序為P1、P2、P3、P4,其CPU暴衝時間如下:

行程 CPU暴衝時間(毫秒) 優先權
P1 6 2
P2 5 0
P3 7 3
P4 4 1
a. 當使用FCFS、SJF、不可搶先的優先權(數字愈小,優先權愈高)和RR(時間切片=3)排程法時,行程的執行順序為何?請畫出與課文類似的圖。

b.所有行程的平均等待時間為何?

FCFS:(0+6+11+18)/4=8.75

SJF:(0+4+9+15)/4=7

PS:(0+5+9+15)/4=7.25

RR:[(12-3)+(15-3)+(21-6)+(20-3)]/4=13.25

8.假設有四個行程P1、P2、P3、P4和P5,都在時間0到達,順序為P1、P2、P3、P4、P5,其CPU暴衝時間如下:

行程 CPU暴衝時間(毫秒) 優先權
P1 10 3
P2 3 1
P3 2 3
P4 1 4
P5 5 2
a.當使用FCFS、SJF、不可搶先的優先權(數字愈小,優先權愈高)和RR(時間切片=3,依照抵達順序執行)排程法時,行程的執行順序為何,請畫出與課文類似的圖。

b.在上述各種演算法中,各行程的平均等待時間為何?哪個演算法的平均等待時間最短?

FCFS:(0+10+13+15+16)/5=10.8

SJF:(0+1+3+6+11)/5=4.2

PS:(0+3+8+18+20)/5=9.8

RR:[(17-6)+3+6+8+(15-3)]/5=8

∵FCFS>PS>RR>SJF ∴SJF的平均等待時間最短。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步瞭解 Akismet 如何處理網站訪客的留言資料