一、實驗目的
(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個程序進行程序排程。語言自選。並完成實驗報告。三 實驗內容 在採用多道程式設計的系統中,往往有若干個程序同時處於就緒狀態。當就緒狀...