2022年操作系统-处理机调度算法的实现 .pdf

上传人:H****o 文档编号:32152249 上传时间:2022-08-08 格式:PDF 页数:10 大小:362.56KB
返回 下载 相关 举报
2022年操作系统-处理机调度算法的实现 .pdf_第1页
第1页 / 共10页
2022年操作系统-处理机调度算法的实现 .pdf_第2页
第2页 / 共10页
点击查看更多>>
资源描述

《2022年操作系统-处理机调度算法的实现 .pdf》由会员分享,可在线阅读,更多相关《2022年操作系统-处理机调度算法的实现 .pdf(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、操作系统实验报告处理机调度算法的实现姓名:陈民厅学号: 09070009 班级:09 计算机 1 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - 操作系统实验报告1 一、实验名称及要求1、实验名称:处理机调度算法的实现2、实验要求:了解操作系统处理机调度概念的基本概念,处理机调度程序的功能, 常用的处理机调度算法。 C或 C+ 编程方法与语句格式,提前初步编好试验程序。3、实验方式:通过实验室的微机上机,实际调试程序。4、实验

2、环境: Windows 操作系统环境下的个人微机或程序设计语言二、实验内容设定系统中有五个进程,每一个进程用一个进程控制块表示。输入每个进程的“优先数”和“要求运行时间”。为了调度方便,将五个进程按给定的优先数从大到小连成就绪队列。用一单元指出队列进程,用指针指出队列的链接情况。处理机调度总是选队首进程运行。采用动态优先数算法,进程每运行一次优先数就减“”,同时将运行时间减“” 。若要求运行时间为零,则将其状态置为“结束”,且对出队列。运行所设计进程,显示或打印逐次被选中进程的进程名以及进程控制块的动态变化过程。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - -

3、- - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - 操作系统实验报告2 三、实验程序#include #include #include #define getpch(type) (type*)malloc(sizeof(type) #define NULL 0 struct pcb /* 定义进程控制块PCB */ char name20; char state; int super; int ntime; int rtime; struct pcb* link; *ready=NULL,*p; typede

4、f struct pcb PCB; void sort() /* 建立对进程进行优先级排列函数*/ PCB *first, *second; int insert=0; if(ready=NULL)|(p-super)(ready-super) /*优先级最大者 , 插入队首 */ p-link=ready; ready=p; else /* 进程比较优先级 , 插入适当的位置中 */ first=ready; second=first-link; while(second!=NULL) if(p-super)(second-super) /*若插入进程比当前进程优先数大,*/ /*插入到当前

5、进程前面 */ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 操作系统实验报告3 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() /* 建立进程控制块函数

6、*/ int i,num; printf(n 请输入进程数 : ); scanf(%d,&num); for(i=1;iname); printf(n 请输入进程的优先数 :); scanf(%d,&p-super); printf(n 请输入进程的运行时间 :); scanf(%d,&p-ntime); printf(n); p-rtime=0;p-state=W; p-link=NULL; sort(); /* 调用 sort 函数*/ 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - -

7、 第 4 页,共 10 页 - - - - - - - - - 操作系统实验报告4 int space() int l=0; PCB* pr=ready; while(pr!=NULL) l+; pr=pr-link; return(l); void disp(PCB * pr) /*建立进程显示函数 , 用于显示当前进程 */ printf(n 进程名 t 进程状态 t 优先数 t 需要运行时间 t 已经运行时间 n); printf(|%st,pr-name); printf(|%ct,pr-state); printf(|%dt,pr-super); printf(|%dtt,pr-nt

8、ime); printf(|%dt,pr-rtime); printf(n); void check() /* 建立进程查看函数 */ PCB* pr; printf(n * 当前正在运行的进程是 :n); /*显示当前运行进程 */ disp(p); pr=ready; printf(n * 当前就绪队列状态为 :n); /*显示就绪队列状态 */ while(pr!=NULL) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 10 页 - - - - - - - -

9、- 操作系统实验报告5 disp(pr); pr=pr-link; void destroy() /*建立进程撤消函数 (进程运行结束 , 撤消进程 )*/ printf(n 进程 %s 已完成 .n,p-name); free(p); void running() /* 建立进程就绪函数 ( 进程运行时间到 , 置就绪状态 */ (p-rtime)+; if(p-rtime=p-ntime) destroy(); /* 调用 destroy 函数*/ else (p-super)-; p-state=W; sort(); /*调用 sort 函数*/ void main() /*主函数 */

10、 int len,h=0; char ch; input(); len=space(); while(len!=0)&(ready!=NULL) ch=getchar(); h+; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 10 页 - - - - - - - - - 操作系统实验报告6 printf(-); printf(n 现在是第 %d次运行: n,h); p=ready; ready=p-link; p-link=NULL; p-state=R; check

11、(); running(); printf(n 按回车键继续 .n); printf(nn 进程已经完成 .n); 四、实 验 结 果名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 10 页 - - - - - - - - - 操作系统实验报告7 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 10 页 - - - - - - - - - 操作系统实

12、验报告8 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 10 页 - - - - - - - - - 操作系统实验报告9 五实验总结进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。进程有五个特性: 1、动态性 2 、并发性 3、独立性 4、异步性 5、结构特性系统中的进程都具有以下三中基本状态: (1)就绪(Ready )状态 (2) 执行( Runing)状态(3) 阻塞( Blocked)状态。最后感谢李老师的指导。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 10 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