操作系统课程设计:进程调度算法实现报告.pdfVIP

  • 0
  • 0
  • 约1.28千字
  • 约 2页
  • 2026-01-25 发布于北京
  • 举报

操作系统课程设计:进程调度算法实现报告.pdf

实验二

实验名称:进程调度

实验目的

为配合《计算机操作系统》(第三版)课程的教学,通过在WINDOWS环境下,利用高级语

言模拟操作系统的实现。模拟操作系统原理的实现进程控制,能更深刻地操作系统工作

原理和操作系统实现方法,并提高程序设计能力。

1.在实验一的基础上增加调度算法实现先来先服务、短作业优先、优先权调度实验类型以及

时间片调度算法,使学生掌握低级调度的CPU分配的基本算法。

2.实现FCFS、SJF或优先权调度算法时,在进程创建时设置提交时刻和自动随机或手工指定服

务时间或优先权,并将该值保存到PCB中。根据该值对各个进程进行调度。实现时间片调度

算法时,如果进程不阻塞,在指定的时间片(如5秒)后调度下一个进程。

实验环境

编程环境:Codeblocks

运行环境:Windows7

实验原理及设计方案

采用多道程序设计方法的操作系统,在系统中要经常保留多个运行的作业,以提高系统效

率。作业调度从系统已接纳的暂存在输入井中的一批作业中挑选出若干个可运行的作业,并

为这些被选中的作业分配所需的系统资源。对被选中运行的作业必须按照它们各自的作业说

明书规定的步骤进行控制。

主要设计思想与算法(流程)

通过学习《计算机操作系统》(第三版)课程,通过在WINDOWS环境下,本次课程设计的

主要思想就是利用高级语言C++模拟操作系统的实现。模拟操作系统原理的调度算法,先来先

服务,短作业优先,时间片轮转的算法,能更深刻地操作系统工作原理和操作系统实现

方法。

先来先服务(FIFO)是谁先到就先运行谁,短作业优先(SJF)是将所有作业排序,运行需

要时间最短的一个,而优先级调度是比较优先级,优先运行优先级搞得作业,时间片轮转是

按照谁先来就先运行谁,在一个时间段内,如果没运行完就到下一个时间片进行,如果运行

完了,就继续下一个,系统将所有的就绪进程按先来先服务的原则,排成一个队列,每次调

度时,把CPU分配给队首进程,并令其执行一个时间片。时间片的大小从几ms到几百ms。当

执行的时间片用完时,由一个计时器发出时钟中断请求,调度程序便据此信号来停止该进程

的执行,并将它送往就绪队列的末尾;然后,再把处理机分配给就绪队列中新的队首进程,

同时也让它执行一个时间片。这样就可以保证就绪队列中的所有进程,在一给定的时间内,

均能获得一时间片的处理机执行时间。

实验结果(测试用例、实验结果)

实验总结

掌握并进一步熟悉操作系统进程的各种状态以及转换调度算法。

掌握利用高级语言模拟进程的执行,提高了编程设计能力。

学会使用最基本C++函数

文档评论(0)

1亿VIP精品文档

相关文档