Patent US5771385A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5771385A Expired / Lapsed US ⏱️ 0.0 years remaining

Setting and getting system debug flags by name at runtime

Assignee: Oracle America Inc
•
Filing: 1996-03-29
•
Granted: 1998-06-23
•
Expires: 2016-03-29
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a computing system, debug flags for software development, testing, and debugging of a module of the operating system are retrieved and set. The module under development is provided with a debugging message handler and a lookup table of debugging flags. The table maps the debugging flags to memory locations containing the present state of the flags. A debugging message is generated at the application-level by a user desiring to monitor or alter the state of the debugging flags. The debugging message handler decodes the debugging message using the table, and the module reports or alters the debugging flag accordingly. In this manner, real-time program evaluation and control can be achieved without the conventional debugging software packages.

Inventors

  • 👤 James M. Harper

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 17:01
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362

Claims Analysis

Total Claims: 20
Claim 1
Independent Claim 173 words
Apparatus for reporting debug value fields in an operating system in a computer, the computer having a processor, an input/output device, and a data storage device, said operation system operating the processor and controlling the data storage device, said processor having a central processing unit, memory and input/output control, said input/output control connected to the input/output device and the data storage device, said apparatus comprising: parse means for parsing a debugging message from an application program, the debugging message having a name field and a value field; a debug symbol table having a plurality of debug symbols with each table entry having a name and a debug symbol address of a storage location for the debug symbol corresponding to the name; search means for searching the debug symbol table for a name matching the name field from the debugging message; and write means for writing the value field from the debugging message into the storage location of the debug symbol address whose name matches the name field whereby the value field is reported.
Claim 2
Dependent Claim 173 words
Apparatus for reporting debug value fields in an operating system in a computer, the computer having a processor, an input/output device, and a data storage device, said operation system operating the processor and controlling the data storage device, said processor having a central processing unit, memory and input/output control, said input/output control connected to the input/output device and the data storage device, said apparatus comprising: parse means for parsing a debugging message from an application program, the debugging message having a name field and a value field; a debug symbol table having a plurality of debug symbols with each table entry having a name and a debug symbol address of a storage location for the debug symbol corresponding to the name; search means for searching the debug symbol table for a name matching the name field from the debugging message; and write means for writing the value field from the debugging message into the storage location of the debug symbol address whose name matches the name field whereby the value field is reported.
Claim 3
Dependent Claim 27 words
The apparatus of claim 1 and in addition: build means in the application program for building the debugging message from user input of a desired debug function.
Claim 4
Dependent Claim 56 words
The apparatus of claim 1 and in addition: storage means for storing the value field from the debugging message in a temporary storage; and said write means retrieving the value field from the temporary storage and writing the retrieved value field into the storage location of the debug symbol address whose name matches the name field.
Claim 5
Dependent Claim 174 words
In a computing system having a processor, an operating system, and a memory, said operating system controlling said processor, said operating system comprised of a plurality of modules of software, a method for externally monitoring the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said method comprising the computer implemented steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to report the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and reporting the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 6
Dependent Claim 174 words
In a computing system having a processor, an operating system, and a memory, said operating system controlling said processor, said operating system comprised of a plurality of modules of software, a method for externally monitoring the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said method comprising the computer implemented steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to report the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and reporting the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 7
Dependent Claim 103 words
The method of claim 4, wherein the step of passing a debugging message from said application-level interface to the module, further comprises: reading user input of a debugging flag to be requested from the module; building a debugging message based on said user input, said debugging message having a name field and a value field, said name field for identifying one of said debugging flags, said value field for indicating that the state of said debugging flag corresponding to said name field should be reported by the module; and transmitting said debugging message from the application-level interface to the module for processing therein.
Claim 8
Dependent Claim 68 words
The method of claim 4, wherein the step of decoding said debugging message in said module, further comprises: parsing in the module the debugging message into a name field and a value field, said name field identifying the debugging flag requested by the application-level interface, said value field for indicating that the state of said debugging flag corresponding to said name field should be reported by the module.
Claim 9
Dependent Claim 87 words
The method of claim 6, further comprising the steps of: comparing the name field, parsed from the debugging message, to each debugging flag maintained in said table; if no debugging flags in the table match the name field, then reporting an error code to the application-level interface; if a debugging flag in the table matches the name field, accessing the table to determine the location of the debugging flag in the memory; and writing the value field to the location of the debugging flag in the memory.
Claim 10
Dependent Claim 71 words
The method of claim 7, wherein the step of writing the value field to the location of the debugging flag in memory, further comprises: comparing the value field, parsed from the debugging message, to a set of valid value fields maintained in the module; and if the value field does not match one of said valid value fields maintained in the module, then reporting an error code to the application-level interface.
Claim 11
Dependent Claim 174 words
In a computing system having a processor, an operating system, and a memory, said operating system controlling said processor, said operating system comprised of a plurality of modules of software, a method for externally altering the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said method comprising the computer implemented steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to alter the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and altering the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 12
Dependent Claim 174 words
In a computing system having a processor, an operating system, and a memory, said operating system controlling said processor, said operating system comprised of a plurality of modules of software, a method for externally altering the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said method comprising the computer implemented steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to alter the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and altering the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 13
Dependent Claim 103 words
The method of claim 9, wherein the step of passing a debugging message from said application-level interface to the module, further comprises: reading user input of a debugging flag of the module to be altered; building a debugging message based on said user input, said debugging message having a name field and a value field, said name field for identifying one of said debugging flags, said value field for indicating the value to which the state of said debugging flag corresponding to said name field should be altered; and transmitting said debugging message from the application-level interface to the module for processing therein.
Claim 14
Dependent Claim 67 words
The method of claim 9, wherein the step of decoding said debugging message in said module, further comprises: parsing in the module the debugging message into a name field and a value field, said name field identifying the debugging flag requested by the application-level interface for alteration, said value field for indicating that the state of said debugging flag corresponding to said name field should be altered.
Claim 15
Dependent Claim 87 words
The method of claim 11, further comprising the steps of: comparing the name field, parsed from the debugging message, to each debugging flag maintained in said table; if no debugging flags in the table match the name field, then reporting an error code to the application-level interface; if a debugging flag in the table matches the name field, accessing the table to determine the location of the debugging flag in the memory; and writing the value field to the location of the debugging flag in the memory.
Claim 16
Dependent Claim 71 words
The method of claim 12, wherein the step of writing the value field to the location of the debugging flag in memory, further comprises: comparing the value field, parsed from the debugging message, to a set of valid value fields maintained in the module; and if the value field does not match one of said valid value fields maintained in the module, then reporting an error code to the application-level interface.
Claim 17
Dependent Claim 163 words
A computer program storage medium readable by a computing system and encoding a computer program of instructions for executing a computer process for externally monitoring the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said computer process comprising the steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to report the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and reporting the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 18
Dependent Claim 163 words
A computer program storage medium readable by a computing system and encoding a computer program of instructions for executing a computer process for externally monitoring the real-time operation of a module of the operating system so that the module can be debugged by a software developer using an application-level interface, said computer process comprising the steps of: maintaining a table, in said module, of debugging flags for examination, each one of said debugging flags having a state and a location in the memory, said table mapping each one of said debugging flags to the location of the debugging flag in the memory; passing a debugging message from said application level interface to the module, said debugging message directing the module to report the state of one of said debugging flags; receiving said debugging message in said module; decoding said debugging message in said module; and reporting the state of one of said debugging flags to the application-level interface responsive to said debugging message.
Claim 19
Dependent Claim 78 words
The computer program storage medium of claim 14 wherein the computer process in computer program step of decoding said debugging message in said module comprises the step of: parsing in the module the debugging message into a name field and a value field, said name field identifying the debugging flag requested by the application-level interface, said value field for indicating that the state of said debugging flag corresponding to said name field should be reported by the module.
Claim 20
Dependent Claim 98 words
The computer program storage medium of claim 15 where said computer process in the computer program further comprises the steps of: comparing the name field, parsed from the debugging message, to each debugging flag maintained in said table; if no debugging flags in the table match the name field, then reporting an error code to the application-level interface; if a debugging flag in the table matches the name field, accessing the table to determine the location of the debugging flag in the memory; and writing the value field to the location of the debugging flag in the memory.

References Cited (Backward Citations)

US4819234A Cited
US5386565A Cited
US5386522A Cited
US5603033A Cited
US5602729A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-06-22 2001-12-22 2002-06-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-06-22 2005-12-22 2006-06-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-06-22 2009-12-22 2010-06-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag