欢迎来到天天文库
浏览记录
ID:59160583
大小:39.00 KB
页数:13页
时间:2020-09-15
《《计算机操作系统原理》课外实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、此资料由网络收集而来,如有侵权请告知上传者立即删除。资料共分享,我们负责传递知识。《计算机操作系统原理》课外实验报告 设计思路和内容 先用随机函数初始化PCB结构体,从而模拟3个进程的特性,然后voidProInsert(PCB*p)/*优先数插入算法,将进程p按其优先级插入到就绪队列中相应位置*/、voidPrintPCB(PCB*q)//输出进程控制字信息、voidPrintLine(PCB*head)/*输出以p为队首的队列中所有PCB信息*/、voidPrintAll()//输出某一时刻进程队列信息、voidFirst
2、In()/*将就绪队列中进程调入运行队列*/等函数体,实现进程调度过程中最基本的功能。在主函数中先调用voidCreatePCB()/*随机产生n个进程,并对各个进程随机赋予初值*/,从而创建了就绪队列,为进程调度做好准备。而后voidSP()/*静态优先级抢占式调度策略*/、voidDP()/*动态优先级抢占式调度策略*/、voidRR()/*时间片轮转调度策略*/等来分别实现静态优先级抢占式调度策略、动态优先级抢占式调度策略和时间片轮转调度策略三种功能。而最后的多级反馈调度策略实现因为与前三者有很大的不同,所以在同一cpp中我
3、几乎是重新重构了所有的基本算法来帮助快速实现多级调度策略的。 首先,对于时间的复杂性,我在进程调度实验中忽略了运行队列(CPU处理器的模拟)处理程序是依据进程进入就绪队列的时间来调度的,所以1、静态优先级抢占式调度策略最基本的思想是循环将就绪队列中程序调入到运行队列中,再在运行队列中执行对进程的操作。2、动态优先级抢占式调度策略的基本思想是循环的调度就绪队列中进程程序,然后再运行队列中对进程的优先级进行动态的操作,如每执行一次进程,它的优先级就相应的减2.,如果没有运行完,就将其重新按照优先级重新插入到就绪队列中,从而模拟出调度
4、返回这一操作。3、时间片轮转调度策略,我预先确定时间片的长度为2,在循环从就绪队列中调度进程时,在运行队列中将其执行2个时间点,若没有执行完,则重新插入。4、而对于多级队列调度策略,则首先建立PCB13此资料由网络收集而来,如有侵权请告知上传者立即删除。资料共分享,我们负责传递知识。《计算机操作系统原理》课外实验报告 设计思路和内容 先用随机函数初始化PCB结构体,从而模拟3个进程的特性,然后voidProInsert(PCB*p)/*优先数插入算法,将进程p按其优先级插入到就绪队列中相应位置*/、voidPrintPCB(P
5、CB*q)//输出进程控制字信息、voidPrintLine(PCB*head)/*输出以p为队首的队列中所有PCB信息*/、voidPrintAll()//输出某一时刻进程队列信息、voidFirstIn()/*将就绪队列中进程调入运行队列*/等函数体,实现进程调度过程中最基本的功能。在主函数中先调用voidCreatePCB()/*随机产生n个进程,并对各个进程随机赋予初值*/,从而创建了就绪队列,为进程调度做好准备。而后voidSP()/*静态优先级抢占式调度策略*/、voidDP()/*动态优先级抢占式调度策略*/、voi
6、dRR()/*时间片轮转调度策略*/等来分别实现静态优先级抢占式调度策略、动态优先级抢占式调度策略和时间片轮转调度策略三种功能。而最后的多级反馈调度策略实现因为与前三者有很大的不同,所以在同一cpp中我几乎是重新重构了所有的基本算法来帮助快速实现多级调度策略的。 首先,对于时间的复杂性,我在进程调度实验中忽略了运行队列(CPU处理器的模拟)处理程序是依据进程进入就绪队列的时间来调度的,所以1、静态优先级抢占式调度策略最基本的思想是循环将就绪队列中程序调入到运行队列中,再在运行队列中执行对进程的操作。2、动态优先级抢占式调度策略的
7、基本思想是循环的调度就绪队列中进程程序,然后再运行队列中对进程的优先级进行动态的操作,如每执行一次进程,它的优先级就相应的减2.,如果没有运行完,就将其重新按照优先级重新插入到就绪队列中,从而模拟出调度返回这一操作。3、时间片轮转调度策略,我预先确定时间片的长度为2,在循环从就绪队列中调度进程时,在运行队列中将其执行2个时间点,若没有执行完,则重新插入。4、而对于多级队列调度策略,则首先建立PCB13此资料由网络收集而来,如有侵权请告知上传者立即删除。资料共分享,我们负责传递知识。*ready1,*ready2,*ready3,*
8、ready4;//多级调度队列策略时建立的四个就绪队列,再将这些就绪队列逐渐分别(从高优先级到低优先级就绪队列)“时间片轮转法”。最后输出运行、就绪队列1、就绪队列2、就绪队列3、就绪队列4、结束队列5个队列中进程。 我将进程随进入运行队列时间的
此文档下载收益归作者所有