首页 > 试题广场 >

假设就绪队列中有10个进程,以时间片轮转方式进行进程调度,时

[单选题]
假设就绪队列中有10个进程,以时间片轮转方式进行进程调度,时间片大小为300ms,CPU进行进程切换需要花费10ms,则系统开销所占比率和 进程数目增加到30个、其余条件不变时系统开销所占的比率 相比,其结果是()。
  • 大于
  • 等于
  • 小于
  • 不能确定

解析:


进程数为 10 的情况下,系统开销比率等于切换进程总时间 / 进程总共运行时间,其中切换进程运行时间为 10*10ms ,进程运行总时间为 300*10+10*10ms ,因此系统开销比率为 10*10/(300*10+10*10), 可以看出系统开销比率与进程数无关,故选择等于选项。

发表于 2015-08-07 15:39:27 回复(10)
谁说所有进程都是300ms执行完?如果那个进程执行时间不等呢,不应该是不确定么
发表于 2015-11-13 10:28:01 回复(5)

我的理解是这样的,这个题目建立在所有进程时长总和为 300ms 的倍数的基础上。
理论基础是 系统开销比 = 进程切换总时间(开销) / 进程运行总时间(开销+进程运行时间和)
所以假设进程数为 K(虽然这个假设没多大用),为了完成这样的K个进程我们会发生 n 次上下文切换, 那么 系统开销比 = n * 10 / n * (10 + 300), 化简则为 10 / (10 + 300),这样的情况下,系统开销比率就和进程数无关。
但是! 这个解释的问题在于

  1. 我们无法保证每个进程的长度都大于300ms,如果有进程在时间片用完前结束,提前切换,上述公式则不成立;
  2. 即使所有进程都大于300ms, 但我们也没办法保证在最后一个时间片,前后两次剩下的那些进程时间是相同或成比率来满足上述公式。

所以这就是我觉得这个题目不严谨和让我疑惑的地方。
PS:上网简单搜了一下,这似乎是一道考研题,答案的确说的是相等,但是看其他人的解释好像也没看到特别有说服力的。欢迎大家给我的解释挑刺,批评指正蛤~~~

发表于 2017-09-21 22:45:55 回复(1)
要注意系统开销比例的计算方法:切换进程总时间/进程总的运行时间。可以知道,这个比例与具体进程数无关。
发表于 2016-07-07 15:27:27 回复(2)
处理一个进程的总时间 = 300 + 10 ms
切换进程花费 10ms,则系统开销比率=10 /(300 + 10) 与进程数目无关

编辑于 2020-02-26 20:32:12 回复(0)
时间片轮转调度算法主要适用于分时系统。在这种算法中,系统将所有就绪进程按到达时间的先后次序排成一个队列,进程调度程序总是选择就绪队列中第一个进程执行,即先来先服务的原则,但仅能运行一个时间片,如100ms。在使用完一个时间片后,即使进程并未完成其运行,它也必须释放出(被剥夺)处理机给下一个就绪的进程,而被剥夺的进程返回到就绪队列的末尾重新排队,等候再次运行。

在时间片轮转调度算法中,时间片的大小对系统性能的影响很大。如果时间片足够大,以至于所有进程都能在一个时间片内执行完毕,则时间片轮转调度算法就退化为先来先服务调度算法。如果时间片很小,那么处理机将在进程间过于频繁切换,使处理机的开销增大,而真正用于运行用户进程的时间将减少。因此时间片的大小应选择适当。
发表于 2016-03-20 17:35:16 回复(0)
操作系统调度耗时本身要算到时钟的时间片里。 操作系统的调度逻辑是:发生中断->处理调度->发生中断->处理调度... 一个时间片长度就是两次中断发生之间的间隔。因此,系统开销比率 = 调度耗时/时间片长度 所以进程数和系统开销是无关的😌
发表于 2017-08-27 08:12:31 回复(0)
系统开销比率 = 调度耗时/时间片长度 
所以进程数和系统开销无关

发表于 2023-07-24 11:10:23 回复(0)
系统开销比例=进程切换总时间/进程运行总时间
发表于 2018-09-19 11:20:23 回复(0)
这题看题的时候不知道出题者是什么意思,语句都读不顺畅,了解了是要问系统开销,才知道要问的是什么东西,也是醉了
编辑于 2016-08-25 21:36:13 回复(0)
不管进程多久处理完,本质上是没有影响的。。小于等于300ms是一种情况,一个进程能在一个时间片内执行完,这个就不解释了。。假如一个进程大于300ms,比如它是700ms,分成300ms 300ms 300ms三个时间片来执行,计算过程中可以相当于能在300ms内完成的三个进程,因为系统开销比率与进程数无关,所以结果还是一样的。
发表于 2016-07-04 15:44:21 回复(2)
进程数为  10  的情况下,系统开销比率等于切换进程总时间  /  进程总共运行时间,其中切换进程运行时间为  10*10ms  ,进程运行总时间为  300*10+10*10ms  ,因此系统开销比率为  10*10/(300*10+10*10),  可以看出系统开销比率与进程数无关,故选择等于选项。
发表于 2016-03-03 14:46:28 回复(0)
系统开销比率等于切换进程总时间  /  进程总共运行时间
发表于 2015-10-23 12:57:54 回复(0)
进程一定在300ms时恰好执行完吗?如果进程在300ms内就执行完了呢?
编辑于 2015-10-05 19:34:49 回复(0)
系统切换到第一个进程的时间也算的话那就是相等的
发表于 2015-06-10 10:28:35 回复(0)