时间片轮转调度算法的实验报告

实验概述:【实验目的及要求】

用C语言编程实现时间片轮转调度算法

【实验原理】

基于调度算法思想用C语言编程实现Visual C++6.0实验内容:

本实验模拟在单处理机情况下处理机调度,用C语言编程实现先来先服务和最短作业优先调度算法。

【实验方案设计】

时间片大小固定,由用户输入。进程个数由用户输入。

每个进程用一个PCB表示。PCB包括进程名,到达时间,运行时间,剩余时间,进程状态,链接指针。其中,进程名,到达时间和运行时间由用户输入,剩余时间的初值等于运行时间。为简单起见,进程状态设为三种:就绪,运行和完成。链接指针指向下一个进程的PCB;

按照进程到达的先后顺序排成一个队列。设置一个队头指针指向队列中第一个进程,并设置一个队尾指针指向队列中的最后一个进程;

c. 执行调度时,先选择队首的第一个进程运行。另外设置一个指向当前运行进程的指针;

由于本实验是模拟实验,所以对选中进程并不实际启动运行,而只是执行:

被选中进程的状态置为运行态;

被选中进程的剩余时间减去时间片大小;

按照队列的顺序依次输出每个进程的进程名,到达时间,运行时间,剩余时间,进程状态。

用这三个操作来模拟进程的一次运行;

进程运行一次后,以后的调度则将当前指针依次下移一个位置,指向下一个进程,即调整当前运行指针,以指示应运行进程。同时还应判断该进程的剩余时间是否为0。如果不为0,则等待下一轮的运行;如果该进程的剩余时间为0,则将该进程的状态置为完成态,并退出队列;

f. 若处于就绪态的进程不为空,则重复第d步和第e步直到所有进程都运行完为止。

【实验过程】(实验步骤、记录、数据、分析)

测试用例1:

屏幕显示:Please input the process name, arrive time and run time

输入:

1 2 1

2 3 2

3 4 3

屏幕显示:Please input the slice

1

屏幕输出结果:

********************************************

name arrive run rest state

1 2 1 0 running

2 3 2 2 ready

3 4 3 3 ready

********************************************

name arrive run rest state

2 3 2 1 running

3 4 3 3 ready

********************************************

name arrive run rest state

2 3 2 1 ready

3 4 3 2 running

********************************************

name arrive run rest state

2 3 2 0 running

3 4 3 2 ready

********************************************

name arrive run rest state

3 4 3 1 running

********************************************

name arrive run rest state

3 4 3 0 running

********************************************

测试数据2:

2 3 1

1 2 3

5 4 2

测试数据3:

