處理器排程

2021-08-20 22:09:24 字數 790 閱讀 2564

處理器排程演算法設計從以下幾個方面著手:

資源利用率、吞吐率、公平性、響應時間、周轉時間、截止時間的保證、優先權原則等等。

cpu利用率 = cpu有效工作時間 / cpu總的執行時間

cpu總執行時間 = cpu有效工作時間+cpu空閒等待時間

吞吐率:單位時間內cpu處理的作業數

公平性:確保程序不會出現餓死現象,即某程序一直在等待,當得到資源時,程序已經沒有執行的實際意義。

1、高階排程

主要有作業排程、長程排程。

高階排程發生在新程序的建立中,它確定乙個程序能否被建立,或者能否被置成就緒狀態

2、中級排程

主要有記憶體排程,程序在記憶體和外村間的對換。

反映到程序狀態上就是程序的掛起和解除掛起狀態,其根據系統的當前負荷情況決定停留在主存中的程序數。

3、低階排程

決定哪個就緒程序占用cpu,是面向程序/執行緒的排程

三種排程有可以通用的演算法:

fcfs先來先服務演算法:顧名思義,非剝奪式演算法。

簡單易實現,但效率不高。

sjf短作業優先演算法,非剝奪演算法。各個作業到達時間不一致

實現開銷大,需預知作業長短並排序,且會使得長作業出現飢餓現象甚至餓死。

srtf最短剩餘時間優先演算法,剝奪式演算法,其是對sjf演算法的改造。

hrrf高響應比排程演算法:

hrrf效能介於fcfs和sjf之間。

處理器排程

1 cpu排程的相關概念 a.cpu排程 其任務是控制 協調程序對cpu的競爭 即按一定的排程演算法從就緒佇列中選擇乙個程序,把cpu的使用權交給被選中的程序 如果沒有就緒程序,系統會安排乙個系統空閒程序或idle程序 b.cpu要解決的三個問題 cpu排程的時機 就緒佇列的改變引發了重新排程 事件...

處理器排程

處理器排程的目標是以滿足系統目標 如響應時間 吞吐率 處理器效率 的方法,把程序分配到乙個或多個處理器中執行。處理器排程有三個層次 長程排程 又稱高階排程,作業排程,其決定是否能加入待執行的程序池中 中程排程 又稱中級排程,平衡負載排程,其決定加入部分或全部在記憶體中的程序集合中 短程排程 又稱低階...

處理器排程

1 高階排程 也稱作業排程或者長程排程。根據作業排程演算法選擇外存上處於後備佇列中的某些作業調入記憶體,為它們分配必要的資源 建立相關程序。2 中級排程 也稱平衡排程或者中程排程。涉及程序的內外存間的排程,當主存資源緊張將暫不執行的程序調至外存,程序 掛起 狀態,當程序又具備執行條件且主存資源又空閒...