Methods and systems for software watchdog support
AssigneeSun Microsystems, Inc.
InventorMichael Boucher
Life of this patent
Estimating the term…
Abstract
Methods and systems consistent with the present invention allow a program designer to conveniently specify and support watchdog checking of a program under development. The resulting programs are more robust than programs developed without watchdog support. The method and systems provide a convenient, automated mechanism for adding watchdog support to a program. Thus, a developer need not incur the substantial time and effort costs that would be associated with manually designing and configuring separate watchdog programs. Rather, the methods and systems provide substantial assistance to the developer in designing a robust program.
Claims59
A method in a data processing system for adding watchdog support to a program comprising code blocks, the method comprising the steps of:
- reading a watchdog specification for a code block;
- inserting a watchdog setup call based on the watchdog specification during compilation of the program before the code block, such that a watchdog program is started when the watchdog setup call is executed, the watchdog program monitoring execution of the program;
- and
- inserting a watchdog reporting call during compilation of the program in the code block, such that when executed, the watchdog reporting call reports a status of the program to the watchdog program.
A computer-readable medium containing instructions that cause a data processing system to perform a method for adding watchdog support to a program comprising code blocks, the method comprising the steps of:
- reading a watchdog specification for a code block;
- inserting a watchdog setup call based on the watchdog specification during compilation of the program before the code block, such that a watchdog program is started when the watchdog setup call is executed, the watchdog program monitoring execution of the program;
- and
- inserting a watchdog reporting call during compilation of the program in the code block, such that when executed, the watchdog reporting call reports a status of the program the watchdog program.
A data processing system comprising:
- a memory comprising a compiler for compiling a program comprising code blocks, the compiler reading a watchdog specification for a code block in the program, inserting a watchdog setup call based on the watchdog specification during compilation of the program before the code block during, and inserting a watchdog reporting call into the code block during compilation of the program, wherein execution of the watchdog setup call starts a watchdog program for monitoring execution of the program, and wherein execution of the reporting call reports a program status to the watchdog program;
- and
- a processor that runs the compiler.
A data processing system for adding watchdog support to a program comprising code blocks:
- means for reading a watchdog specification for a code block, inserting a watchdog setup call based on the watchdog specification during compilation of the program before the code block, such that a watchdog program is started when the watchdog setup call is executed, the watchdog program monitoring execution of the program, and inserting a watchdog reporting call during compilation of the program in the code block, such that when executed, the watchdog reporting call reports a program status to the watchdog program;
- and
- means for running the program.
A method in a data processing system, the method comprising the steps of:
- reading source code statements that comprise a program;
- reading a watchdog specification in the source code statements;
- determining a code block associated with the watchdog specification;
- inserting a watchdog setup call before the code block during compilation of the program, such that a watchdog program is started when the watchdog setup call is executed, the watchdog program monitoring execution of the program, wherein
- the watchdog setup call comprises a watchdog parameter structure comprising watchdog parameters determined from the watchdog specification;
- inserting a watchdog reporting call into the code block during compilation of the program, the watchdog reporting call comprising the watchdog handler, such that when executed, the watchdog reporting call reports a program status to the watchdog program;
- and
- inserting a watchdog completion call after the code block during compilation of the program, the watchdog completion call comprising the watchdog handler, wherein the watchdog completion reporting call reports to the watchdog program that the code block has completed.
A method in a data processing system having a compiler, the method comprising the steps performed by the compiler of:
- receiving source code instructions for a program comprising a watchdog specification for a code block;
- and
- generating compiled ones of the instructions that include watchdog setup call instructions before the code block, such that a watchdog program is started when the watchdog setup call instructions are executed, the watchdog program monitoring execution of the program, and watchdog reporting call instructions in the code block, the watchdog reporting call instructions reporting a program status to the watchdog program.
A computer-readable medium containing instructions that cause a data processing system to perform a method comprising the steps performed by a compiler of:
- receiving source code instructions for a program comprising a watchdog specification for a code block;
- and
- generating compiled ones of the instructions that include watchdog setup call instructions before the code block, such that a watchdog program is started when the watchdog setup call instructions are executed, the watchdog program monitoring execution of the program, and watchdog reporting call instructions in the code block, the watchdog reporting call instructions reporting a program status to the watchdog program.
A computer-readable medium containing instructions for a program that cause a data processing system comprising a processor and a memory to perform a method comprising the steps of:
- executing instructions in the program that cause a watchdog program to start running such that the watchdog program monitors execution of the program for an execution abnormality;
- creating a data structure in the memory comprising at least one watchdog parameter associated with the program,
- wherein the watchdog program accesses the data structure to detect when a program execution abnormality has occurred.
Dependencies are inferred from the claim text.