#include "stdio.h"
#include #include #define getpch(type) (type*)malloc(sizeof(type))
#define null 0
struct pcb
*ready=null,*p;
typedef struct pcb pcb;
void sort() /* 建立對程序進行優先順序排列函式*/
else /* 程序比較優先順序,插入適當的位置中*/
else /* 插入程序優先數最低,則插入到隊尾*/
} if(insert==0) first->link=p;
} } void input() /* 建立程序控制塊函式*/
} int space()
return(l);
} disp(pcb * pr) /*建立程序顯示函式,用於顯示當前程序*/
check() /* 建立程序檢視函式 */
} destroy() /*建立程序撤消函式(程序執行結束,撤消程序)*/
running() /* 建立程序就緒函式(程序執行時間到,置就緒狀態)*/
} main() /*主函式*/
printf("\n\n 程序已經完成.\n");
ch=getchar();
}
C語言模擬最高優先數優先程序排程演算法
本程序排程演算法採用最高優先數優先的排程演算法 即把處理機分配給優先數最高的程序 通過模擬排程程序的 pcb塊來排程程序。程序的 pcb塊包含以下四方面的內容 a 程序標示符 b 處理及狀態資訊 c 程序排程資訊 d 程序控制資訊 程序在執行中存在三種基本狀態,分別是執行狀態 就緒狀態和阻塞狀態。主...
深度優先 廣度優先
父類定義 class people def init self,name,age,weight self.name name self.age age self.weight weight defspeak self print s 說 我 d 歲。self.name,self.age 單繼承示例 ...
uC OS II任務排程中判斷最高優先順序
uc os ii中,規定最多可以有64 個任務。每個任務的優先順序不能相同,因此,優先順序為 0 63.數字越小,優先順序越高,那麼 0就是最高優先順序,63就是最低優先順序。系統保留了優先順序最高及最低的各 4個,因此使用者不能使用這 8個優先順序作為自己的任務的優先順序。巨集 os lowest...