没有合适的资源?快使用搜索试试~ 我知道了~
《计算机操作系统原理》课外实验报告(1).docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 153 浏览量
2022-12-22
19:40:31
上传
评论
收藏 58KB DOCX 举报
温馨提示
试读
18页
《计算机操作系统原理》课外实验报告(1).docx
资源推荐
资源详情
资源评论
《计算机操作系统原理》课外实验报告(1)
第 1 页 共 18 页
三一文库(www.31doc.com)
〔《计算机操作系统原理》课外实验报告〕
*《计算机操作系统原理》课外实验报告
设计思路和内容
先用随机函数初始化 PCB 结构体,从而模拟 3 个进程的
特性,然后 voidProInsert(PCB*p)/*优先数插入算法,将进
程 p 按其优先级插入到就绪队列中相应位置*/、
voidPrintPCB(PCB*q)输出进程控制字信息、
voidPrintLine(PCB*head)/*输出以 p 为队首的队列中所有
PCB 信息*/、voidPrintAll()输出某一时刻进程队列信息、
voidFirstIn()/*将就绪队列中进程调入运行队列*/等函数
体,实现进程调度过程中最基本的功能。在主函数中先调用
voidCreatePCB()/*随机产生 n 个进程,并对各个进程随机
赋予初值*/,从而创建了就绪队列,为进程调度做好准备。
而后 voidSP()/*静态优先级抢占式调度策略*/、voidDP()/*
动态优先级抢占式调度策略*/、voidRR()/*时间片轮转调度
策略*/等来分别实现静态优先级抢占式调度策略、动态优先
《计算机操作系统原理》课外实验报告(1)
第 2 页 共 18 页
级抢占式调度策略和时间片轮转调度策略三种功能。而最后
的多级反馈调度策略实现因为与前三者有很大的不同,所以
在同一 cpp 中我几乎是重新重构了所有的基本算法来帮助快
速实现多级调度策略的。
首先,对于时间的复杂性,我在进程调度实验中忽略了
运行队列(CPU 处理器的模拟)处理程序是依据进程进入就绪
队列的时间来调度的,所以 1、静态优先级抢占式调度策略
最基本的思想是循环将就绪队列中程序调入到运行队列中,
再在运行队列中执行对进程的操作。2、动态优先级抢占式
调度策略的基本思想是循环的调度就绪队列中进程程序,然
后再运行队列中对进程的优先级进行动态的操作,如每执行
一次进程,它的优先级就相应的减 2.,如果没有运行完,就
将其重新按照优先级重新插入到就绪队列中,从而模拟出调
度返回这一操作。3、时间片轮转调度策略,我预先确定时
间片的长度为 2,在循环从就绪队列中调度进程时,在运行
队列中将其执行 2 个时间点,若没有执行完,则重新插入。
4、而对于多级队列调度策略,则首先建立
PCB*ready1,*ready2,*ready3,*ready4;多级调度队列策略
时建立的四个就绪队列,再将这些就绪队列逐渐分别(从高
优先级到低优先级就绪队列)“时间片轮转法”。最后输出运
行、就绪队列 1、就绪队列 2、就绪队列 3、就绪队列 4、结
《计算机操作系统原理》课外实验报告(1)
第 3 页 共 18 页
束队列 5 个队列中进程。
我将进程随进入运行队列时间的影响与进程调度分开
编写程序,进程阻塞实验来模拟进程进入 CPU 时,遇到阻塞
情况下进入到阻塞队列中,从而简化了程序的书写。
*核心数据结构设计和操作函数设计
typedefstructnode{
charname[10];/*进程名*/
charID;/*进程标识名*/
intpriority;/*优先级*/
charstate;/*进程状态标志*/
intin_time;/*进程进入 CPU 的时间*/
intall_time;/*进程需要的总时间*/
《计算机操作系统原理》课外实验报告(1)
第 4 页 共 18 页
intrun_time;/*进程已运行的时间*/
intblock_time;/*进程被阻塞的时间点*/
intweak_time;/*进程被唤醒的时间点*/
intround;/*进程时间轮转时间片*/
structnode*next;/*下个 PCB 指针*/
}PCB;/*进程控制块结构字*/
PCB*run,*ready,*finish,*tail_r,*tail_f;/*队列指
针,依次定义运行队列、就绪队列、结束队列*/
PCB*ready1,*ready2,*ready3,*ready4;多级调度队列
策略时建立的四个就绪队列
voidSP()/*静态优先级抢占式调度策略*/
{
剩余17页未读,继续阅读
资源评论
是空空呀
- 粉丝: 168
- 资源: 3万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 华为OD介绍.doc华为OD介绍.doc
- 实验7-定时器的定时实验.docx
- 基于matlab实现的中文字符的识别代码.rar
- 微信小程序设计方法.doc
- 基于matlab实现的微分先行PID控制实现对液位的控制
- 基于matlab实现的图像拼接,效果非常好,用matlab实现的.rar
- 基于matlab实现的图像拼接,所谓图像拼接就是将有共同点的两张或者多张图像进行融合.rar
- 基于matlab实现的图像处理的程序,能够将一个破碎的图像进行拼接.rar
- 基于matlab实现的三轴无刷云台控制代码,当前版本0.3G,可配置于无人机的正下方,可稳定采集图像.rar
- 基于matlab实现的同步电机模型的MATLAB仿真论文资料.rar
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功