作業系統實驗一 處理器排程演算法的實現

2022-06-05 01:09:15 字數 1107 閱讀 6805

一、實驗目的

(1)加深對處理機排程的作用和工作原理的理解。

(2)進一步認識併發執行的實質。

二、實驗要求:

本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。

並完成實驗報告。

三、實驗內容:

在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態。

當就緒狀態程序個數大於處理器數時,就必須依照某種策略來決定哪些程序優先占用處理器。

程序及程序佇列的表示。

處理器排程演算法:fcfs,sjf,rr,hrrn,mlfq等

跟蹤程序狀態的轉化

輸出:系統中程序的排程次序,計算cpu利用率,平均周轉時間和平均帶權周轉時間

四、實驗過程與結果

演算法思想與設計

演算法實現**

執行結果

(1)fcfs演算法

1.1 演算法思想:

按照作業進入系統後備作業佇列的先後次序來挑選作業,先進入系統的作業將優先被挑選進入記憶體,建立使用者程序,分配所需資源,然後移入就緒佇列。

1.2 演算法設計:(採用描述或程式流程圖)

1.3 演算法實現**

1.4 執行結果

(2)sjf演算法

2.1 演算法思想:

以進入系統作業所要求的cpu執行時間的長短為標準,總是選取預計計算時間最短的作業投入執行。

2.2 演算法設計:(採用描述或程式流程圖)

(3)最短剩餘時間優先演算法

3.1 演算法思想:

假設當前某程序正在執行,如果有新程序移入就緒佇列,如果它所需要的cpu執行時間比當前執行程序所需要的剩餘cpu時間還短,搶占式最短作業優先演算法強行剝奪當前執行者的控制權,排程新程序執行。

3.2 演算法設計:(採用描述或程式流程圖)

作業系統實驗一 處理器排程演算法的實現

實驗報告 一 實驗目的 1 加深對處理機排程的作用和工作原理的理解。2 進一步認識併發執行的實質。二 實驗要求 本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態...

作業系統實驗一 處理器管理

作業系統實驗一 處理器管理 實驗報告 一 實驗目的 1 加深對處理機排程的作用和工作原理的理解。2 進一步認識併發執行的實質。二 實驗要求 本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往...

作業系統實驗一 處理器管理

一 實驗目的 1 加深對處理機排程的作用和工作原理的理解。2 進一步認識併發執行的實質。二 實驗要求 本實驗要求用高階語言,模擬在單處理器情況下,採用多個排程演算法,對n個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態。當就緒狀...