操作系統——進程切換

本文內容為個人理解,如果有理解不對的地方,請大家指正,謝謝!

1、理解進程的概念

進程就是運行中的程序+內存中的數據,也就是說,進程是個動態的概念,它不同於應用程序,是一個靜態的概念。只有應用程序運行起來了(操作系統給它分配了內存資源),我們才說操作系統啟動了該進程。

2、多進程理解

對於單核處理器,只有一個CPU,也就是說,在某一個時刻,操作系統中只有一個進程在使用CPU資源。多進程的意思是操作系統中同時跑著多個進程,只不過同一個時刻只有一個進程在佔用CPU,而其他的進程分別處於不同的狀態,分別保存在不同的進程隊列中,等待著被執行(進程狀態圖,稍後介紹)。

3、進程切換的意義

使系統CPU保持繁忙,使CPU的利用率高。

Advertisements

4、進程不同狀態

運行態:進程正在佔用著CPU

就緒態:得到了內存中的資源,等待分配CPU

阻塞態:等待內存中資源

5、進程切換過程

(1)保存現場,每個進程創建時,系統會給它創建一個進程式控制制塊(PCB),等進程要切換分時候,操作系統將該進程當前的運行狀態和數據都保存在PCB中,等到下次再次執行時,就會接著上次執行;

(2)切換PCB,完成PCB的切換就相當於完成了進程發的切換

Advertisements

你可能會喜歡