主权项 |
1. Method for sequencing a set of tasks on a processor having a plurality of execution cores, processor resources being divided into a plurality of partitions, these partitions sharing the time in the form of a succession of time slots synchronously on each core of the processor, the method being executed by a set of sequencing modules implemented on the cores of the processor, a control instance being implemented in at least one of said sequencing modules, said method comprising:
a step implemented whenever an instance of a task in a current partition sharing a core is getting ready to be executed by the core, of preliminary determining a security level related to the critical character of the execution of said instance of said task in the context of said system for the current partition, each task moreover having a certification level intrinsically related to the development methods used during design thereof; a step of exchanging messages between the various sequencing modules of each core and said control instance, said exchanging step being implemented, whenever an instance of a task is getting ready to be executed by a core in the current partition, by the sequencing module of said core, and being designed to inform the control instance of the certification and security levels of said tasks getting ready to be executed, and a step of determining a launch authorization being implemented whenever an instance of a task is getting ready to be executed by a core in the current partition in order to determine an authorisation to launch said instance, and doing this according to the certification level related to and the security level determining for each task getting ready to be launched in the same partition, wherein the security levels are four in number, and the step of determining a launch authorisation for each of the tasks comprises the following rules:
a task having a security level 1, that is to say the lowest, is executed if the following conditions are met:
no task with security level 3 or 4 is present on another core for the current partition;any task of security level 2 present on another core has a certification level lower than or equal to its own certification level;a task having a security level 2 is executed if the following conditions are met:
no task with security level 3 or 4 is present on another core for the current partition;any task of security level 2 present on another core has a certification level lower than or equal to its own certification level;a task having a security level 3 is executed if the following conditions are met:
no task of security level 4 is present on another core for the current partition;any task of security level 3 present on another core has a certification level lower than or equal to its own certification level and, in the event of equality, its identification number is higher than or equal to the others;a task having a security level 4 is executed if the following conditions are met:
any task of security level 4 present on another core has a certification level lower than or equal to its own certification level and, in the event of equality, its identification number is strictly greater than the others. |