用于 CPU 调度的循环调度算法的 Python 代码

问题描述

需要帮助完成cpu调度的Round Robin Scheduling算法代码

每个进程占用相等的 cpu 时间份额,这等于 2 个单位的时间量。 处理2个时间量程后,如果处理还需要更多的计算, 它被传递到一个等待队列。

代码应执行以下操作:

  • 报告每个过程完成的时间
  • 报告队列中每个进程的等待时间

#CODE 指示缺少代码的位置。

enter image description here

from collections import deque
time_quantum = 2

class Process:
  def __init__(self,name,arrival_time,required_time):
    self.name = name
    self.arrival_time = arrival_time
    self.required_time = required_time
    self.time_processed = 0
  def __repr__(self):
    return self.name

p0 = Process('P1',4)
p1 = Process('P2',1,3)
p2 = Process('P3',2,2)
p3 = Process('P4',3,1)
processes = [p0,p1,p2,p3]

end_times = {process.name:0 for process in processes}
wait_times = {process.name:0 for process in processes}

queue = deque()
running_proc = None # Tracks running process in the cpu
running_proc_time = 0 # Tracks the time running process spent in the cpu
for t in range(11):
#CODE 

print(end_times) # End times for each process
print(wait_times) # Wait times for each process in the queue

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)