作業系統 程序排程

2021-10-14 17:13:07 字數 629 閱讀 6621

在cpu分配資源的時候,我們需要考慮分配資源的規則,通過規則或者說演算法選擇乙個程序給處理機執行就是處理機排程,就像銀行排隊是先到者優先還是vip客戶優先。

排程的層級分為:高階、中級、低階。

狹義的程序排程只是選擇就緒佇列中的程序交給處理機執行,廣義的程序排程還包括程序切換。程序切換是乙個程序讓出處理機後,另乙個程序占用處理機的過程,先儲存當前程序的各種資料,再恢復下乙個程序的資料。過於頻繁的程序切換會降低系統效率,占用程序在程序執行上花費的時間。

需要排程的情況:

程序主動放棄cpu控制權:正常終止;出現異常;主動請求阻塞,如等待i/o。

程序被動放棄cpu控制權:時間片截止;出現更緊急的事務;出現優先順序更高的程序。

不能排程的情況:

複雜的中斷處理。

程序在核心程式臨界區。核心程式臨界區一般就是核心的某種資料結構,訪問時程序不能停留太長時間,否則會影響核心的其他操作。

原子操作,如執行原語程式時。

程序排程的方法:

非剝奪排程:只允許程序主動放棄cpu控制權,當更緊急的程序出現時,不會中斷當前執行緒

剝奪排程:當更緊急的程序出現時,中斷當前執行緒,執行緊急執行緒。

吞吐量:單位時間內完成作業的數量,總數量/總時間。

作業系統 程序排程

程序排程程序排程室作業系統必不可少的一種排程。因此在三種型別的os dos windows linux 都無一例外地配置了程序排程。此外它也是對系統效能影響最大的一種處理機排程。程序排程的任務 儲存處理機的現場資訊。在進行排程時首先需要儲存當前程序的處理機的現場資訊,如程式計數器 多個通用暫存器中的...

作業系統程序排程

華中農業大學 學生實驗報告 課程名稱 計算機作業系統 實驗名稱 程序排程 實驗型別 驗證 設計 綜合 創新 實驗目的 實驗目的 1 通過編寫程式實現程序或作業先來先服務 高優先權 按時間片輪轉排程演算法,使 學生進一步掌握程序排程的概念和演算法,加深對處理機分配的理解。2 了解程序 執行緒 的排程機...

作業系統 程序排程

對於單處理器系統,同一時間只有乙個程式可以執行 其他程序都應等待,直到cpu空閒並可排程為止。多道程式的目標是,始終允許某個程序執行以最大化cpu利用率。cpu的程序屬性 週期進行cpu執行和i o等待。程序在這兩個狀態之間不斷交替。程序執行從cpu執行開始,之後i o執行 接著另乙個cpu執行,接...