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

  • 大小: 192KB
    文件類型: .rar
    金幣: 2
    下載: 1 次
    發布日期: 2021-06-08
  • 語言: 其他
  • 標簽: 兩級調度??

資源簡介

兩道批處理系統的兩級調度,自己做的簡單的課設內容,可以運行

資源截圖

代碼片段和文件信息

#include?“stdio.h“?
#include??
#include??
#define?getpch(type)?(type*)malloc(sizeof(type))?
#define?NULL0

struct?time??//定義時間結構體
{
int?hour;?//時
int?min;??//分
};

struct?time?systime;??//定義系統時間
int?nstate=0;????//定義一個變量記錄內存內作業數
struct?pcb???????????/*?定義進程控制塊PCB?*/
{ ?
?char?name[10]; ?//進程名
?char?state; ?//狀態?state為“N“為就緒,“W“為后備,“S“為還處于輸入井狀態“F“為完成
?int?super; ?//優先數
?int?ntime; ??//需要運行時間
?int?rtime; ?//運行時間
?struct?time?ctime;???//提交時間
?struct?time?stime;??//開始時間
?struct?time?ftime;??//完成時間
?int??ttime; ?//周轉時間
?float??dtime; ?//帶權周轉時間
?struct?pcb*?link;?
}*ready=NULL*one=NULL*p*q=NULL;?
typedef?struct?pcb?PCB;?

int?numnum2;

int?time_cmp(struct?time?astruct?time?b)???//時間比較?ab返回1;
{
????if(a.hour????else?if(a.hour==b.hour&&a.min else?if(a.hour==b.hour&&a.min==b.min)????return?0;
????return?1;
}



int?time_j(struct?time?cstruct?time?d)??//計算時間的差
{??int?s;
s=c.hour*60+c.min-d.hour*60-d.min;//把小時*60化為分鐘之后再相減
return?s;
}

void?sort()?/*?建立對進程先來先服務排列函數*/?
{?
??PCB?*first?*second;?
??int?insert=0;?
??if((ready==NULL)||time_cmp(p->ctimeready->ctime)==-1)?/*提交時間最小者插入隊首*/?
???{?
p->link=ready;
ready=p;?
???}?
??else?/*?進程比較提交時間插入適當的位置中*/?
??{?
first=ready;?
second=first->link;?
while(second!=NULL)?
?{?
????if(time_cmp(p->ctimesecond->ctime)==-1)?/*若插入進程比當前進程提交時間小*/?
?????{???????????????????????????????????????/*插入到當前進程前面*/?
p->link=second;?
first->link=p;?
second=NULL;?
insert=1;?
?}?
????else?/*?插入進程提交時間最大則插入到隊尾*/?
?????????{?
first=first->link;?
second=second->link;?
??}?
??????}?
if(insert==0)?first->link=p;
??}?
}?



void?input()?/*?建立進程控制塊函數*/?
{?
??int?i;?
??printf(“\n?請輸入進程數:“);?
??scanf(“%d“&num);
??num2=num;
?if(num>0)
??for(i=1;i<=num;i++)?
?{?
printf(“\n?進程No.%d:\n“i);?
p=getpch(PCB);?
printf(“\n?輸入進程名:“);?
scanf(“%s“p->name);?
????p->ctime.hour=0p->ctime.min=0;
printf(“\n?輸入提交時間(時:分):“);?
scanf(“%d:%d“&p->ctime.hour&p->ctime.min);
????printf(“\n?輸入進程需要運行時間:“);?
scanf(“%d“&p->ntime);
????printf(“\n?輸入進程優先數:“);?
scanf(“%d“&p->super);
printf(“\n“);
p->state=‘S‘;
p->rtime=0;
p->stime.hour=0p->stime.min=0;
p->link=0;
sort();?/*?調用sort函數*/?
??}?
?else
?{?printf(“\n?輸入錯誤!請重新輸入\n“);
??input();?
?}
}?
//建立完成順序的鏈表
void?change1()???????????????
{?if(one==NULL)?{one=p;q=one;}
??else
????{??q->link=p;
???q=p;
?????}
??p=q->link;?
??q->link=NULL;
??q->ftime.hour=systime.hour;
??q->ftime.min=systime.min;
??nstate--;
??num2--;
??q->state=‘F‘;
}

void?change2()
{?if(one==NULL)?{one=p->link;q=one;}
??else
????{?q->link=p->link;
??????q=p->link;
????}
??p->link=q->link;
??q->link=NULL;?????
??q->ftime.hour=systime.hour;
??q->ftime.min=systime.min;
??nstate--;
??num2--;
??q->state=‘F‘;
}

//選中優先數小的作業,記錄開始時間,已運行時間
void?run()
{
printf(“---選中作業

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????486400??2014-01-09?18:49??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.ncb

?????文件????????973??2014-01-07?19:06??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.sln

????..A..H.?????13824??2014-01-09?18:49??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.suo

?????文件??????45056??2014-01-09?18:34??兩道批處理系統的兩級調度\debug\兩道批處理系統的兩級調度.exe

?????文件?????319180??2014-01-09?18:34??兩道批處理系統的兩級調度\debug\兩道批處理系統的兩級調度.ilk

?????文件?????322560??2014-01-09?18:34??兩道批處理系統的兩級調度\debug\兩道批處理系統的兩級調度.pdb

?????文件???????7203??2014-01-09?18:49??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.cpp

?????文件???????4022??2014-01-09?04:00??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.vcproj

?????文件???????1407??2014-01-09?18:49??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\兩道批處理系統的兩級調度.vcproj.CFENG.Administrator.user

?????文件??????13996??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\BuildLog.htm

?????文件?????????63??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\mt.dep

?????文件??????44032??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\vc80.idb

?????文件??????53248??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\vc80.pdb

?????文件????????406??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\兩道批處理系統的兩級調度.exe.embed.manifest

?????文件????????472??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\兩道批處理系統的兩級調度.exe.embed.manifest.res

?????文件????????388??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\兩道批處理系統的兩級調度.exe.intermediate.manifest

?????文件??????26521??2014-01-09?18:34??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug\兩道批處理系統的兩級調度.obj

?????目錄??????????0??2014-01-09?19:21??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度\Debug

?????目錄??????????0??2014-01-09?19:21??兩道批處理系統的兩級調度\debug

?????目錄??????????0??2014-01-09?19:21??兩道批處理系統的兩級調度\兩道批處理系統的兩級調度

?????目錄??????????0??2014-01-09?19:21??兩道批處理系統的兩級調度

-----------?---------??----------?-----??----

??????????????1339751????????????????????21


評論

共有 條評論