信安阿鑫 2022-05-22 15:30 采纳率: 66.7%
浏览 51
已结题

操作系统 短进程优先SJF算法

(1)对N个进程分别采用四种进程调度算法(轮转调度、静态优先级调度、动态优先级调度、最短进程优先调度)执行调度模拟。
(2)每个用来标识进程的进程表项(进程控制块 PCB)可用结构体来描述,包括以下字段(具体字段及数量可根据需要自行定义,此处仅供参考):
(a) 进程标识数 ID
(b) 进程优先数 PRIORITY,并规定优先数越大的进程,其优先权越高
(c) 进程运行所需CPU总时间片数ALLTIME,已占用 CPU 时间片数 CPUTIME。当进程运行完毕时,ALLTIME 变为 0
(d) 进程的待阻塞时间片数 STARTBLOCK,表示当进程再运行 STARTBLOCK个时间片后,进程将进入阻塞状态
(e) 进程被阻塞的时间片数 BLOCKTIME ,表示已阻塞的进程再等待 BLOCKTIME 个时间片后,将转换成就绪状态
(f) 进程状态 STATE
(g) 队列指针 NEXT,用来将 PCB 排成队列
(3)进程数量要求可以指定任意数量,每个进程运行所需的CPU时间数要求可以指定任意数量或随机生成。
(4)静态优先级调度,每个进程的优先级要求可以任意指定或随机生成。
(5)动态优先级调度原则:进程在就绪队列中呆一个时间片,优先数增加 1;进程每运行一个时间片,优先数减 3(这一规则主要用于动态优先级调度算法)。
(6)最短进程优先中的进程长度根据剩余所需CPU时间片数动态计算。
(7)为了观察每个进程的调度过程,程序应将每个时间片内的进程的情况显示出来,包括正在运行的进程,处于就绪队列中的进程和处于阻塞队列中的进程。
(8)要求在linux ubuntu环境下使用c/c++编写。*/

最短进程优先中的进程长度根据剩余所需CPU时间片数动态计算是什么意思呢?在实现的时候,短进程不是可以直接确定下来确定的服务队列咩,为什么还要动态计算呢

  • 写回答

0条回答

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 5月30日
      • 创建了问题 5月22日

      悬赏问题

      • ¥15 我是在windows环境下通过IIS部署django项目,但是是这样怎么处理呢
      • ¥15 python 循环语句问题
      • ¥30 51单片机测量脉冲周期/频率并加以计算、显示
      • ¥50 图书期刊管理系统c++
      • ¥20 c语言基础,设计带界面的小应用
      • ¥15 Erplab无法创建事件清单
      • ¥15 fdisk输入n后不提示选择分区类型
      • ¥15 关于#java#snaker 工作流的问题,如何解决?
      • ¥15 C语言,这个程序该怎么写,急
      • ¥15 新下载的 Linux虚拟机 红帽8 没有下载中文包,怎么切换中文