課後習題 處理機排程與死鎖

2021-10-14 10:09:07 字數 2837 閱讀 4050

part a

高階排程與低階排程的主要任務是什麼,為什麼要引進中級排程?

高階排程又稱為作業排程,用於決定把外存後備佇列中的那些作業調入記憶體,為它們分配必要的資源,並建立程序

低階排程又稱為程序排程,用來決定就緒佇列中哪個程序先獲得處理機,並將處理機分配給選中的程序,然他投入執行

中級排程又稱為記憶體排程,目的是解決記憶體緊張的問題,提高記憶體利用率和系統的吞吐量

處理機排程演算法的共同目標是什麼?批處理系統的排程目標又是什麼?

共同目標:資源利用率,公平性,平衡性,策略強制執行

批處理的目標:希望時間周轉時間短,系統吞吐量高,處理機利用率高

分時目標:響應快,均衡性

實時目標:保證截止時間,可**性

何謂作業,作業步和作業流?

作業:不僅包含了通常的程式和資料,而且還應配有乙份作業說明書,系統根據這個進行控制

作業步:作業中的每乙個加工步驟

作業流:整個作業的過程

在什麼情況下需要使用作業控制塊jcb,其中包含了哪些內容?

當每個作業進入系統時,便由「作業註冊」程式為該作業建立乙個作業控制塊jcb

jcb包含:作業標識,使用者名稱,使用者賬號,作業型別,作業狀態,排程資訊,資源需要,資源使用情況等

在作業排程中應如何確定接納多少個作業和接納哪些作業?

根據系統規模,執行速度,作業大小以及能否獲得較好的系統效能等情況決定接納多少個作業

根據排程演算法決定接納哪些作業

為什麼要引入高響應比優先排程演算法?他們的優勢?

fcfs只考慮了作業等待時間,忽視了作業執行時間;sjf只考慮了作業執行時間,忽略了作業等待時間

高響應比既考慮了作業等待時間,也考慮了作業執行時間

說明低階排程的主要功能?

保護處理機的現場資訊;按某種演算法選取程序;把處理器分配給程序
在搶占排程的過程中,搶占的原則是什麼?

優先權原則,短程序優先原則,時間片原則
在選擇排程方式和排程演算法時,應遵循的原則是什麼?

作業需求,系統目標,排程效能,排程公平性
何為靜態和動態優先順序?確定靜態優先順序的依據?

靜態:在建立程序時確定的,在程序的整個執行過程期間保持不變;

依據程序的型別【系統》使用者】,程序對資源的需求【資源要求少》資源要求多】,使用者要求

動態:在建立程序之初,先賦予其乙個優先順序,然後其值隨程序的推進或等待時間的增加而改變,以便獲得更好的排程效能

試比較fcfs和sjf兩種程序排程演算法?

fcfs:先來先服務,不會出現飢餓,實現簡單,不利於i/o和短作業

sjf:短作業優先,會出現飢餓,不利於長作業和緊迫作業

在時間片輪轉法中,應如何確定時間片的大小?

一般確定為略大於一次典型的互動所需時間,使得大多數互動式程序能在乙個時間片內完成
通過乙個例子來說明通常的優先順序排程演算法為什麼不能適用於實時系統?

因為優先順序排程演算法沒辦法確保每個作業都在預定時間內完成,會出現飢餓等情況
為什麼說多級反饋佇列排程演算法能較好地滿足各方面使用者的需要?

因為能在規定第一佇列的時間片中略大於多數人機互動所需之處理時間
保證排程演算法是如何做到排程公平的?

跟蹤計算每個程序自建立以來已經執行的處理時間

計算每個程序應獲得的處理機時間【t/n,n個相同型別的程序】

計算程序獲得處理機時間的比例,即程序實際執行的處理時間和應獲得的處理機時間之比

比較各程序獲得處理機時間的比率

排程程式應選擇比率最低的程序將處理機分配給他,並讓該程序一直執行,直到超過最接近她的程序比率為止

公平分享排程演算法又是如何做到排程的公平性的?

使所有使用者能獲得相同的處理機時間或所要求的時間比例
為什麼實時os中,要求系統具有較強的處理能力?

因為實時os要求每個作業都要在保證時間內完成,並且又要滿足演算法排程的公平實現每個作業有相同的機率執行
按排程方式可將實時排程演算法分為哪幾種?

非搶占式和搶占式演算法
什麼是可重用性資源,什麼是可消耗資源?

可重用性資源:可供使用者重複使用多次的資源

可消耗性資源:臨時性資源,由程序動態建立的消耗型資源

為了破壞「請求和保持」條件而提出了兩種協議?

第一種協議:所有程序在執行前,必須一次性地申請其在整個執行過程中所需的全部資源【簡單,容易;但浪費且會飢餓】

第二種協議:允許乙個程序只獲得執行初期所需的資源後,便可以執行

何謂死鎖?產生死鎖的原因和必要條件是什麼?

死鎖:每乙個程序,都在等待另乙個死鎖程序所占有的資源

互斥條件,請求和保持條件,不可搶占條件,迴圈等待條件

解決死鎖問題的方法,哪種最容易實現?哪種方法使用資源利用率最高?

方法:預防死鎖,避免死鎖【系統安全狀態,銀行家演算法】,檢測死鎖【資源分配圖】,解除死鎖

防範程度依次遞減,資源利用率依次提高,阻塞頻率依此下降

預防死鎖的途徑?

破壞請求和保持,破壞不可搶占,破壞迴圈等待
part b

part c

處理機排程與死鎖

1.程序排程的功能 儲存處理機的現場資訊,按某種演算法選取程序,把處理器分配給程序 2 程序排程方式 非搶占方式 一旦把處理機分配給某程序後,不管它要執行多長時間,都一直讓它執行下去,決不會因為時鐘中斷等原因而搶占正在執行程序的處理機,也不允許 其它程序搶占已經分配給它的處理機。直至該程序完成,自願...

處理機排程與死鎖

1 非搶占方式 non preemptive mode 一旦處理機分配給某程序,該程序一直執行。決不允許其他程序搶占已分配執行程序的處理機。2 搶占方式 preemptive mode 允許排程程式根據某種原則,暫停某個正在執行的程序,將處理機重新分配給另一程序。程序排程方式比較 3 中級排程 in...

第三章處理機排程與死鎖 處理機排程

一 處理機排程的基本概念 作業進入系統駐留在外存的後備佇列上,再至調入記憶體執行完畢,可能要經歷下述 排程。又稱作業排程或長程排程 long term scheduling 接納排程 admission scheduling 主要在早期批處理階段,處理在外存上的作業。決定外存後備佇列中的哪些作業調入...