设供用户使用的主存空间为 100K,采用可变式分区存储管理,现有一个作业 A,具体信息为:进入输入井时间(时)为10.1、需要计算时间(分)为42、主存量要求(K)为15,高级调度和低级调度均采用 SJF 算法,分别计算各作业进 入主存时间,开始运行时间,结束运行时间及周转时间。(注:采用移动技术)
时间: 2023-09-09 15:14:24 浏览: 83
首先,我们需要确定可用分区。由于采用可变式分区存储管理,初始时可用分区大小为100K,因此我们只有一个可用分区。
作业A需要15K的主存空间,因此可以被装入主存。接下来按照SJF算法进行高级调度和低级调度。
高级调度:
作业A需要计算时间为42分钟,因此需要在进入主存后的42分钟内完成。现在是10时1分,因此作业A必须在10时43分之前完成。如果没有其他进程需要运行,则可以直接运行作业A。否则,需要先运行需要计算时间更短的进程。
低级调度:
假设此时有作业B和作业C在等待运行。它们的计算时间分别为20分钟和30分钟。根据SJF算法,应该先运行计算时间更短的作业B。因此,作业B会被移入主存,并在10时1分开始运行,运行结束时间为10时21分。
此时,作业A可以被装入主存。由于只有一个可用分区,作业A必须与作业B所在的分区合并。由于作业B已经运行结束,因此可以将作业A放在作业B所在的分区。此时,可用分区大小变为85K。
作业A开始运行的时间为10时21分,结束时间为10时43分。因此,作业A的周转时间为22分钟。
总结:
- 作业B进入主存时间为10时1分,开始运行时间为10时1分,结束运行时间为10时21分,周转时间为20分钟。
- 作业A进入主存时间为10时21分,开始运行时间为10时21分,结束运行时间为10时43分,周转时间为22分钟。
相关问题
设供用户使用的主存空间为 100K,采用可变式分区存储管理,现有一个作业 C,具体信息为:进入输入井时间(时)为10.5、需要计算时间(分)为24、主存量要求(K)为50,高级调度和低级调度均采用 SJF 算法,分别计算各作业进 入主存时间,开始运行时间,结束运行时间及周转时间。(注:采用移动技术)
首先,我们需要将主存空间分为若干个可变大小的分区,以适应不同作业的主存需求。假设初始时主存空间为一块 100K 的连续空间,我们采用首次适应算法将其分为以下 3 个分区:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 49 | 50 |
| 2 | 50 | 99 | 50 |
此时,作业 C 进入输入井。由于采用 SJF 算法,需要先进行高级调度,即选择最短作业优先进入主存。由于作业 C 需要 50K 的主存,且此时只有一块 50K 的空闲分区,因此作业 C 被分配到分区 1 中。作业 C 的进入主存时间为 10.5 时,开始运行时间为 10.5 时,结束运行时间为 10.5 + 24 = 34.5 时,周转时间为 34.5 - 10.5 = 24 分钟。
此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 49 | 50 |
| 2 | 50 | 99 | 50 |
接下来,我们假设又有作业 A、B、D、E 先后进入输入井,它们的主存需求分别为 20K、30K、80K、45K。根据 SJF 算法,我们按照作业需要的主存大小将它们排序,得到作业 A、B、E、D。然后进行低级调度,即将它们依次分配到主存中。
作业 A 首先进入主存,由于只需要 20K 的主存,可以分配到分区 1 中的剩余空间中。作业 A 的进入主存时间为 10.5 + 24 = 34.5 时,开始运行时间为 34.5 时,结束运行时间为 34.5 + 15 = 49.5 时,周转时间为 49.5 - 34.5 = 15 分钟。
此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 19 | 20 |
| 2 | 20 | 49 | 30 |
| 3 | 50 | 99 | 50 |
接着,作业 B 进入主存,由于需要 30K 的主存,可以分配到分区 2 中。作业 B 的进入主存时间为 49.5 时,开始运行时间为 49.5 时,结束运行时间为 49.5 + 20 = 69.5 时,周转时间为 69.5 - 34.5 = 35 分钟。
此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 19 | 20 |
| 2 | 50 | 79 | 30 |
| 3 | 80 | 99 | 20 |
作业 E 进入主存,由于需要 45K 的主存,可以分配到分区 3 中。此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 19 | 20 |
| 2 | 50 | 79 | 30 |
| 3 | 80 | 99 | 20 |
作业 D 进入主存,由于需要 80K 的主存,无法分配到任何一个分区中。此时,我们需要进行移动技术,将已经运行完毕的作业 A 和部分分区中的内容移出主存,以为作业 D 腾出足够的空间。
具体来说,我们可以将作业 A 占用的分区 1 中的内容移动到分区 2 的空闲空间中,然后将分区 1 和分区 2 合并为一个 50K 的分区。此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 49 | 50 |
| 2 | 50 | 99 | 50 |
然后,我们可以将作业 D 分配到分区 1 中。作业 D 的进入主存时间为 69.5 + 20 = 89.5 时,开始运行时间为 89.5 时,结束运行时间为 89.5 + 40 = 129.5 时,周转时间为 129.5 - 34.5 = 95 分钟。
此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 49 | 50 |
| 2 | 50 | 79 | 30 |
| 3 | 80 | 99 | 20 |
最后,作业 B 运行完毕,其占用的分区 2 变为了空闲分区,我们可以将其与分区 3 合并为一个 50K 的分区。此时,主存中的分区情况如下:
| 分区号 | 起始地址 | 终止地址 | 大小(K)|
|-------|---------|---------|---------|
| 1 | 0 | 49 | 50 |
| 2 | 50 | 99 | 50 |
因此,作业 C、A、B、E、D 的进入主存时间、开始运行时间、结束运行时间和周转时间分别为:
| 作业 | 进入主存时间 | 开始运行时间 | 结束运行时间 | 周转时间 |
|-----|------------|------------|------------|--------|
| C | 10.5| 10.5| 34.5| 24|
| A | 34.5| 34.5| 49.5| 15|
| B | 49.5| 49.5| 69.5| 35|
| E | 69.5| 69.5| 89.5| 20|
| D | 89.5| 89.5| 129.5| 95|
设供用户使用的主存空间为 100K,采用可变式分区存储管理,现有五个作业 A、B、C、 D、E,具体信息如题 33 表,高级调度和低级调度均采用 SJF 算法,分别计算各作业进 入主存时间,开始运行时间,结束运行时间及周转时间。(注:采用移动技术)
首先,我们需要对作业进行排序,按照作业的运行时间从短到长进行排序。排序后的作业信息如下:
| 作业 | 长度(K) |
|-----|-----------|
| E | 4 |
| C | 9 |
| D | 12 |
| A | 15 |
| B | 20 |
接下来,我们按照 SJF 算法进行进程调度。
1. 高级调度
在高级调度中,我们按照作业的长度来判断是否进入内存。由于所有作业的长度之和小于主存空间,因此所有作业都可以进入内存。进入内存的顺序如下:
| 作业 | 长度(K) |
|-----|-----------|
| E | 4 |
| C | 9 |
| D | 12 |
| A | 15 |
| B | 20 |
2. 低级调度
在低级调度中,我们按照作业的长度来选择运行作业。初始时,所有作业都处于就绪状态,按照长度从小到大排序。因此,作业 E 最先运行。
- 作业 E 进入时间为 0,开始运行时间为 0,结束运行时间为 4,周转时间为 4。
- 作业 C 进入时间为 0,开始运行时间为 4,结束运行时间为 13,周转时间为 13。
- 作业 D 进入时间为 0,开始运行时间为 13,结束运行时间为 25,周转时间为 25。
- 作业 A 进入时间为 0,开始运行时间为 25,结束运行时间为 40,周转时间为 40。
- 作业 B 进入时间为 0,开始运行时间为 40,结束运行时间为 60,周转时间为 60。
因此,各作业的进入主存时间、开始运行时间、结束运行时间和周转时间如下:
| 作业 | 进入主存时间 | 开始运行时间 | 结束运行时间 | 周转时间 |
|-----|---------------|---------------|---------------|----------|
| E | 0 | 0 | 4 | 4 |
| C | 0 | 4 | 13 | 13 |
| D | 0 | 13 | 25 | 25 |
| A | 0 | 25 | 40 | 40 |
| B | 0 | 40 | 60 | 60 |