91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 3KB
    文件類型: .cpp
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-09
  • 語言: C/C++
  • 標簽:

資源簡介

按剝奪式優先數法對三個進程P1,p2,p3進行模擬調度,各進程的優先數靜態設置,其中P1的優先數最高,P3的優先數最低。每個進程都處于執行E(execute),就緒R(ready)和等待W(wait)三種狀態之一,并假定初始狀態均為R.。

資源截圖

代碼片段和文件信息

#include?“stdio.h“
#include?“stdlib.h“
#include?“string.h“
#include?“malloc.h“
#include?“time.h“

#define?getpch(type)?(type*)malloc(sizeof(type))?//控制輸入流
#define?NULL?0?
struct?pcb{?/*?定義進程控制塊PCB?*/?
char?name[10];?//進程名
char?state;?//進程狀態
int?super;?//進程優先級
struct?pcb*?next;?
}*ready=NULL?*p;//ready表示就緒隊列,p表示當前要插入的隊列

typedef?struct?pcb?PCB;?
void?sort();

void?create()??/*手動輸入進程*/
{????
???int?inum;?
???system(“CLS“);?//清屏?
???printf(“\n?請輸入進程數:“);?
???scanf(“%d“&num);?

???for(i=0;i?{?
??p=getpch(PCB);?
??printf(“\n?輸入進程名:“);?
??scanf(“%s“p->name);?
??printf(“\n輸入進程優先數:“);?
??scanf(“%d“&p->super);?
??printf(“\n進程狀態:?R“);
??printf(“\n“);?
??p->state=‘W‘;?//當前要插入就緒隊列的進程控制塊處于等待狀態
??p->next=NULL;?
??sort();?//調用sort函數
}????

}?


void?sort()?/*?建立對進程進行優先級排列函數*/?

{?

PCB?*first?*second;?
int?flag=0;?//flag標志,flag=0表示將進程插入到就緒隊列首后面
if((ready==NULL)||((p->super)>(ready->super)))?/*優先級最大者插入隊首*/?
{?
p->next=ready;?
ready=p;?
}?
else?/*?進程比較優先級插入適當的位置中*/?
{?
first=ready;?
second=first->next?;
while(second!=NULL)?

{?
if((p->super)>(second->super))?/*若插入進程比當前進程優先數大插入到當前進程前面*/
{??
p-

評論

共有 條評論

相關資源