该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

【问题描述】

多级反馈队列调度算法是操作系统中CPU处理机调度算法之一,该算法既能使高优先级的进程(任务)得到响应又能使短进程(任务)迅速完成。UNIX操作系统便采取这种算法。试用C语言模拟某多级反馈队列调度算法。

【具体要求】

多级反馈队列调度算法描述:

1、该调度算法设置四级就绪队列:前三级就绪队列采用时间片轮转法,时间片大小分别为2、4和8;最后一级就绪队列采用FIFO调度。

2、任务在进入待调度的队列等待时,首先进入优先级最高的队列等待。

3、首先调度优先级高的队列中的任务。若高优先级中队列中已没有调度的任务,则调度次优先级队列中的任务,依次类推。

4、对于同一个队列中的各个任务,按照队列指定调度方法调度。每次任务调度执行后,若没有完成任务,就被降到下一个低优先级队列中。

5、低优先级队列中的任务在运行时,若有高优先级任务新到达,那么低优先级任务在运行完一个时间片后中止运行,CPU马上分配给新到达的任务,即算法支持抢占式。(这部分可作为选做,最低要求可以是非抢占式的,即低优先级队列中的某任务完成规定的时间片后再去检查高优先级队列是否有新任务到达。)

6、为方便实现,时间以1为单位,用整数数据表示;且每个时间点,最多只有一个任务请求服务(即输入)。

【实现提示】

实现一个队列数组(queue array),该数组的每个元素都代表一个长度可变的队列,队列中的每个元素则代表一个任务job,任务结构定义如下:

typedef struct Job {

int JobNum; //任务号

int ArriveTime; //到达时刻

int ResponTime //响应时间

int RunTime; //运行时间

struct Job *next;

}

【测试数据】

输入:任务号 到达时刻 运行时间

输出:任务号 响应时间 离开时刻 周转时间

样例:

输入数据:

任务号 到达时刻 运行时间

1 0 3

2 1 2

3 4 15

4 5 2

5 6 6

6 12 2

输出数据(非抢占式):

任务号 响应时间 离开时刻 周转时间

2 1 4 3

4 1 8 3

1 0 11 11

6 3 17 5

5 2 21 15

3 0 30 26

输出数据(抢占式):

任务号 响应时间 离开时刻 周转时间

2 1 4 3

4 1 8 3

1 0 11 11

6 0 14 2

5 2 21 15

3 0 30 26

自己设计多批数据测试,报告上要求写出多批数据测试结果。

c语言模拟多级反馈队列调度算法实验报告,求助多级反馈队列调度算法的实现,哪位大神帮帮忙啊...相关推荐

  1. 赫夫曼编码c语言 排序部分,c语言构造哈夫曼树输出哈夫曼编码出错 ,跪求大神帮我找错...

    c语言构造哈夫曼树输出哈夫曼编码出错 ,跪求大神帮我找错0 youxun0952016.09.07浏览120次分享举报 #include #include #include typedef struc ...

  2. c语言截图代码,截图代码 哪位大神帮我找一下错,截出来的图是这样子的

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 终于找到了,前段时间研究jpg的时候,顺便做的一个实验,直接输出bmp文件.参考了微软的一个很老的代码里的字节对齐..但愿对你有帮助吧. #include ...

  3. C语言判断一个数为超级素数,一个超级素数问题,时间限制是1秒钟,下面是题,哪位大触帮帮忙...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 求素数的函数我可以提供,但是超级素数无能为力啊 #include long long a[10000000]; int main() { a[0]=0; ...

  4. c语言1秒钟算几次,一个超级素数问题,时间限制是1秒钟,下面是题,哪位大触帮帮忙...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 求素数的函数我可以提供,但是超级素数无能为力啊 #include long long a[10000000]; int main() { a[0]=0; ...

  5. c语言链表最高响应比优先,操作系统--最高响应比优先调度算法实验报告..doc

    操作系统--最高响应比优先调度算法实验报告. 进程调度一.实验题目与要求 编写程序完成批处理系统中的作业调度,要求采用响应比高者优先的作业调度算法.实现具体包括:首先确定作业控制块的内容和组成方式:然 ...

  6. 电力系统matlab实验报告,基于matlab语言计算电力系统暂态稳定仿真程序实验报告.docx...

    基于matlab语言计算电力系统暂态稳定仿真程序实验报告 BeijingJiaotongUniversity 电力系统分析 暂态稳定分析实验 学院:电气工程学院 班级:xxxxxxxx 学号:xxxx ...

  7. 数据结构实验报告—栈和队列

    作者:命运之光 专栏:数据结构 目录 实验内容 实验三 栈和队列 一.需求分析 二.概要设计 三.详细设计 四.调试分析 五.测试结果 附录:源程序代码(带注释) 实验内容 实验三栈和队列 实验环境: ...

  8. c语言图形时钟编程,C语言图形时钟课程设计实验报告.doc

    C语言图形时钟课程设计实验报告.doc 目录 1.系统功能要求 . 2. 数据结构设计及 说明 . 3.程序结构(画流程图) . 4.各模块的功能 . 5.试验结果(包括输入数据和输出结果) . 6. ...

  9. c语言程序设计编程解读,C语言程序设计第三次实验报告解读

    <C语言程序设计第三次实验报告解读>由会员分享,可在线阅读,更多相关<C语言程序设计第三次实验报告解读(15页珍藏版)>请在人人文库网上搜索. 1.C语言程序设计实验报告专业 ...

最新文章

  1. 那些实用与颜值齐飞的桌面!
  2. python处理utf8编码中文,及打印中文列表和字典
  3. 丑憨批的爬虫笔记3(实例)
  4. java 难题_您可以避免的6种组织成长难题
  5. 为什么你拼命学,却一无所成?
  6. java基础的第二轮快速学习!day10
  7. LINUX下载编译gperf
  8. 联想m7216更换墨粉流程图_联想M7216打印机更换墨后继续显示需更换
  9. steam用移动网不显示头像
  10. 【单片机】按键消抖及原理(硬件和软件方法详解)
  11. 华为HarmonyOS手机系统如何下载手机淘宝APP领取淘宝内部隐藏优惠券?
  12. 校招——2021多益网络软件开发笔试和面试
  13. 可否推荐一个香港主机?
  14. ospf协议(包含负载分担)
  15. 电脑鼠标在右键时一直转圈不显示解决措施
  16. java及vue实现获取电脑打印机及打印功能
  17. 273 块钱购入的域名,值了
  18. 阿里云oss对象存储实现自定义域名
  19. uefi模式装gho格式系统失败的原因
  20. 用Python实现栅格计算器中的Con和Power

热门文章

  1. 1000小时编程恋爱初体验
  2. 获取文件哈希值_浅谈查找---哈希查找
  3. adduser 添加用户和mount 硬盘
  4. java基础学习笔记(四、常用基础类)
  5. Mybatis相关知识汇总
  6. innerHTML,innerText是什么意思?怎么使用?
  7. 【SA8295P 源码分析】28 - QNX Ethernet MAC 驱动 之 emac_mdio_link_monitor_thrd() MDIO监控线程 源码分析
  8. Xcode 系统崩溃问题01
  9. C语言的三大基本结构
  10. Sql Server导入Access数据库报不可识别的数据库格式 Microsoft JET Database Engine