当前位置: 首页 > 知识库问答 >
问题:

最短作业 下一页 调度代码逻辑帮助 BASH

郭子航
2023-03-14

我正在尝试使用bash编写代码来模拟下一个最短作业或下一个流程,但我在理解它背后的逻辑时遇到了一些困难。我从一个有进程名称、到达时间和突发时间的文件中读取。所以让我们假设

一个|, ρ5

B | 2 | 3

C|3|2

D|4|4

E | 6 | 3

这是我目前为止的思考过程。我使用bash脚本,所以我把数据分成3个独立的数组。过程、到达和爆发。我创建了第四个名为totaltime的数组。事实上,我知道这应该是时间表的样子

|1 |流程A |5 |流程C |7 |流程B |10 |流程D |14 |流程E |17|

我的代码逻辑是首先检查到达数组并找到最小值,该行对应于要调度的第一个进程。下一步检查哪些进程的到达时间小于第一个进程的突发时间。在这组进程中找到最聪明的突发时间。现在这就是我被困的地方。我是否使用if语句检查哪些进程小于第一个突发时间,然后使用for循环查找该组中最小的突发时间?之后,我将如何安排第三个进程?

共有1个答案

舒阳州
2023-03-14

您可以做的是,创建一个小于第一个突发时间的进程数组,然后对该数组进行排序。第一个结果将是最短的突发时间。

 类似资料:
  • 假设以下进程在指定的时间到达执行。每个进程将运行列出的时间量。 我想绘制甘特图并计算抢占式最短作业优先调度的平均等待时间。 解决办法 http://imgur.com/fP8u61C 等待时间为2毫秒。 请告诉我这是否正确。 我怀疑的步骤是,在进程B到达的3ms时,调度程序是完成进程A还是启动进程B。

  • 到目前为止,我们根据它们的到达时间(在FCFS调度中)调度这些进程。 但是,SJF调度算法根据其突发时间安排进程。 在SJF调度中,就绪队列中可用进程列表中的突发时间最短的进程将在下一个进行调度。 然而,预测一个过程所需的突发时间是非常困难的,因此这个算法在系统中很难实现。 SJF的优势 最大吞吐量 最低的平均等候时间和周转时间 SJF的缺点 可能会面临饥饿问题 这是不可实现的,因为一个进程的确切

  • 所以我正在研究调度,包括FCFS和最短作业优先。我首先真的在纠结我最短的工作,我看不到我的逻辑错误。我把它打印出来,有些数字是正确的,但不是全部。我使用的测试文件包含以下文本: 我使用 任何帮助,指针或代码,将不胜感激! 编辑我认为我的问题是基于sfj函数的逻辑。对于输入,第一列是进程id,第二列是到达时间,第三列是突发时间或进程需要cpu多长时间。 我得到的输出是: 当我真正期望时:

  • 我熟悉最短进程下一个调度算法(SJF),它是一种非抢先算法。但是,该算法一次只能处理一个突发时间最小的进程。是否可以一次修改为“下一个最短流程2”? 所以对于这里提到的例子: 第一行表示进程总数。随后的行表示进程ID、到达时间、突发时间。 一次有两个流程的SJF计划将按如下方式工作: 这里 Idle表示当前有多少处理器空闲。在这种情况下,有2个处理器。可以观察到,在时间< code>t=4,有2个

  • 问题内容: 如何使用AJAX获取下一页/上一页。 如何在浏览器中调用: 要么 返回的只是文本。 应该以这种格式加载页面: 1-1或1 当用户单击下一页/上一页按钮时,如何将该页码传递给ajax调用并显示结果。 另外,我该如何跟踪用户当前正在浏览的页面?以及我该如何为页面设置最大最小值,例如我有100个页面却没有拨打101页面 http://jsfiddle.net/2b8gR/5/ 的HTML J

  • 我正在尝试在java中编写CPU调度模拟器。进程按照顺序处理,因此应该首先处理具有最少突发时间(处理时间)的进程。在开始之前,我在ArrayList中输入所有进程,指定名称,突发时间 问题是进程有不同的到达时间。我如何编辑代码来考虑这个到达时间。 我只需要编辑代码的一部分,让我的进程具有最少的突发时间(相对于到达时间) 样本输出