Fromrt.utilRequireExportall.Fromrt.restructuring.behaviorRequireImportall.Fromrt.restructuringRequireImportmodel.jobmodel.task.Fromrt.restructuring.model.preemptionRequireImporttask.parameters.(** * Task's Run to Completion Threshold *)(** In this section, we instantiate function [task run to completion threshold] for the model with floating non-preemptive regions. *)SectionTaskRTCThresholdFloatingNonPreemptiveRegions.(** Consider any type of tasks.*)Context{Task:TaskType}.Context`{TaskCostTask}.(** In the model with floating non-preemptive regions, task has to static information about the placement of preemption points. Thus, the only safe task's run to completion threshold is [task cost]. *)GlobalProgramInstancefully_preemptive:TaskRunToCompletionThresholdTask:={task_run_to_completion_threshold(tsk:Task):=task_costtsk}.EndTaskRTCThresholdFloatingNonPreemptiveRegions.