程序控制塊(pcb)的結構
程序控制塊 pcb (process control block):
存放程序的管理和控制資訊的資料結構稱為程序控制塊。它是程序管理和控制的最重要的資料結構,每乙個程序均有乙個pcb,在建立程序時,建立pcb,伴隨程序執行的全過程,
直到程序撤消而撤消。
在不同的作業系統中對程序的控制和管理機制不同,pcb中的資訊多少也不一樣,通常pcb應包含如下一些資訊。
1、程序識別符號 name:
每個程序都必須有乙個唯一的識別符號,可以是字串,也可以是乙個數字。unix系統中就是乙個整型數。在程序建立時由系統賦予。
2、程序當前狀態 status:
說明程序當前所處的狀態。為了管理的方便,系統設計時會將相同的狀態的程序組成乙個佇列,如就緒程序佇列,等待程序則要根據等待的事件組成
多個等待佇列,如等待印表機佇列、等待磁碟i/o完成佇列等等。
3、程序相應的程式和資料位址,以便把pcb與其程式和資料聯絡起來。
4、程序資源清單。列出所擁有的除cpu外的資源記錄,如擁有的i/o裝置,開啟的檔案列表等。
5、程序優先順序 priority:
程序的優先順序反映程序的緊迫程式,通常由使用者指定和系統設定。unix系統採用使用者設定和系統計算相結合的方式確定程序的優先順序 。
6、cpu現場保護區 cpustatus:
當程序因某種原因不能繼續占用cpu時(等待印表機),釋放cpu,這時就要將cpu的各種狀態資訊保護起來,為將來再次得到處理機恢復cpu的各種狀
態,繼續執行。
7、程序同步與通訊機制 用於實現程序間互斥、同步和通訊所需的訊號量等。
8、程序所在佇列pcb的鏈結字 根據程序所處的現行狀態,程序相應的pcb參加到不同佇列中。pcb鏈結字指出該程序所在佇列中下乙個程序pcb的首位址。
9、與程序有關的其他資訊。 如程序記賬資訊,程序占用cpu的時間等。
程序控制塊 PCB 結構
一 程序控制塊 pcb 結構 程序控制塊 pcb 是系統為了管理程序設定的乙個專門的資料結構。系統用它來記錄程序的外部特徵,描述程序的運動變化過程。同時,系統可以利用pcb來控制和管理程序,所以說,pcb 程序控制塊 是系統感知程序存在的唯一標誌。linux系統的pcb包括很多引數,每個pcb約佔1...
程序控制塊(PCB)
為了描述和控制程序的執行,系統為每乙個程序定義了乙個資料結構 程序控制塊。它是程序實體的一部分,是作業系統中最重要的記錄型資料結構。或者說,os是根據pcb來對併發程式的程序進行控制和管理的。總而言之,pcb是程序存在的唯一標誌。程序控制塊中的資訊包括程序識別符號 處理機狀態 程序排程資訊 程序控制...
程序控制塊 PCB
程序控制塊是作業系統中最重要的資料結構,每個程序控制塊包含了作業系統在排程 資源分配 中斷處理 效能監控和分析所需的關於程序的所有資訊。程序控制塊資訊可以分為三類 程序標識資訊 處理器狀態資訊 程序控制資訊。程序識別符號主要包括 當前程序的識別符號 process id,pid 建立這個程序的父程序...