-
大小: 4KB文件類型: .cpp金幣: 1下載: 0 次發(fā)布日期: 2021-01-02
- 語(yǔ)言: C/C++
- 標(biāo)簽:
資源簡(jiǎn)介
首先對(duì)優(yōu)先數(shù)調(diào)度算法原理進(jìn)行深刻的理解和掌握;
(2)選擇C++程序語(yǔ)言來實(shí)現(xiàn)對(duì)N個(gè)進(jìn)程進(jìn)行設(shè)計(jì)優(yōu)先數(shù)調(diào)度算法的描述和資源分配;
(3)根據(jù)優(yōu)先數(shù)調(diào)度算法的要求設(shè)計(jì)相應(yīng)的數(shù)據(jù)結(jié)構(gòu),如:代表進(jìn)程的進(jìn)程控制塊PCB的結(jié)構(gòu),包括處于就緒狀態(tài)的進(jìn)程數(shù)量、指向就緒隊(duì)列的指針、進(jìn)程要求運(yùn)行的時(shí)間、進(jìn)程的優(yōu)先數(shù)、進(jìn)程當(dāng)前狀態(tài),其中進(jìn)程的個(gè)數(shù)N用戶可以自行設(shè)定;
(4)進(jìn)程運(yùn)行要顯示當(dāng)前運(yùn)行狀態(tài),要給出若干個(gè)進(jìn)程控制塊PCB的信息。
三、實(shí)驗(yàn)環(huán)境
代碼片段和文件信息
#include
#include
#define?Max?5
struct?PCB{???????????????//進(jìn)程控制塊
??int?name;???????????????//進(jìn)程名
??int?needtime;???????????//需要運(yùn)行時(shí)間
??int?priority;??????????????//優(yōu)先數(shù)
??char?state;?????????????//進(jìn)程狀態(tài)
??struct?PCB?*next;???????//指針將進(jìn)程按優(yōu)先數(shù)大小連成隊(duì)列指出下
??????????????????????????//一個(gè)進(jìn)程的進(jìn)程控制塊的首地址最后一個(gè)進(jìn)程中的指針為空
};
int?rt;???????????????????
struct?PCB?*creatList()
{??????//單循環(huán)鏈表建立進(jìn)程控制塊隊(duì)列
struct?PCB?*H*p*q*s;
int?i;
p=(struct?PCB?*)malloc(sizeof(struct?PCB));?//頭節(jié)點(diǎn)含有指向第一個(gè)進(jìn)程的指針
H=q=p;
printf(“請(qǐng)輸入%d個(gè)進(jìn)程\n“Max);
?p=(struct?PCB?*)malloc(sizeof(struct?PCB));?//動(dòng)態(tài)申請(qǐng)空間
?printf(“請(qǐng)輸入進(jìn)程1名:“);
?scanf(“%d“&p->name);
?printf(“請(qǐng)輸入要求運(yùn)行時(shí)間:“);
?scanf(“%d“&p->needtime);
?printf(“請(qǐng)輸入優(yōu)先數(shù):“);
?scanf(“%d“&p->priority);
?p->state=‘R‘;???????????????????//進(jìn)程的初始狀態(tài)都為“就緒“狀態(tài)
- 上一篇:MFC編寫天氣預(yù)報(bào)
- 下一篇:家譜管理系統(tǒng)
評(píng)論
共有 條評(píng)論