Patent ID: 8418188

Claim:
A task execution controller in which a first control task and a second control task having different cycles are periodically executed based on input data in a multitasking manner, execution results of the first and second control tasks are respectively output, and the first control task is executed using the execution result of the second control task as the input data, the task execution controller comprising: a processor; a slot number calculation unit that calculates a current slot number based on the number of slots which are obtained by dividing a time axis at predetermined time intervals, the number of the slots being set to a value obtained by dividing a least common multiple of the cycles of the first and second control tasks by a greatest common divisor of the cycles of the first and second control tasks and then multiplying a result of division by a natural number n, and that stores the calculated current slot number in a first memory; an output-time slot number storing unit that reads the current slot number stored in the first memory when each of the execution results of the first and second control tasks is output, and stores the read slot number in a second memory as a slot number at time of output of the execution result; and a determination unit that obtains, when the first control task that requires the execution result of the second control task as the input data is activated, the slot number at time of output of the execution result of the second control task from the second memory, and that determines whether a time constraint is violated based on the obtained slot number and an input constraint condition in which a permissible slot number for the input data for the first control task is set in advance.