為什么要引入掛起狀態?該狀態有哪些性質?(為什么要引入掛起狀態)

博主:yunbaotangyunbaotang 2024-04-30 485 0條評論
摘要: 大家好,我是小豆豆,我來為大家解答以上問題。為什么要引入掛起狀態?該狀態有哪些性質?,為什么要引入掛起狀態很多人還不知道,現在讓我們一起來看看吧!1、操作系統為什么要引入掛起狀態?...

大家好,我是小豆豆,我來為大家解答以上問題。為什么要引入掛起狀態?該狀態有哪些性質?,為什么要引入掛起狀態很多人還不知道,現在讓我們一起來看看吧!

1、操作系統為什么要引入掛起狀態?掛起狀態涉及到中級調度,因為當內存中的某個程序需要大的內存空間來執行,但這時內存有沒有空余空間了,那么操作系統就回根據調度算法把一些進程放到外存中去,以騰出空間給正在執行的程序的數據和程序,所以引如了掛起狀態。

2、引起掛起狀態的原因有如下幾方面: (1)終端用戶的請求。

3、當終端用戶在自己的程序運行期間發現有可疑問題時,希望暫停使自己的程序靜止下來。

4、亦即,使正在執行的進程暫停執行;若此時用戶進程正處于就緒狀態而未執行,則該進程暫不接受調度,以便用戶研究其執行情況或對程序進行修改。

5、我們把這種靜止狀態成為“掛起狀態”。

6、 (2)父進程的請求。

7、有時父進程希望掛起自己的某個子進程,以便考察和修改子進程,或者協調各子進程間的活動。

8、 (3)負荷調節的需要。

9、當實時系統中的工作負荷較重,已可能影響到對實時任務的控制時,可由系統把一些不重要的進程掛起,以保證系統能正常運行。

10、 (4)操作系統的需要。

11、操作系統有時希望掛起某些進程,以便檢查運行中的資源使用情況或進行記賬。

12、 (5)對換的需要。

13、為了緩和內存緊張的情況,將內存中處于阻塞狀態的進程換至外存上。

本文到此講解完畢了,希望對大家有幫助。