← Back to Patent Explorer
US5357628A Expired / Lapsed US ⏱️ 0.0 years remaining

Computer system having integrated source level debugging functions that provide hardware information using transparent system interrupt

Assignee: Intel Corp
•
Filing: 1993-10-19
•
Granted: 1994-10-18
•
Expires: 2013-10-19
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A system management mode (SMM), an external dedicated system management memory (SMRAM), a system management interrupt (SMI), a SMI service handler with an integrated debugger, a Resume instruction (RSM), and at least one way for triggering a SMI as a result of a debugging request is provided to a computer system. Debugging is performed under SMM with the integrated debugger which is stored with the SMI handler in the SMRAM and given control after the SMI handler has gotten control and determined in its initial processings that the SMI handler has gotten control as a result of a SMI triggered by a debugging request. The SMI handler gets control after the computer system is put into SMM in response to the SMI. Upon exiting the integrated debugger, the SMI handler executes the RSM instruction to continue execution with the interrupted program. As a result, debugging may be performed with the actual hardware in its normal operating speed, and yet debugging functions and usability matching or exceeding that of a software emulator may be provided. Additionally, debugging may be performed in a manner that is transparent to the operating system and the application programs.

Inventors

  • 👤 Desmond Yuen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-26 20:13
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362; G06F11/3648

Claims Analysis

Total Claims: 7
Claim 1
Independent Claim 371 words
An improved computer system comprising a central processing unit (CPU) coupled to at least one memory unit for executing at least an operating system comprising a plurality of said CPU's instructions, said CPU further having at least two modes of program execution, a real mode and a protected mode, and at least one interrupt for interrupting program execution, wherein the improvement to said computer system comprises: (a) a dedicated memory area in said at least one memory unit, said dedicated memory area being not mapped as part of main memory space thereby keeping said dedicated memory area inaccessible to said operating system and other programs, if any, executed by said CPU; (b) an interrupt processing program, having source level debugging functions, for serving an unmaskable interrupt and allowing a user to perform source level debugging and have access to hardware information, said interrupt processing program being prestored in said dedicated memory area; (c) said at least one interrupt of said computer system including said unmaskable interrupt for interrupting execution of said operating system and other programs, if any, causing said dedicated memory area to be switched in and mapped to a pre-determined segment of said main memory space, storing said current system state data of said computer system into said dedicated memory area, switching said CPU into said real mode of execution, reinitializing said CPU's control registers to a predetermined address, and starting execution of said interrupt processing program including said debugging functions in said real mode, said unmaskable interrupt being unmaskable by said operating system and said other programs if any, and having a higher priority than other interrupts, said predetermined address being starting address of said interrupt processing program; (d) interrupt triggering means for detecting a debugging request and triggering said unmaskable interrupt upon detecting said debugging request; and (e) resumption means for restoring said saved system data in said CPU upon completion of said debugging performed by said user, causing said dedicated memory area to be switched out and unmapped from said main memory space, and resuming execution of said operating system and other program, if any; whereby allowing said user to perform said debugging and have access to hardware information without having to use an external emulator.
Claim 2
Dependent Claim 371 words
An improved computer system comprising a central processing unit (CPU) coupled to at least one memory unit for executing at least an operating system comprising a plurality of said CPU's instructions, said CPU further having at least two modes of program execution, a real mode and a protected mode, and at least one interrupt for interrupting program execution, wherein the improvement to said computer system comprises: (a) a dedicated memory area in said at least one memory unit, said dedicated memory area being not mapped as part of main memory space thereby keeping said dedicated memory area inaccessible to said operating system and other programs, if any, executed by said CPU; (b) an interrupt processing program, having source level debugging functions, for serving an unmaskable interrupt and allowing a user to perform source level debugging and have access to hardware information, said interrupt processing program being prestored in said dedicated memory area; (c) said at least one interrupt of said computer system including said unmaskable interrupt for interrupting execution of said operating system and other programs, if any, causing said dedicated memory area to be switched in and mapped to a pre-determined segment of said main memory space, storing said current system state data of said computer system into said dedicated memory area, switching said CPU into said real mode of execution, reinitializing said CPU's control registers to a predetermined address, and starting execution of said interrupt processing program including said debugging functions in said real mode, said unmaskable interrupt being unmaskable by said operating system and said other programs if any, and having a higher priority than other interrupts, said predetermined address being starting address of said interrupt processing program; (d) interrupt triggering means for detecting a debugging request and triggering said unmaskable interrupt upon detecting said debugging request; and (e) resumption means for restoring said saved system data in said CPU upon completion of said debugging performed by said user, causing said dedicated memory area to be switched out and unmapped from said main memory space, and resuming execution of said operating system and other program, if any; whereby allowing said user to perform said debugging and have access to hardware information without having to use an external emulator.
Claim 3
Dependent Claim 123 words
The computer system as set forth in claim 1, wherein, said improvement further comprises: said interrupt processing program providing other system management functions; said debugging functions being provided by an integrated debugger; said interrupt triggering means also triggering said interrupt due to other system management events; said integrated debugger being given control upon determining by initial processings of said interrupt processing program that said interruption was made in response to a debugging request; resume event detection means for detecting a resume event; and said resumption means restoring said saved system state data in said CPU upon exiting said integrated debugger if said interruption was made in response to a debugging request, otherwise, upon detection of a resume event by said interrupt processing program.
Claim 4
Dependent Claim 29 words
The computer system as set forth in claim 2, wherein, said improvement further comprises said integrated debugger being stored with said interrupt processing program in said dedicated memory area.
Claim 5
Dependent Claim 47 words
The computer system as set forth in claim 2, wherein, said improvement further comprises said integrated debugger being stored separately in a selected one of its own read-only-memory and mass storage, said integrated debugger being loaded by said interrupt processing program after said initial processings and determination.
Claim 6
Dependent Claim 38 words
The computer system as set forth in claim 1, wherein, said improvement further comprises said at least one memory unit having an on-board random access memory (RAM), and said dedicated memory area being part of said on-board RAM.
Claim 7
Dependent Claim 41 words
The computer system as set forth in claim 1, wherein, said improvement further comprises said at least one memory unit having an off-board RAM coupled to an on-board RAM controller, and said dedicated memory area being part of said off-board RAM.

References Cited (Backward Citations)

US4819234A Cited
US5175853A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1997-10-17 1998-04-18 1998-10-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2001-10-17 2002-04-18 2002-10-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2005-10-17 2006-04-18 2006-10-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag