发明名称 Method for the deterministic execution and synchronization of an information processing system comprising a plurality of processing cores executing system tasks
摘要 An information processing system includes two processing cores. The execution of an application by the system includes the execution of application tasks and the execution of system tasks, and the system includes a micro-kernel executing the system tasks, which are directly linked to hardware resources. The processing system includes a computation part of the micro-kernel executing system tasks relating to the switching of the tasks on a first core, and a control part of the micro-kernel executing, on a second core, system tasks relating to the control of the task allocation order on the first core.
申请公布号 US9128752(B2) 申请公布日期 2015.09.08
申请号 US200913124494 申请日期 2009.10.16
申请人 Commissariat A L'Energie Atomique Et Aux Energies Alternatives 发明人 Aussagues Christophe;Chabrol Damien;David Vincent
分类号 G06F9/46;G06F9/48;G06F9/38;G06F9/50 主分类号 G06F9/46
代理机构 Baker & Hostetler LLP 代理人 Baker & Hostetler LLP
主权项 1. An information processing system comprising a plurality of processing cores for executing tasks within a plurality of parts in parallel, said processing cores comprising: two processing cores configured to execute an application comprising a set of tasks; a micro-kernel configured to execute system functions, which are directly linked to hardware resources, the micro-kernel comprising a computation part and a control part of the plurality of parts, wherein: the computation part of the micro-kernel is hosted on a first core of the two processing cores and is configured to execute system functions for managing switching of the execution context of tasks on the first core, the system functions including, for each task, updating of a state indicating whether said task is executable, said state being included in an execution context associated with said task, said execution context gathering execution data for said task, said state switching between: a value indicating that the task is ready; a value indicating that the task is idle; and a value indicating that the task is errored; the control part of the micro-kernel is hosted on a second core of the two processing cores and is configured to execute tasks triggered by input/output interrupts and to execute system functions relating to control of the task allocation order on the first core, said system functions including management of at least one of the following set of lists of tasks: of an ordered list of the tasks that are ready; of an ordered list of the tasks that are idle; and of a list of the tasks that are errored; the computation part and the control part of the micro-kernel share the set of the lists of tasks, where the order within the lists is maintained by the control part and the content of each element of the lists is maintained by the computation part; and the second core orders the tasks in the ordered list of the tasks that are ready such that each task is executed in accordance with an execution limit time of each task and in accordance with an execution time quota of each task, wherein the execution limit time comprises a range of time between which execution of a task is to begin and end, and wherein the execution time quota specifies a limit of execution time reserved for the execution of each task, in response to completion of a system function that results in modification of the shared list of the tasks by one of the computation part and the control part, said part that modifies being configured to notify the completion of said system function to the other part, and said part that modifies being further configured to continue its execution of remaining system or application tasks in parallel with said notification.
地址 Paris FR