如何计算两个过程的估计完成时间

时间:2015-09-02 12:12:32

标签: algorithm process multiprocessing cpu operation

某个计算机系统使用非抢占式在多编程环境中运行 算法。在该系统中,两个进程A和B存储在进程队列中, 和A的优先级高于B.下表显示了每个的估计执行时间 处理;例如,进程A依次使用CPU,I / O和CPU,分别为30,60和30 分别为毫秒。以下哪个是以毫秒为单位的估计时间 完成A和B?这里,OS的多处理开销可以忽略不计 小。此外,CPU和I / O操作可以同时执行,但I / O. A和B的操作不能并行执行。

UNIT:毫秒

                 CPU                    I/O                  CPU

一个_______________ 30 ___________________ 60 _________________ 30

B _______________ 45 ___________________ 45 __________________--

请帮帮我..明天我需要在班上解释这个问题,但我似乎无法理解它...

3 个答案:

答案 0 :(得分:2)

需要最长的路径:

非抢占式多任务处理或协作式多任务处理意味着该处理是一种共享a.e. CPU时间。在最坏的情况下,他们使用最糟糕的时间来完成任务。

<强> CPU: B = 45长于A = 30

45 +

<强> I / O A = 60且B = 45

45 + 60

再次

CPU: A = 30

45 + 60 + 30 = 135

答案 1 :(得分:2)

A具有最高优先级,但由于系统是非抢占式的,因此当两个进程同时需要资源时,这只是一个决胜局。

在t = 0时,A使CPU获得30 ms,B等待它需要CPU。

在t = 30时,A释放CPU,B使CPU获得45 ms,而A获得60 ms的I / O.

在t = 75时,CPU处于空闲状态,因为B正在等待A完成I / O,而A尚未准备好使用CPU。

在t = 90时,A释放I / O并使CPU再持续30 ms,而B获得I / O 45 ms。

在t = 120时,A释放CPU并完成。

在t = 135时,B释放I / O并完成。

答案 2 :(得分:1)

我将简要解释一下,请详细说明您的课堂讨论: 你的答案:135 当进程A等待I / O任务时,CPU时间将被提供给进程B.因此进程A和B的完整时间将是

进程A(CPU)+进程A I / O和进程B CPU +进程B I / O. 30 + 60 + 45 = 135 ms