作業系統實驗報告 中南大學

2021-08-13 12:04:24 字數 1820 閱讀 9597

作業系統原理試驗報告

班級: 學號:

姓名:實驗一:cpu排程

一、實驗內容

選擇乙個排程演算法,實現處理機排程。

二、實驗目的

多道系統中,當就緒程序數大於處理機數時,須按照某種策略決定哪些程序優先占用處理機。本實驗模擬實現處理機排程,以加深了解處理機排程的工作。

三、實驗題目

1、設計乙個按優先權排程演算法實現處理機排程的程式;

2、設計按時間片輪轉實現處理機排程的程式。

四、實驗要求

pcb內容:

程序名/pid;

要求執行時間(單位時間);

優先權;

狀態:pcb指標;

1、可隨機輸入若干程序,並按優先權排序;

2、從就緒隊首選程序執行:優先權-1/要求執行時間-1

要求執行時間=0時,撤銷該程序

3、重新排序,進行下輪排程

4、最好採用圖形介面;

5、可隨時增加程序;

6、規定道數,設定後備佇列和掛起狀態。若記憶體中程序少於規定道數,可自動從後備佇列排程一作業進入。被掛起程序入掛起佇列,設定解掛功能用於將指定掛起程序解掛入就緒佇列。

7、每次排程後,顯示各程序狀態。

實驗二:記憶體管理

一、實驗內容

主儲存器空間的分配和**

二、實驗目的

幫助了解在不同的儲存管理方式下,應怎樣實現主存空間的分配和**。

三、實驗題目

在可變分割槽管理方式下,採用最先適應演算法實現主存空間的分配和**。

四、實驗要求

1、自行假設主存空間大小,預設作業系統所佔大小並構造未分分割槽表;

表目內容:起址、長度、狀態(未分/空表目)

2、結合實驗一,pcb增加為:

3、採用最先適應演算法分配主存空間;

4、程序完成後,**主存,並與相鄰空閒分割槽合併

.1、vo類說明(資料儲存結構)

程序控制塊pcb的結構:

public class pcb;

2流程圖

3.源程式核心**

public void display()

else

for(int i =0; i < readylist.size(); i++)

for(int j = readylist.size(); j < 6; j++)

for(int i =0; i < waitinglist.size(); i++)

for(int j = waitinglist.size(); j < 15; j++)

for(int i =0; i < handuplist.size(); i++)

for(int j = handuplist.size(); j < 15; j++)

jl1.setcellrenderer(new myrenderer());

for(int i = 0; i < unassignlist.size(); i++)

system.out.println("one");system.out.println();

}時間和優先順序減一

public void sub()

{if(runninglist.size()>0&&runninglist.get(0).getisin()==1)

{runninglist.get(0).settime(runninglist.get(0).gettime()-1);

if(runninglist.get(0).getpriority()>=1)

runninglist.get(0).setpriority(runninglist.get(0).getpriority()-1);

作業系統實驗報告

電腦科學與應用系 課程設計報告 作業系統原理 目錄1 題目簡述 2 2 需求分析 2 2.1設計思想 2 2.2要求 2 2.3任務 3 2.4執行環境 3 2.5開發工具 3 3 概要設計與詳細設計 3 3.1系統流程圖 3 3.2演算法流程圖 5 4 編碼與實現 10 4.1資料結構和演算法設計...

作業系統實驗報告

2014 2015 學年第 2 學期 系別計算機學院 專業電腦科學與技術 班級 2014級專公升本 姓名蔡圓圓 學號 1410211014 授課老師趙群禮 實驗一 熟悉linux基本命令及程式設計環境 實驗總結 編寫程式 gedit編輯器 編寫程式 c 存放 gcc linux c程式編譯工具 當前...

作業系統實驗報告

實驗名稱 哲學家就餐問題 班級 通訊1202班 學號 u201213584 姓名 趙越 指導老師 許毅平 一 實驗目的 1.熟練使用vc 6.0編譯環境,除錯並正確執行程式,更加熟練地利用c語言解決問題 2.了解哲學家就餐的基本原理,掌握死鎖的必要條件。3.理解源程式中產生和防止的演算法,及相關視窗...