作業系統 處理器排程

2021-08-28 19:04:05 字數 996 閱讀 8489

1、cpu資源的時分復用

程序切換:cpu資源的當前占用者切換。

處理器排程:

排程程式:挑選就緒程序的核心函式。

2、排程演算法

3、死鎖

死鎖是多個程序在爭奪資源的過程中造成的僵局。

例如:a和b程序都需要資源s1和s2,當a獲得了s1,b獲得了s2,但是兩個人都不釋放獲得的資源,但是也都不能執行,這就造成了死鎖。

產生死鎖原因:

①資源競爭:競爭非剝奪性資源(獲得後不能強行**的資源)、競爭臨時性資源(由乙個程序產生,被另乙個程序用後便無用的資源)

②程序間推進順序非法

產生死鎖的必要條件:

①互斥條件

②持有並等待條件

③非搶占條件

④迴圈等待條件

處理死鎖的方法:

①預防死鎖:

主要是破壞產生死鎖條件中的234 三個條件。但是可能會造成資源的浪費,吞吐量的降低。

②避免死鎖

避免死鎖和預防死鎖是不一樣的。預防死鎖是消除產生死鎖的條件,而避免死鎖是**會不會造成死鎖,如果**到會造成死鎖,那麼不進行接下來的操作。

最常見避免死鎖的方式是銀行家演算法:

銀行家演算法的基本思想:當乙個程序請求資源時,如果資源足夠,那麼試著把這資源分配給這個程序,**這個程序結束釋放資源,看剩下的資源是否能給多個程序中的其中乙個程序用,如此往復迴圈,看所有程序是否都能獲得資源,如果可以,那麼就是**成功,把資源分配給這個程序,如果**不成功,收回剛才分配的資源。

③檢測死鎖

檢測死鎖首先要有資源分配的圖,然後再簡化資源分配圖,如果資源分配圖不能簡化,那麼就是有死鎖。

④解除死鎖

如果檢測到了死鎖,那麼就要進行死鎖的解除。

死鎖的解除辦法有:剝奪資源、撤銷程序

4、程序間通訊:

作業系統 處理器管理

在自考之 我看 作業系統概論 部落格中,我對作業系統的知識進行了歸納和總結。這篇文章可以說是自己在第一次接觸作業系統的內容之後的總結。總體來說,它能夠幫助自己巨集觀把控這部分知識。何以見得?在軟體設計師考試中同樣會遇到這部分知識,感覺哪哪都熟悉,但是哪哪都提不起來。好在,我想起了自己當時的總結,看完...

現代作業系統 處理器(讀書筆記)

1 cpu工作週期 從記憶體中取出指令,解碼以確定其型別和運算元,接著執行。2 每個cpu都有一套可執行的專門指令集。3 cpu訪問記憶體取出指令的時間比執行指令花費的時間要久的多,所以所有的cpu內部都有儲存關鍵變數和臨時資料的暫存器。為什麼?4 某些指令的功能 從暫存器存入記憶體,或者從記憶體調...

作業系統原理 處理器排程

1 處理機按照層次被劃分為為 排程 排程按照頻率從高到低依次被命名為低階排程,中級排程和高階排程 低階排程 又稱為程序排程,此種排程頻率最高.也是最基本的排程。就是cpu不再執行當前程序,而是執行乙個就緒態的程序 中級排程 又稱為交換排程,這種排程就是將記憶體中暫時不用的程序移至外存.把外存等待的程...