c语言实现作业调度算法实验报告,时间片轮转调度算法的实验报告.doc相关推荐

  1. 操作系统实验二——时间片轮转调度算法(RR算法)(新进程放队首和队尾两种C++实现)

    情况介绍 基本原理 系统将所有就绪进程按照FCFS的原则,排成一个队列依次调度. 把CPU分配给队首进程,执行一个时间片(10-100ms). 时间片用完后,系统计时器发出时钟中断,该进程将被剥夺CP ...

  2. c语言实现进程调度优先权调度算法和时间片轮转调度算法

    ** 1.算法原理 ** 时间片轮转调度算法 a.在时间片轮转调度算法中,系统根据先来先服务的原则,将所有的就绪进程排成一个就绪队列,并且每隔一段时间产生一次中断,激活系统中的进程调度程序,完成一次处 ...

  3. 【进程调度算法】时间片轮转调度算法、多级反馈队列调度算法(Java实现)

    时间片轮转调度算法(RR)是十分简单的进程调度算法. 进程在执行时的情况 在该时间片内进程执行完毕,这种情况调度程序将立即把该进程弹出队列,并把CPU分配给新的队首进程 在该时间片内进程未执行完毕,调 ...

  4. 操作系统作业调度算法c语言,操作系统课程设计报告电梯调度算法c语言实现.doc...

    操作系统课程设计报告电梯调度算法c语言实现 操作系统课程设计报告电梯调度算法c语言实现 :调度 算法 电梯 课程设计 操作系统 操作系统课程设计报告 模拟操作系统课程设计 写一个简单的操作系统 篇一: ...

  5. 操作系统实验二(调度算法模拟-先进先出-时间片轮转法-优先服务调度算法)

    实验二 进程调度 一.     实验目的 1.       理解进程运行的并发性. 2.       理解处理器的三级调度. 3.       掌握先来先服务的进程调度算法. 4.       掌握短 ...

  6. python2048小游戏程序设计大作业_C语言大作业报告——2048小游戏程序

    大作业题目 类型 游戏 班 号 学 号 所在院系 学 期 2020 年春季学期 任课教师 实验类型 综合设计型 实验目的:  掌握程序设计的基本算法和简单数据结构基础,能够综合运用基本控制语句.算法 ...

  7. 进程调度之时间片轮转调度算法(实验三)

    在分时系统中,最简单最常用的就是基于时间片轮转调度算法,时间片轮转调度算法是非常公平的处理机分配方式,让就绪队列的每个进程每次仅运行一个时间片. 1.时间片轮转调度算法的基本原理 在时间片轮转调度算法 ...

  8. java语言实现的时间片轮转调度算法和动态优先级调度算法

    java语言实现的时间片轮转调度算法和动态优先级调度算法 一.代码: 二.程序运行演示 总结 贪方便用java实现老师的作业,虽然写的乱七八糟的,但是也想发出来给人看看,评论喷我吧!. 一.代码: 作 ...

  9. 安徽工程大学C语言程序设计实验报告,安徽工业大学嵌入式实验报告.docx

    安徽工业大学嵌入式实验报告 <嵌入式系统实验报告>指导教师:陆勤姓名:程少锋学号:139074366班级:物联网131班实验一B 熟悉实验开发环境一.实验目的熟悉ADS1.2 开发环境,学 ...

最新文章

  1. 3D 激光雷达地图相对精度自动评价算法
  2. dicom多帧转换_Python解析多帧dicom数据详解
  3. 父与子的编程之旅 python 3 pdf_《父与子的编程之旅》嵌套循环例题解析
  4. 计算机视觉--优秀开源方案集锦
  5. xcode7.1 安装不了Alcatraz怎么办.看这里
  6. python 0基础起步学习day2
  7. 重学java基础第二十三课:java基础 注释
  8. java字符串去掉一头一尾_快学Scala第13章----集合
  9. CVPR 2020|华为发布基于连续进化的CARS算法,0.4GPU天输出帕累托前沿
  10. 9000.消息中间件MQTT
  11. HDFS-HA-federation的机制和功能组件
  12. uglifyjs报错 webpack_vue使用uglifyjs-webpack-plugin后打包报错
  13. 【报告分享】2020中国时尚跨境电商发展报告.pdf(附下载链接)
  14. 游戏开发最佳10个工具与技术方案
  15. NYoj 366 D的小L 【DFS】
  16. 2022年中国中式快餐行业发展现状、市场竞争格局及未来发展趋势分析[图]
  17. 一文看懂新能源汽车国家政策(附政策汇总)
  18. 物联网产业规模已达万亿,目前的主要应用领域有哪些?
  19. 双向可控硅在只需要正向导通时能否当作单向可控硅使用?
  20. php随机生成手机号码

热门文章

  1. 关闭新版Chrome中的深色主题
  2. Maven超细致史上最全Maven下载安装配置教学(2022更新...全版本)建议收藏...赠送IDEA配置Maven教程
  3. 西电计算机绘图试题及答案,【图】- 西安电子科技大学2021春 计算机绘图(大作业)答 - 苏州常熟常熟周边其他教育培训 - 苏州百姓网...
  4. win98 支持html5,穿越1999:如何装一台Win98时代的PC
  5. QPainter::begin: Paint device returned engine == 0, type: 2 解决方法,在使用第三方库Qt可视化节点编辑器时
  6. 中国计算机软件行业分析3--软件倾销
  7. 【python句柄获取】——简单明了的获取窗口句柄,并使用句柄操作获取相应内容(全网最详细)
  8. 64位windows10安装Sql server 2000
  9. greensock下载_使用GreenSock的DrawSVG创建动画SVG加载器
  10. 51单片机八人抢答器c语言,抢答器 - 基于51单片机 - 8人有程序较完整.doc