好文档 - 专业文书写作范文服务资料分享网站

设计一个按优先数调度算法实现处理器调度的程序

天下 分享 时间: 加入收藏 我要投稿 点赞

题目:设计一个按优先数调度算法实现处理器调度的程序

提示:

(1)假定系统有5个进程,每个进程用一个PCB来代表。PCB的格式为: 进程名、指针、要求运行时间、优先数、状态。 进程名——P1~P5。

指针——按优先数的大小把5个进程连成队列,用指针指出下一个进程PCB的首地

址。 要求运行时间——假设进程需要运行的单位时间数。

优先数——赋予进程的优先数,调度时总是选取优先数大的进程先执行。

状态——假设两种状态,就绪,用R表示,和结束,用E表示。初始状态都为就绪

状态。

(2) 每次运行之前,为每个进程任意确定它的“优先数”和“要求运行时间”。 (3) 处理器总是选队首进程运行。采用动态改变优先数的办法,进程每运行1次,优先

数减1,要求运行时间减1。 (4) 进程运行一次后,若要求运行时间不等于0,则将它加入队列,否则,将状态改为“结

束”,退出队列。 (5) 若就绪队列为空,结束,否则,重复(3)。

2.程序中使用的数据结构及符号说明:

#define num 5//假定系统中进程个数为5 struct PCB{

char ID;//进程名

int runtime;//要求运行时间 int pri;//优先数

char state; //状态,R-就绪,F-结束 };

struct PCB pcblist[num];//定义进程控制块数组

3.流程图:

(1)主程序流程图:

(2)子程序init()流程图:

结 束 调用运行子程序 调用初始化子程序 开 始 开 始 定义i i=0 i

(3) 子程序max_pri_process()流程图:

开始 定义i,key,max=100 i=0 i

(4)子程序show()流程图:

开始 定义i 输出提示 i=0 i

(5)子程序run()流程图:

开始 定义i,j,t j=0 j

设计一个按优先数调度算法实现处理器调度的程序

题目:设计一个按优先数调度算法实现处理器调度的程序提示:(1)假定系统有5个进程,每个进程用一个PCB来代表。PCB的格式为:进程名、指针、要求运行时间、优先数、状态。进程名——P1~P5。指针——按优先数的大小把5个进程连成队列,用指针指出下一个进程PCB的首地址。要求运行时间——假设进程需要运行的单位时间数。
推荐度:
点击下载文档文档为doc格式
7e1ix1ukjh1j03v4hzhz
领取福利

微信扫码领取福利

微信扫码分享