CONTROL APPARATUS, SYSTEM PROGRAM, AND CONTROL METHOD
FIG1 is a schematic diagram showing an example of program execution in a control apparatus according to the present embodiment
FIG1 is a schematic diagram showing an example of program execution in a control apparatus 1 according to the present embodiment. Referring to FIG1, the control apparatus 1 is a computer for controlling any control object and has one or more processors. FIG1 shows an example in which a primary task 240 and a system service task 250 are sequentially executed in the control apparatus 1. In the present description, the term "task" is a base unit which is a control object to which computing resources are allocated, and one or more programs to be executed are registered or set for each task. That is, computing resources are allocated to any task and, when the task enters a state in which it can be executed, execution of one or more programs registered or set for the task is started or resumed. In the control apparatus 1 according to the present embodiment, it is possible to control appropriate allocation of computing resources, and the like even for a program included in the system service task 250, in which an operation time and the like cannot be guaranteed in conventional methods, by using the monitoring function 2122 shown in FIG1.
schematic diagram
1
control apparatus
262
monitoring cycle
252
high-priority service high-priority services
250
system service task
254
function functions
256
low-priority service
240
task
270
notification
272
notification
2122
function
212
scheduler program
['1. A control apparatus (1) for controlling a control object, comprising: a processor (100); a first program (240) which is repeatedly executed by the processor and has a highest execution priority; a second program having a lower execution priority than the first program; a third program having a lower execution priority than the second program; and a scheduler program which manages programs executed by the processor, wherein the second program includes a notification command (224) for outputting a start notification (270) according to start of execution in the processor and outputting an end notification (272) according to completion of execution in the processor, and the scheduler program (212) includes a command (2120) for causing the processor to execute the second and third programs such that execution of the first program is not obstructed, and a command (2122) for determining an execution state of the second program in each predetermined monitoring cycle (262) on the basis of the start notification and the end notification from the second program; characterized by  a fourth program (242) having a higher execution priority than the second program, wherein the scheduler program includes a command (2124) for temporarily interrupting execution of the fourth program when the execution state of the second program does not satisfy predetermined settings, the command for determining the execution state includes a command for determining an execution state of the third program in the monitoring cycle, and the scheduler program includes a command (2124) for temporarily interrupting execution of the second program when the execution state of the third program does not satisfy predetermined settings.']