def scheduling(cls, pi, t, ti): # 任务pi,到达时间t,系统时间ti """调度单个任务""" # 获取任务所需的系统资源 Algorithm.get_pi_resource(pi) if Algorithm.judge(t, ti): Resource.allocate_res(Algorithm.ri1, Algorithm.ri2, Algorithm.ri3) # 分配系统资源给任务pi i = Task.find_pi(Task.waiting_queues, pi)[1] print("Scheduling task: ", Task.waiting_queues[i]) Task.add_running_pi(pi, ti) # 将任务pi加入到运行队列 Task.slow_down.append(Task.waiting_queues[i][7]) # 将减慢比加入列表 average_slow_down = round( sum(Task.slow_down) / len(Task.slow_down), 2) # 计算平均减慢比 Task.average_slow_down.append(average_slow_down) # 加入列表 Task.del_waiting_pi(pi) # 将任务pi从等待队列中剔除
def scheduling(cls, pi, t, ti): # 任务pi,到达时间t,系统时间ti """调度单个任务""" # 获取任务所需的系统资源 Algorithm.get_pi_resource(pi) # 计算每个任务的响应比 # Algorithm.response_ratio(pi, t, ti) if Algorithm.judge(t, ti): # 分配系统资源给任务pi Resource.allocate_res(Algorithm.ri1, Algorithm.ri2, Algorithm.ri3) # 将任务pi加入到运行队列 i = Task.find_pi(Task.waiting_queues, pi)[1] print("Scheduling task: ", Task.waiting_queues[i]) Task.add_running_pi(pi, ti) # 将任务pi从等待队列中剔除 Task.del_waiting_pi(pi)