def gensavetasksets(schedulers, n, nsets, u, min_p, max_p, outdir): # Manual configuration: configuration = Configuration() configuration.duration = 1000 * configuration.cycles_per_ms u = task_generator.StaffordRandFixedSum(n, u, nsets) periods = task_generator.gen_periods_uniform_ex(n, nsets, min_p, max_p, 10000000, True) # Add processors. for i in range(1, 5): configuration.add_processor(name="CPU " + str(i), identifier=i) if not os.path.exists(outdir): os.mkdir(outdir) for i, exp_set in enumerate(task_generator.gen_tasksets(u, periods)): for scheduler_name in schedulers: configuration.scheduler_info.clas = scheduler_name # print("{}:".format(scheduler_name)) while configuration.task_info_list: del configuration.task_info_list[0] id_ = 1 for (c, p) in exp_set: configuration.add_task(name="T{}".format(id_), identifier=id_, period=p, activation_date=0, wcet=c, deadline=p, abort_on_miss=True) id_ += 1 configuration.duration = configuration.get_hyperperiod( ) * configuration.cycles_per_ms # Vérification de la config. configuration.check_all() # save one taskset configuration.save(outdir + "/exp_{}.xml".format(i + 1))