实验一进程调度程序设计.docx_第1页
实验一进程调度程序设计.docx_第2页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验一 进程调度程序设计一、目的和要求1. 实验目的(1)掌握时间片轮转的进程调度算法;(2)掌握带优先级的进程调度算法;(3)选用面向对象的编程方法。2.实验内容编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法对五个进程进行调度。 “最高优先数优先”调度算法的基本思想是把CPU分配给就绪队列中优先数最高的进程。 静态优先数是在创建进程时确定的,并在整个进程运行期间不再改变。 动态优先数是指进程的优先数在创建进程时可以给定一个初始值,并且可以按一定原则修改优先数。例如:在进程获得一次CPU后就将其优先数减少1。或者,进程等待的时间超过某一时限时增加其优先数的值,等等.二、设计过程1、采用的数据结构:类名PCB2、成员函数的设计说明(1)函数名:void chushihua (int) ; 功能:初始化当前进程对象数据(2)函数名:void refresh(); 功能:进程等待操作即等待时间增加并重新计算优先级(3)函数名:void pcb _prin(); 功能:显示当前进程数据岛屏幕上(4)函数名:void run _pcb(); 功能:该进程的执行操作(5)函数名: float get_yxj(); 功能:当前进程的优先级信息作为返回值返回给调用函数(6)函数名: int get_time(); 功能:清理已运行结束的进程同时统计当前未运行完进程数3、全局函数设置(1)函数名:void run(); 功能:动态优先级模拟主要过程函数(2)函数名:paixu(); 功能:对当前进程按优先级从高到低排序原理为冒泡排序4、类的设计进程类pcb的private数据成员有float yxj(优先级浮点型)、int s_time(服务时间整形)、int w_time(等待时间 整形)、char name(进程名字字符型)。这些数据本身就是操作系统里非常敏感的数据,用类来设计保证了数据的安全性,类外任何函数都不能直接调用这些数据。三、实验流程图四、程序运行结果五、参考文献:/link?url=q6Uqx8Dx6ZPcSr84vOKi-yE_Nk8luNojVC7-2lGPt-ETc6bEiWSIgYj7Dp

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论