操作系統筆記(二、進程管理2.1進程描述與控制)

—————目錄—————①②③④⑤⑥⑦⑧⑨⑩
緒論加粗樣式
進程與調度 -》CPU
存儲管理 -》內存
設備管理 -》外設
文件管理 -》文件 -》外存
———————————
第二章 進程管理

2.1 進程描述與控制

2.1.1 進程概念與多進程併發執行
1、程序執行的特性?
①程序順序執行的特徵:順序性、封閉性、可再現性(一個程序再運行一次,還是這樣的)
②程序併發執行 : 間斷性、非封閉的、不可再現性
2、程序併發執行的條件?
兩個進程的讀寫之間不能有交集,一個進程讀了就要修改。不要出現A讀B寫、A寫B讀、A寫B寫
3、

進程的
特點 動態性、併發性、獨立性、異步性
結構 程序 + 數據 + PCB

4、

分派程序 dispatcher 把處理器分派給一個進程
程序計數器 那個程序執行到第幾條

2.1.2 進程狀態轉換
1、兩狀態
在這裏插入圖片描述
三狀態
在這裏插入圖片描述
五狀態
新建->就緒:OS接納新狀態進程
就緒->運行:有CPU資源了
運行->就緒:時間片用完了,或更高優先級的進來
運行->阻塞:進程需要等待某件事情發生,通常因爲進程需要的系統調用不能立即完成
阻塞->就緒:當阻塞進程等待的事件發生,I/O執行完了
運行->退出:執行完或者被取消
就緒->退出: 某些系統允許父進程在任何情況下都必須終止。若一個父進程終止,其子孫進程都必須終止

在這裏插入圖片描述
不同阻塞事件在不同阻塞隊列
在這裏插入圖片描述

執行 佔用CPU,現在正在執行的
就緒 準備執行的狀態
阻塞 等待某事件發生才執行的狀態
新狀態 進程已經創建,比如命名
退出 被執行完的進程還在但是沒用了,也叫僵死狀態
就緒掛起 把掛起解除,只要調入內存即可執行
阻塞掛起 把掛起解除,進入等待事件

對換技術、交換技術
O1把內存中暫時不能運行的進程,O2或暫時不用的數據和程序,交換到外村以騰出足夠的內存空間,把已具備運行條件的進程或進程所需要的數據和程序換到內存。
在這裏插入圖片描述
如果內存所有的進程都阻塞,爲了讓CPU忙起來,有了七狀態。有了掛起狀態的出現,處理機可調度執行的進程有兩種:新創建的進程、換入一個以前掛起的進程
掛起:
所以進程都在等待I/O,把阻塞進程換到磁盤中,叫掛起狀態,掛起進程釋放內存空間
被掛起進程的特徵:
①不能立即執行
②如果是阻塞事件被掛起,及時中途恢復也不能解除掛起
③使之掛起的進程:自身、父進程、OS
④只有掛其他的進程才能使之由掛起狀態轉換爲其他狀態。
在這裏插入圖片描述
新建 -> 掛起 :內存空間不夠,但是有其他資源可以創建進程。
運行->掛起 :
阻塞掛起 -> 就緒掛起 :阻塞接觸,就到就緒掛起了。阻塞狀態是CPU 像 磁盤控制器發送命令,從磁盤的哪個位置讀到內存哪個緩衝區,這是不能被掛的,掛走的是這個進程的用戶數據和程序。PCB就負責更新這些狀態信息

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