計算機操作系統學習筆記 | 進程
計算機操作系統學習筆記 | 進程
正如我們所知,一個進程是一個程序對某個數據集的執行過程,是分配資源的基本單位。
進程的靜態描述由3部分組成:進程控制塊 (Process Control Block, PCB) 、有關程序段和該程序段對其進行操作的數據結構集。而PCB(進程控制塊)包括了進程的相關描述信息、相關控制信息以及相關資源信息和運行狀態。我們常說的創建進程以及撤銷進程就是對進程控制塊的操作。
我們之前說了,進程控制塊描述了進程的基本信息以及運行狀態。其實在有些系統中,還包括有進程調度等待所使用的現場保護區。在線程并發執行時,因為操作系統的共享性,各進程共享計算機資源,這就導致各進程之間相互制約。所以在創建一個進程時,應該首先創建進程控制塊,之后才能根據進程控制塊中的信息對進程采取有效的管理和控制。當一個進程完成其功能后,進程控制塊會被釋放,進程也會被殺死。
下面介紹一下進程控制塊內的基本信息包含哪些信息:
描述信息:包括進程名或進程標識號、用戶名或用戶標識號、進程之間的家族關系。
控制信息:進程當前的狀態、進程的優先級、程序開始的地址、進程占有資源和利用資源的有關情況、進程與其他進程之間發生的信息交換情況。
資源管理信息:有關存儲器的信息、使用輸入輸出設備的信息以及文件系統的相關信息。
PCB中擁有的CPU現場保護結構:可存儲推出執行時的進程現場數據。
進程上下文的出現,是因為當一個進程執行到一半需要轉向執行另外一個進程時,或者出現中斷、等待或程序出錯時,需要保存CPU的所有寄存器中的值、進程的狀態以及堆棧上的內容。以便再次執行此進程時能夠恢復之前的狀態。
任務調度
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。