進程管理(2)

一、進程與程序

進程是對程序進行管理的程序;

進程的特徵:
- 動態性;
- 併發性;
- 獨立性;
- 異步性;

進程和程序的區別和聯繫
- 進程是動態的,程序是靜態的;
- 進程具有併發執行的特徵,而程序沒有;(各進程的執行是獨立 的,執行速度是異步)
- 進程是競爭計算機系統資源的基本單位;
- 不同的進程可以包含同一個程序,但是要求程序所對應的數據集不同。

作業和進程的區別與聯繫
●作業是用戶要求計算機所作工作的集合。進程是已提交完畢程序的執行過程,是資源分配的基本單位。
●作業是用戶向計算機提交任務實體。而進程則是完成用戶任務的執行實體,是向系統申請分配資源的基本單位。被創建任一進程,總有相應的部分存在於內存。
●一個作業可由多個進程組成,至少由一個進程組成,但反過來不成立。
●作業的概念主要用在批處理系統中。而進程的概念則用在所有的多道系統中。

進程控制塊
PCB記錄了進程的狀態。
(包含了有關進程的描述信息,控制信息以及資源信息)
系統根據PCB對進程進行控制。
一個進程的PCB結構都是全部或者部分常駐內存。

(補充:進程中的程序和數據在現代的操作系統中,這兩部分放在外存中,需要的時候在調至內存)

二、進程的基本狀態
就緒,阻塞,執行
就緒狀態:已經擁有除CPU以外的所有必要資源的一種狀態
就緒隊列:一個系統中處於就緒狀態的進程可能有多個,通常將他們排成一個隊列。
(隊列的特徵是先進先出。)
執行狀態:進程正在執行的狀態。
阻塞狀態:正在執行的進程在發生某種事件之後暫時無法繼續執行而進入的一種狀態,進入阻塞隊列。有執行資格,沒有執行權。(導致進程阻塞的典型事件:請求I/O;申請緩衝空間)
這裏寫圖片描述

三、進程狀態的拓展與轉換
創建狀態(就緒之前的狀態,也叫新態)
終止狀態(撤銷PCB,將PCB清零,並將PCB空間返還給系統)
掛起狀態(暫時被淘汰出內存的進程。用戶的請求,父進程請求,負荷調節的需要,操作系統的需要等)

四、進程的七種狀態
1、新態——進程創建PCB,沒有分配資源
2、就緒態——等待得到CPU執行權的狀態
3、運行態——擁有CPU的執行權,正在執行的狀態
4、阻塞態——失去CPU的執行權,失去資源
5、掛起態——因某事件不滿足退出CPU,也未結束,阻塞緩衝區滿,臨時掛起的狀態
6、撤銷態——一個進程正常或異常結束,從CPU或就緒列移出
7、終止態——撤銷進程PCB,釋放資源

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章