



全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实验项目三 进程调度一、 实验目的1. 理解进程控制块和进程组织方式;2. 掌握时间片轮转调度算法实现处理机调度。二、 实验内容1. 建立合理的PCB数据结构,建立含有8个进程结点的就绪队列,每个进程的要求运行时间随机产生,要求每个进程的要求运行时间不大于15。2. 设置时间片大小(36),使用时间片轮转调度算法实现处理机调度。三、 源程序及运行结果源程序:#include#include#include#include#define NUM 8#define LEN sizeof(PCB)struct PCB int name; int runtime; int runedtime; int killtime; struct PCB *next;typedef struct PCB PCB; void main() int timeslice=5; PCB *runqueue; PCB *top,*tail,*temp; int i; srand(int)time(0); for(i=0;iname=i; temp-runtime=rand()%15; temp-runedtime=0; temp-next=NULL; temp-killtime=0; if(i=0) top=temp; tail=temp; else tail-next=temp; tail=temp; printf(process name %d, runtime=%d, runedtime=%d,killtime=%dn,tail-name,tail-runtime,tail-runedtime,tail-killtime); printf(*n); while(top!=NULL) runqueue= top; top = top-next; runqueue-next=NULL; runqueue-runtime =runqueue-runtime-timeslice; if(runqueue-runtimekilltime=runqueue-runtime+timeslice; runqueue-runedtime=runqueue-killtime+ runqueue-runedtime; runqueue-runtime=runqueue-runedtime; printf(process name %d, runtime=%d, runedtime=%d,killtime=%d(finished)n, runqueue-name,runqueue-runtime,runqueue-runedtime,runqueue-killtime); else runqueue-killtime=timeslice; runqueue-runedtime=runqueue-runedtime+runqueue-killtime; printf(process name %d ,runtime=%d,runedtime=%d,killtime=%dn,runqueue-name,runqueue-runtime,runqueue-runedtime,runqueue-killtime);tail-next=runqueue;tail-next=tail; 运行结果:(截图)四、 实验分析与总结对实验运行结果进行分析:如果时间片设置值过大或过小,会对进程的调度产生何种影响。1. 答:时间片轮转算法调度的过程是首先取就绪队列的队首结点为运行队列的结点,修改就绪队列队首指针后移;然后调度运行队列结点,即运行队列结点的要求运行时间减去时间片时间;若修改后要求运行时间=0,则表示该进程结点运行完毕,修改进程结点的PCB信息,记录runtime,runedtime,killtime等信息,并将结点信息输出。否则,表示该进程结点未完成,记录runtime,runedtime,killtime等信息,将结点信息输出。并将该结点置于就绪队列的队尾,等待下次调度,同时修改队尾指针。若就绪队列非空,则继续执行第1步,直至就绪队列为空。如果时间片设置过大使得每个进程能在一个时间片内完成,时
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 软件英文合同范本对照
- 职业技能鉴定中心井下作业工理论知识试题及答案
- 介入手术室理认知识考核试题及答案
- 超市租赁合同范本
- Unit 3 I'm My Father教学设计-2025-2026学年小学英语二年级下册新世纪版
- 有房屋购买合同范本
- 业务推广协议合同范本
- 村集体产业合同范本
- 涂料粉末供货合同范本
- 筑梦新青年(说课稿)2025-2026学年初三下学期教育主题班会
- 2025秋开学典礼 校长引用电影《长安的荔枝》讲话:荔枝尚早,路正长远-在时光中奔跑,用行动送达自己的“长安”
- 中级经济师模拟试题及答案
- 家庭食品卫生知识培训课件
- 无人机应用技术培训教材
- 地铁安保培训课件
- 2025年广西南宁职业技术大学招聘教职人员考试笔试试题(含答案)
- 2025年食品安全监督员专业技能考核试题及答案解析
- 企业微信办公使用教程
- 红十字应急救护创伤止血
- 2025-2026学年高二上学期开学入学教育主题班会【课件】
- 学堂在线 大学历史与文化 章节测试答案
评论
0/150
提交评论