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

Method and apparatus for nonintrusive passive processor monitor

Assignee: Nokia of America Corp
•
Filing: 1997-09-25
•
Granted: 2000-01-18
•
Expires: 2017-09-25
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A source code monitor and method is provided having an interface for monitoring the execution of a source coded computer program by a processor. The monitor provides for nonintrusively detecting the actions taken by the processor while executing the source coded program, and determining during execution of the source program by the processor if there is a match between the actions as detected and an associated part of the source code. A display is provided for an indication of the actions performed and, if there is a match, an indication of the associated part of the source code. If there is not a match, an indication that there is not a match is provided. The interface circuit monitors signals on the target processor address bus, data bus and control bus. A code coverage analyzer box connects these signals to a code representing the process or action taken during each transition cycle and a local, or remote network connected, code coverage analysis server compares the action to a set of possible actions which can be taken by the processor with the associated set of symbols representative of the different parts of the user code.

Inventors

  • 👤 Marlon Zbigniew Kasprzyk
  • 👤 Paul K. Wolfe

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-01 19:57
CPC Classifications
G; G06; G06F; G06F11/00; G06F11/36; G06F11/362; G06F11/3648; G06F11/3656; G06F11/30; G06F11/34; G06F11/3466

Claims Analysis

Total Claims: 44
Claim 1
Independent Claim 100 words
An apparatus for monitoring the execution of an object coded computer program by a processor, comprising: means for passively detecting the actions taken by the processor while executing the object coded program; means responsive to said passively detecting means for determining during execution of the object program by the processor if there is a match between the actions as detected and an associated part of the object code; and means responsive to said match determining means for displaying an indication of the actions performed and, if there is a match, an indication of the associated part of the object code.
Claim 2
Independent Claim 100 words
An apparatus for monitoring the execution of an object coded computer program by a processor, comprising: means for passively detecting the actions taken by the processor while executing the object coded program; means responsive to said passively detecting means for determining during execution of the object program by the processor if there is a match between the actions as detected and an associated part of the object code; and means responsive to said match determining means for displaying an indication of the actions performed and, if there is a match, an indication of the associated part of the object code.
Claim 3
Dependent Claim 43 words
The code monitoring apparatus of claim 1 in which said displaying means comprises means responsive to the determining means determining there is not a match to provide an indication that there is no part of the object code associated with the detected actions.
Claim 4
Dependent Claim 64 words
The code monitoring apparatus of claim 1 in which said processor performs communication actions on an address bus, a data bus and a control bus, and said detecting means comprises an interface circuit for making an external communication link with and producing an interface output signal representative of signals on at least one of the address bus, the data bus and the control bus.
Claim 5
Dependent Claim 26 words
The code monitoring apparatus of claim 3 in which said interface is in electrical communication with all of the address bus, data bus and control bus.
Claim 6
Dependent Claim 42 words
The code monitoring apparatus of claim 3 in which said determining means comprises: means for monitoring the interface output signal; and means for determining if there is a match between the interface output signals and an associated part of the object code.
Claim 7
Dependent Claim 28 words
The code monitoring apparatus of claim 3 comprising means for analyzing the interface output signals to produce coded action signals representative of the action taken by the processor.
Claim 8
Dependent Claim 36 words
The code monitoring apparatus of claim 6 in which said analyzing means comprises means for producing a signal representative of the time at which the actions are taken relative to the occurrence of a trigger event.
Claim 9
Dependent Claim 42 words
The code monitoring apparatus of claim 6 in which said detecting means comprises an analysis server responsive to the coded action signals from the means for analyzing to determine if there is a match to a corresponding part of the object code.
Claim 10
Dependent Claim 75 words
The code monitoring apparatus of claim 8 in which said analysis server comprises: a memory for storing symbols representative of an object code program together with associated actions which should be performed in accordance with the object code; means for comparing the stored actions which should be taken with the actions actually taken to determine if there is a match; and means for displaying the symbols representative of associated code if there is a match.
Claim 11
Dependent Claim 42 words
The code monitoring apparatus of claim 8 in which the interface circuit is at a target processor site together with the means for analyzing and including, a network for interconnection the analysis server at a remote site with the means for analyzing.
Claim 12
Dependent Claim 46 words
The code monitoring apparatus of claim 10 comprising: another target processor interconnected with another interface circuit and an action analyzer; and means for interconnecting the analysis server at the remote site with the action analyzer to enable monitoring both the one and the other target processor.
Claim 13
Dependent Claim 72 words
The code monitoring apparatus of claim 8 comprising: a source code program data base support processor for storing and selectively providing symbols for an operating program for a plurality of different processors; and said analysis server includes means for communicating with said source code program data base support processor through a network to produce different sets of symbols representative of the object code of different processors and associated processor actions for comparison.
Claim 14
Dependent Claim 36 words
The code monitoring apparatus of claim 1 including means for selectively turning on and turning off the determining means in response to occurrence of a preselected trigger event comprising the occurrence of a preselected processor action.
Claim 15
Dependent Claim 40 words
The code monitoring apparatus of claim 1 including means for selectively turning on and turning off the determining means in response to occurrence of a preselected trigger event comprising the occurrence of a preselected address appearing on an address bus.
Claim 16
Dependent Claim 42 words
The code monitoring apparatus of claim 1 including means for selectively turning on and turning off the determining means in response to occurrence of a preselected trigger event comprising the determination of a match to a preselected part of the object code.
Claim 17
Dependent Claim 37 words
The code monitoring apparatus of claim 1 including means for selectively turning on and turning off the determining means in response to occurrence of a preselected trigger event comprising the passage of a preselected amount of time.
Claim 18
Independent Claim 121 words
A method of monitoring execution of an object coded program stored in a computer, said computer having a processor for performing actions in accordance with associated parts of the object coded program, comprising the steps of: passively detecting the actions being performed by the processor during execution of the object coded program; determining during execution of the object coded program by the processor if there is a match between the actions being performed by the processor as detected during said step of detecting passively with an associated part of the object code; and displaying, if there is a match, an indication of the actions performed by the processor in conjunction with an indication of the associated part of the object code.
Claim 19
Independent Claim 121 words
A method of monitoring execution of an object coded program stored in a computer, said computer having a processor for performing actions in accordance with associated parts of the object coded program, comprising the steps of: passively detecting the actions being performed by the processor during execution of the object coded program; determining during execution of the object coded program by the processor if there is a match between the actions being performed by the processor as detected during said step of detecting passively with an associated part of the object code; and displaying, if there is a match, an indication of the actions performed by the processor in conjunction with an indication of the associated part of the object code.
Claim 20
Dependent Claim 33 words
The method of claim 17 comprising the step of displaying, if there is not a match, an indication of the action performed in conjunction with an indication that there is not a match.
Claim 21
Dependent Claim 35 words
The method of claim 18 in which said indication that there is not a match is the absence of an indication of a part of the object code associated with the indication of the action.
Claim 22
Dependent Claim 55 words
The method of claim 17 in which said step of displaying comprises the steps of: predesignating a preselected processor action as a monitoring trigger event; and displaying an indication of the actions taken and an indication of the object code associated with the actions taken before and after occurrence of each predesignated monitoring trigger event.
Claim 23
Dependent Claim 66 words
The method of claim 17 in which the actions performed by the processor comprises communication actions taken on an address bus of the processor, and said step of determining comprises the steps of: monitoring the communication actions on the address bus; and determining if there is a match between an address on the address bus being monitored and an associated part of the object code program.
Claim 24
Dependent Claim 37 words
The method of claim 21 in which said step of displaying an indication of the associated part of the object code comprises displaying an indication of a function to be performed in accordance with the object code.
Claim 25
Dependent Claim 83 words
The method of claim 17 in which the actions performed by the processor includes communication actions taken on an address bus, a data bus and a control bus, and said steps of determining comprises the steps of: monitoring the actions on the address bus, the data bus and the control bus; and determining if there is a match between the composite communication action on the address bus, the data bus and the control bus and an associated part of the object code program.
Claim 26
Dependent Claim 52 words
The method of claim 23 in which said step of displaying an indication of the associated part of the object code comprises the step of displaying a source code line number and an indication of the function to be performed in accordance with a source code instruction at said source code line.
Claim 27
Dependent Claim 34 words
The method of claim 24 in which said step of displaying comprises the step of displaying whether the function to be performed is one of a read data function or a write data function.
Claim 28
Dependent Claim 42 words
The method of claim 24 in which said object code comprises user code and supervisor code, and said step of displaying comprises the step of displaying whether the associated action is being performed pursuant to the user code or the supervisor code.
Claim 29
Dependent Claim 34 words
The method of claim 26 in which said step of displaying comprises the step of displaying whether the function to be performed is one of a read data function or a write data function.
Claim 30
Dependent Claim 44 words
The method of claim 24 comprising: the step of measuring the elapsed time since beginning of a monitoring cycle, and in which said step of displaying includes the step of displaying the elapsed time in conjunction with the associated part of the object code.
Claim 31
Dependent Claim 49 words
The method of claim 28 comprising: the step of determining the intervals of time between execution of successive lines of object code; and said step of displaying includes the step of displaying the intervals of time in conjunction with the indication of the associated part of the object code.
Claim 32
Dependent Claim 48 words
The method of claim 24 comprising the step of determining the intervals of time between execution of successive lines of object code; and said step of displaying includes the step of displaying the intervals of time in conjunction with the indication of associated part of the object code.
Claim 33
Dependent Claim 18 words
The method of claim 23 comprising the step of determining and displaying the phase of the bus operation.
Claim 34
Dependent Claim 20 words
The method of claim 23 comprising the step of determining and displaying the nature of the action on the bus.
Claim 35
Dependent Claim 21 words
The method of claim 23 comprising the step of determining and displaying the size of data being moved on the bus.
Claim 36
Dependent Claim 21 words
The method of claim 23 comprising the step of determining and displaying the text/data-type command function being performed on the bus.
Claim 37
Dependent Claim 58 words
The method of claim 23 in which said steps of determining and displaying comprises the steps of determining and displaying: (a) the phase of the bus operation; (b) the nature of the action on the bus; (c) the size of the data being moved on the bus; and (d) the text/data-type command function being performed on the bus.
Claim 38
Dependent Claim 41 words
The method of claim 35 in which the items (a), (b), (c) and (d) are displayed in a code having four fields of code of no more than two characters long representative of the items (a), (b), (c) and (d), respectively.
Claim 39
Dependent Claim 35 words
The method of claim 17 comprising the step of displaying in conjunction with each indication of the action taken and the associated part of the object code, an indication of timing of the action taken.
Claim 40
Dependent Claim 22 words
The method of claim 37 in which the indication of timing comprises an indication of the time elapsed since initiation of monitoring.
Claim 41
Dependent Claim 27 words
The method of claim 37 in which the indication of timing comprises an indication of the time duration taken for the processor to perform each action monitored.
Claim 42
Dependent Claim 75 words
The method of claim 17 in which said step of displaying comprises the steps of: temporarily storing the indication of a sequence of the actions performed by the processor as the sequence of actions are performed; detecting when a preselected trigger event has been performed by the processor; and permanently storing for display the indication of the performed sequence of actions being temporarily stored in response to occurrence of the preselected trigger event being detected.
Claim 43
Dependent Claim 34 words
The method of claim 40 in which said step of permanently storing comprises the step of permanently storing the sequence of performed actions occurring both before and after detection of the preselected trigger action.
Claim 44
Dependent Claim 18 words
The method of claim 40 in which said step of temporarily storing is performed with a recirculating memory.

References Cited (Backward Citations)

US4953084A Cited
US5179702A Cited
US5228039A Cited
US5581695A Cited
US5410685A Cited
US5321828A Cited
US5357628A Cited
US5859963A Cited
US5713010A Cited
US5815653A Cited
US5884023A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2003-01-17 2003-07-19 2004-01-18 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2007-01-17 2007-07-19 2008-01-18 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2011-01-17 2011-07-19 2012-01-18 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag