操作系统处理机调度算法的实现c语言源代码_第1页
操作系统处理机调度算法的实现c语言源代码_第2页
操作系统处理机调度算法的实现c语言源代码_第3页
操作系统处理机调度算法的实现c语言源代码_第4页
操作系统处理机调度算法的实现c语言源代码_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、处理器调度算法的实现处理器调度算法的实现1 .配置系统有五个流程,每个流程都用流程控制块来表示。2 .输入每个进程的“优先次数”和“需要执行时间”。3 .为了调度起见,五个过程以给定的优先级,从大到小的顺序被合并到准备队列中。 队列的第一个进程由一个单元表示,队列的连接情况由指针表示。4 .处理器调度总是选择并执行团队的第一个进程。 使用动态优先级算法时,每次执行过程时优先级数减少“1”,并且执行时间减少“1”。5 .如果请求执行时间为零,则将状态设置为“结束”,然后退出队列。6 .运行设计的程序,以显示或打印逐次选定进程的进程名称和进程控制块中的动态变化进程。#include#include

2、struct PCB char name10;int优先级,time;struct PCB *next;*k;struct LinkQueue PCB * front;PCB * rear;/队列初始化链接队列init (); 请参见。链路队列q;PCB * p;p=(PCB * ) malloc (尺寸(PCB ) );把if(p) )Q.front=Q.rear=p;Q.front-next=NULL;返回q;elseprintf (队列初始化失败,程序执行结束 n );exit(0)以下以下/按优先级从大到小的顺序插入新进程链路队列排序(链路队列q,PCB *p) )PCB * temp

3、1;PCB * temp2;if (q.rear=q.front ) 1222222222222222Q.front-next=p;Q.rear=p; else temp1=Q.front;temp2=temp1-next;第二级优先级=第二级优先级第二级下一级!=空值)temp1=temp2;temp2=temp1-next;以下if (temp2- next=nullstemp2-优先级=p -优先级) temp2-下一步=p;Q.rear=p; else p-next=temp1-next;temp1-下一步=p;以下以下返回q;以下链路队列输入(链路队列q )/*创建流程控制块函数*/

4、举止PS;for(i=1; i=5; PS )举止打印(n进程编号no.360n ,I );k=(PCB * ) malloc (尺寸(PCB ) );printf(n进程名: );扫描( % s ,k-name );printf(n进程优先级: );扫描( % d ,k -优先级);printf(n进程执行时间: );扫描( % d ,k-time );printf(n );k-next=NULL;Q=sort(Q,k )调用sort函数*/以下返回q;以下链路队列运行(链路队列q )/*创建进程准备就绪函数(进程执行时间,准备就绪状态*/)举止if (k-time=0) 222222222

5、2222222222printf (运行后进程%s的完成状态结束.n ,k-name;免费(k )else举止(k -优先级)-(k-time)-打印(执行后优先级:%d执行时间:%dn ,k-priority,k-time );Q=sort(Q,k )调用sort函数*/以下返回q;以下void检查(链路队列q )/*创建进程显示函数*/ PCB *pr;pr=(PCB * ) malloc (尺寸(PCB ) );pr=Q.front-next;printf(n *输入的五个进程是:n );PS!=空值)打印(n进程名:%s状态:准备完成优先级:%d执行时间:%dn ,pr-name,pr-priority,pr-time );pr=pr-next;以下以下void main ()举止int h=0;链路队列p;P=init ();p=输入(p )检查(p )while! 下一个!的!=空值)h;k=P.front-next;P.front-next=k-ne

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论