實驗
一、作業排程實驗
專業:商軟二班
姓名:林志傑
學號:201406114215
一、實驗目的
(1)加深對作業排程演算法的理解;
(2)進行程式設計的訓練。
二、實驗內容和要求
用高階語言編寫乙個或多個作業排程的模擬程式。
單道批處理系統的作業排程程式。作業一投入執行,它就占有計算機的一切資源直到作業完成為止,因此排程作業時不必考慮它所需要的資源是否得到滿足,它所執行的時間等因素。
三、實驗方法、步驟及結果測試
void input(); /*輸入作業資訊*/
int space(); /* 返回就緒佇列中作業的數目*/
void sort(); /*按提交時間排序*/
void disp(jcb *pr); /* 顯示相應的作業*/
void disp_hrn(jcb *pr);/*顯示高響應比作業*/
void running(); /*執行作業組*/
void destroy(); /* 撤銷作業*/
void check(); /*排程作業並選擇演算法排序就緒佇列*/
先到先服務fcfs方法:
按照作業進入系統後背作業佇列的先後次序來挑選作業,先進入系統的作業將優先被挑選進入記憶體,建立使用者程序,分配所需資源,然後移入就緒佇列。
實驗結果截圖:
最短作業優先sjf方法:演算法以進入系統作業所要求的cpu執行時間的長短為標準,總是選取預計計算時間最短的作業投入執行
實驗結果截圖:
最高響應比優先演算法hrrf:既考慮作業等待時間,又考慮作業處理時間,這樣既照顧短作業又不會使長作業的等待時間過長,有效地改善排程效能
實驗結果截圖:
四、實驗總結
1、什麼是作業
作業是使用者提交給作業系統計算的乙個獨立任務。每個作業必須經過若干相對獨立且相互關聯的順序加工步驟才能得到結果,其中每個加工步驟稱為乙個作業步。
2、為了方便模擬排程過程,作業使用什麼方式的資料結構存放和表示?
鍊錶。存放作業名,執行時間,提交時刻等資訊
3、作業系統中,常用的作業排程演算法有哪些?
(1)先來先服務排程演算法(fcfs)
(2)短作業優先排程演算法(spf)
(3)最高響應比優先演算法(hrn)
(4)基於優先數排程演算法(hpf)
(5)多級佇列排程演算法
滴滴面試(09 20)
第一輪演算法題 每隔n個節點反轉單鏈表void reverse listnode phead,int n 分段反轉 int before len n int after len n vectorans for int i 1 i before i for int j ans.size 1 j 0 j...
3 2 作業與作業排程(高階排程)
1.在批處理系統中,因作業進入系統後先駐留在外存,故需要有作業排程。在分時系統中為做到及時響應,作業被直接送入記憶體,故不需作業排程。在實時系統中,通常也不需作業排程 2.作業排程演算法 先來先服務和短作業 程序 優先排程演算法 高優先權排程演算法和高響應比優先排程演算法 先來先服務 優點 有利於長...
程序排程與作業排程
作業排程按一定的演算法從磁碟上的 輸入井 中選擇資源能得到滿足的作業裝入記憶體,使作業有機會去占用處理器執行。但是,乙個作業能否占用處理器,什麼時間能夠占用處理器,必須由程序排程來決定。所以,作業排程選中了乙個作業且把它裝入記憶體時,就應為該作業建立乙個程序,若有多個作業被裝入記憶體,則記憶體中同時...