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

Message based exception handler

Assignee: International Business Machines Corp
•
Filing: 1993-03-15
•
Granted: 1998-06-02
•
Expires: 2013-03-15
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The solution employed by the present invention keeps information about individual exception instances in data structures which are independent of the local storage of the system-level exception management routines. This eliminates confusion and ambiguity because the entire exception handling mechanism can be described and specified in terms of the manipulation of these data structures, independent of the call/return flow of the system-level exception management routines.

Inventors

  • 👤 Frank Edward Benson
  • 👤 Daniel Rodman Hicks

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 10:01
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/48; G06F9/4806; G06F9/4812; G06F9/54; G06F9/542

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 131 words
A method for handling exception conditions within a computer system, said method comprising the steps of: detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; invoking an error handler; trapping said running program, said running program being trapped by said error handler; creating an exception cause message, said exception cause message being created by said error handler; linking said exception cause message to said activation record, said exception cause message being linked by said error handler; queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; and invoking an exception handler via a pointer contained in said activation record.
Claim 2
Independent Claim 131 words
A method for handling exception conditions within a computer system, said method comprising the steps of: detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; invoking an error handler; trapping said running program, said running program being trapped by said error handler; creating an exception cause message, said exception cause message being created by said error handler; linking said exception cause message to said activation record, said exception cause message being linked by said error handler; queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; and invoking an exception handler via a pointer contained in said activation record.
Claim 3
Independent Claim 287 words
A method for handling exception conditions within a computer system, said method comprising the steps of: a) detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) invoking an error handler; c) trapping said first program, said first program being trapped by said error handler; d) creating an exception cause message, said exception cause message being created by said error handler; e) linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) repeating steps g) and h) until said pointer field indicates that an exception handler is associated with said current activation record; and j) invoking said exception handler.
Claim 4
Independent Claim 287 words
A method for handling exception conditions within a computer system, said method comprising the steps of: a) detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) invoking an error handler; c) trapping said first program, said first program being trapped by said error handler; d) creating an exception cause message, said exception cause message being created by said error handler; e) linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) repeating steps g) and h) until said pointer field indicates that an exception handler is associated with said current activation record; and j) invoking said exception handler.
Claim 5
Independent Claim 157 words
A method for handling exception conditions within a computer system, said method comprising the steps of: detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; invoking an error handler; trapping said running program, said running program being trapped by said error handler; creating an exception cause message, said exception cause message being created by said error handler; linking said exception cause message to said activation record, said exception cause message being linked by said error handler; queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; invoking an exception handler via a pointer contained in said activation record; marking said activation record to indicate that said running program is to be terminated; and terminating said running program by removing said activation record from said stack.
Claim 6
Independent Claim 157 words
A method for handling exception conditions within a computer system, said method comprising the steps of: detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; invoking an error handler; trapping said running program, said running program being trapped by said error handler; creating an exception cause message, said exception cause message being created by said error handler; linking said exception cause message to said activation record, said exception cause message being linked by said error handler; queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; invoking an exception handler via a pointer contained in said activation record; marking said activation record to indicate that said running program is to be terminated; and terminating said running program by removing said activation record from said stack.
Claim 7
Independent Claim 317 words
A method for handling exception conditions within a computer system, said method comprising the steps of: a) detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) invoking an error handler; c) trapping said first program, said first program being trapped by said error handler; d) creating an exception cause message, said exception cause message being created by said error handler; e) linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) repeating steps g) and h) until said pointer field indicates that an exception handler is associated with said current activation record; j) invoking said exception handler; k) marking said current activation record to indicate that said running program is to be terminated; and l) terminating said running program by removing said current activation record from said stack.
Claim 8
Independent Claim 317 words
A method for handling exception conditions within a computer system, said method comprising the steps of: a) detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) invoking an error handler; c) trapping said first program, said first program being trapped by said error handler; d) creating an exception cause message, said exception cause message being created by said error handler; e) linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) repeating steps g) and h) until said pointer field indicates that an exception handler is associated with said current activation record; j) invoking said exception handler; k) marking said current activation record to indicate that said running program is to be terminated; and l) terminating said running program by removing said current activation record from said stack.
Claim 9
Independent Claim 142 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; and means for invoking an exception handler via a pointer contained in said activation record.
Claim 10
Independent Claim 142 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; and means for invoking an exception handler via a pointer contained in said activation record.
Claim 11
Independent Claim 307 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; and j) means for invoking said exception handler.
Claim 12
Independent Claim 307 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; and j) means for invoking said exception handler.
Claim 13
Independent Claim 172 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; means for invoking an exception handler via a pointer contained in said activation record; means for marking said activation record to indicate that said running program is to be terminated; and means for terminating said running program by removing said activation record from said stack.
Claim 14
Independent Claim 172 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; means for invoking an exception handler via a pointer contained in said activation record; means for marking said activation record to indicate that said running program is to be terminated; and means for terminating said running program by removing said activation record from said stack.
Claim 15
Independent Claim 341 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; j) means for invoking said exception handler; k) means for marking said current activation record to indicate that said running program is to be terminated; and l) means for terminating said running program by removing said current activation record from said stack.
Claim 16
Independent Claim 341 words
An apparatus for handling exception conditions within a computer system, said apparatus comprising: a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; j) means for invoking said exception handler; k) means for marking said current activation record to indicate that said running program is to be terminated; and l) means for terminating said running program by removing said current activation record from said stack.
Claim 17
Dependent Claim 325 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; and j) means for invoking said exception handler.
Claim 18
Dependent Claim 325 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; and j) means for invoking said exception handler.
Claim 19
Dependent Claim 190 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; means for invoking an exception handler via a pointer contained in said activation record; means for marking said activation record to indicate that said running program is to be terminated; and means for terminating said running program by removing said activation record from said stack.
Claim 20
Dependent Claim 190 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, means for detecting an exception condition within a running program, said running program being identified by an entry in a stack, said entry being an activation record; means for invoking an error handler; means for trapping said running program, said running program being trapped by said error handler; means for creating an exception cause message, said exception cause message being created by said error handler; means for linking said exception cause message to said activation record, said exception cause message being linked by said error handler; means for queuing said exception cause message to a message queue that is referenced in said activation record, said exception cause message being queued by said error handler; means for invoking an exception handler via a pointer contained in said activation record; means for marking said activation record to indicate that said running program is to be terminated; and means for terminating said running program by removing said activation record from said stack.
Claim 21
Dependent Claim 359 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; j) means for invoking said exception handler; k) means for marking said current activation record to indicate that said running program is to be terminated; and l) means for terminating said running program by removing said current activation record from said stack.
Claim 22
Dependent Claim 359 words
A program product for handling exception conditions within a computer system, said program product comprising: a recordable media; and an operating system recorded on said recordable media, said operating system comprising, a) means for detecting an exception condition within a first program, said first program being identified within a stack frame, said stack frame containing a plurality of activation records, one of said plurality of activation records being a current activation record, said first program having a first activation record that represents a running program which is initially said current activation record; b) means for invoking an error handler; c) means for trapping said first program, said first program being trapped by said error handler; d) means for creating an exception cause message, said exception cause message being created by said error handler; e) means for linking said exception cause message to said first activation record, said exception cause message being linked to said first activation record by said error handler; f) means for queuing said exception cause message to a first message queue that is contained in said first activation record, said exception message being queued by said error handler; g) means for determining whether said first program has an exception handler associated with it by checking a pointer field within said current activation record; h) means for removing said exception cause message from said first message queue and queuing said exception cause message to a second message queue whenever the outcome of said determining step indicates that there is no exception handler associated with said current activation record, said second message queue being contained in a second activation record, said second activation record being associated with a second program, said second activation record becoming said current activation record; i) means for repeating said determining means and said removing means until said pointer field indicates that an exception handler is associated with said current activation record; j) means for invoking said exception handler; k) means for marking said current activation record to indicate that said running program is to be terminated; and l) means for terminating said running program by removing said current activation record from said stack.

References Cited (Backward Citations)

US4575817A Cited
US4777593A Cited
US4970641A Cited
US5095426A Cited
US5109514A Cited
US5241635A Cited
US5197138A Cited
US5237700A Cited
US5305455A Cited

USPTO Annuity & Maintenance Windows

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

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag