Patent ID: 8042116
Filing Date: 2011-10-18
Classification: G06F

Abstract:
1. A processor that cyclically executes a plurality of tasks in accordance with an execution time period allotted to each of the tasks, the processor comprising: a storage unit operable to store pieces of execution control information respectively corresponding to each of the tasks; a plurality of register groups; an execution unit operable to sequentially use one of the register groups to execute a task based on the execution control information held in the register group being used; a selection unit operable to select a next task to be executed among the tasks; a restoration unit operable to, while a current task is being executed for an execution time period allotted thereto, restore a piece of the execution control information corresponding to the next task from the storage unit into one of the register groups other than the register group being used by the current task; a detection unit operable to detect a suspension cause for the current task being executed; and a control unit operable to, (i) if the suspension cause is detected before the restoration starts, have the execution unit suspend the execution of the current task and execute a previous unfinished task based on a piece of the execution control information held in one of the register groups other than the register group having been used for the execution of the current task, and (ii) if the register group holding the piece of the execution control information corresponding to the previous unfinished task is the register group the restoration into which is to be started, have the restoration unit cancel the restoration.