#include
#include
#include
#include
using namespace std;
struct pcb_type
;typedef struct queuenode //佇列鍊錶
*queuelink;
//設定全程變數
struct queuenode *ready_head=null, //ready佇列隊首指標
*ready_tail=null , //ready佇列隊尾指標
*blocked_head=null, //blocked佇列隊首指標
*blocked_tail=null; //blocked佇列隊尾指標
int t; //定義乙個全域性變數個時間片系統釋放資源,喚醒處於阻塞佇列隊首的程序
//設定相應的子程式
void start_state() //讀入假設的資料,設定系統初始狀態
else
}else、 }
}else //程序狀態 2–表示"執行"狀態 1–表示"就緒"狀態 0–表示"阻塞"狀態
x++; //執行過後吧用掉的時間加上,這裡每次為一
if(x==t && blocked_head != blocked_tail) //到時候向就緒佇列送節點,且阻塞佇列不為空
else //如果是只剩下最後乙個節點
}printf("\n");}}
void calculate() //計算cpu利用率
作業系統 程序排程
程序排程程序排程室作業系統必不可少的一種排程。因此在三種型別的os dos windows linux 都無一例外地配置了程序排程。此外它也是對系統效能影響最大的一種處理機排程。程序排程的任務 儲存處理機的現場資訊。在進行排程時首先需要儲存當前程序的處理機的現場資訊,如程式計數器 多個通用暫存器中的...
作業系統程序排程
華中農業大學 學生實驗報告 課程名稱 計算機作業系統 實驗名稱 程序排程 實驗型別 驗證 設計 綜合 創新 實驗目的 實驗目的 1 通過編寫程式實現程序或作業先來先服務 高優先權 按時間片輪轉排程演算法,使 學生進一步掌握程序排程的概念和演算法,加深對處理機分配的理解。2 了解程序 執行緒 的排程機...
作業系統 程序排程
對於單處理器系統,同一時間只有乙個程式可以執行 其他程序都應等待,直到cpu空閒並可排程為止。多道程式的目標是,始終允許某個程序執行以最大化cpu利用率。cpu的程序屬性 週期進行cpu執行和i o等待。程序在這兩個狀態之間不斷交替。程序執行從cpu執行開始,之後i o執行 接著另乙個cpu執行,接...