没有合适的资源?快使用搜索试试~ 我知道了~
首页操作系统实验----动态优先级调度算法
操作系统实验----动态优先级调度算法

动态设置进程优先级,并设有延时函数 while(head!=NULL) { Output(&head); DeleteQueue(&head,&curr); curr.runtime--; curr.privilege++; if(curr.runtime!=0) { InsertQueue(&head,curr); } } }
资源详情
资源评论
资源推荐

/*优先级调度算法*/
#include<iostream.h>
#include<iomanip.h>
typedef struct{ //定义一个结构体(进程控制块)
char name[20]; //进程名
int runtime; //运行时间
int privilege; //到达时间
char state; //进程状态,输出为 R 时表示进程处于就绪状态
}NODE;
typedef struct node{ //定义一个结点
NODE data; //进程数据
struct node *next; //链接指针
}LNODE;
/*定义延时函数,模拟 CPU 调度用时过程*/
void Delay(int i)
{
int x,y;
while(i--)
{
x=0;
while(x<10000)
{
y=0;
while(y<40000) y++;
x++;
}
}
}
/*按进程优先级排序*/
void InsertQueue(LNODE **head,NODE x)
{
LNODE *p1,*p2,*p;
p=new LNODE; //动态分配新结点空间
p->data=x;
p->next=NULL;
if(*head==NULL) //若为空链表
*head=p;
else //若为非空链表

















安全验证
文档复制为VIP权益,开通VIP直接复制

评论4