進程與PCB


1、關於進程的執行順序

 有向無循環圖(DAG)

進程執行的特點

(1) 順序性
處理機的操作嚴格按程序規定順序執行
(2) 封閉性
程序一旦開始執行,其計算結果不受外界因素影響。
(3) 可再現性
程序執行只要初始條件一樣,不論如何停頓,重復執行多少次結果都一樣。

多個程序如果無序並發,得到的只能是混亂的執行結果,
多道程序運行,走走停停的可能順序有很多種,符合前趨圖的關系才是合理並發。

沒有任何干預下,會出現結果不可再現的並發,即錯誤的並發。

並發時的特征

1、間斷性(運行表現)
相互制約導致並發程序具有“執行——暫停——執行”這種間斷性的活動規律。
2、失去封閉性
共享資源,資源狀態由多道程序改變,程序運行失去封閉性。即程序運行受其他程序的影響。
3、結果不可再現性
結果不確定,程序執行將沒有任何意義。

程序:程序段+數據段

進程實體:程序段+數據段+PCB   並發時用於程序控制和資源管理的各種信息。

2、進程

進程就是用於描述、控制程序在內存中並發運行的東東。

進程是進程實體的運行過程,是系統進行資源分配和調度的一個獨立單位。

結構性特征,進程的根本——PCB
動態性
進程實質上是進程實體的一次有生命期的執行過程。程序只是靜態的一組有序指令。
進程最基本特征
並發性
多個進程實體同存於內存中,在一段時間內同時運行。
有PCB的程序才能並發。
獨立性
異步性

進程的基本狀態

(1)就緒狀態(Ready)
(2)運行狀態(Running)
(3)阻塞狀態(Blocked)

3、PCB

系統運行中有若干個程序的PCB,它們常駐內存的PCB區。
采用的數據結構:PCB結構體,PCB鏈表或隊列

鏈接方式
同一狀態的PCB,依靠鏈接指針鏈接成隊列。就緒隊列;若干個阻塞隊列;空白隊列(PCB區的空PCB塊)
索引方式
同狀態的PCB同樣集中記錄,但以索引表的方式記錄PCB的地址。用專門的單元記錄各索引表的首地址。

鏈接方式

索引方式

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM