CA2082066A1 - Software debugging system and method especially adapted for code debugging within a multi-architecture environment - Google Patents

Software debugging system and method especially adapted for code debugging within a multi-architecture environment

Info

Publication number
CA2082066A1
CA2082066A1 CA2082066A CA2082066A CA2082066A1 CA 2082066 A1 CA2082066 A1 CA 2082066A1 CA 2082066 A CA2082066 A CA 2082066A CA 2082066 A CA2082066 A CA 2082066A CA 2082066 A1 CA2082066 A1 CA 2082066A1
Authority
CA
Canada
Prior art keywords
debugging
commands
domain
architecture
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CA2082066A
Other languages
French (fr)
Other versions
CA2082066C (en
Inventor
James A. Wooldridge
Ronald F. Brender
Henry N. Grieb Iii
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Digital Equipment Corp
Original Assignee
James A. Wooldridge
Ronald F. Brender
Henry N. Grieb Iii
Digital Equipment Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by James A. Wooldridge, Ronald F. Brender, Henry N. Grieb Iii, Digital Equipment Corporation filed Critical James A. Wooldridge
Publication of CA2082066A1 publication Critical patent/CA2082066A1/en
Application granted granted Critical
Publication of CA2082066C publication Critical patent/CA2082066C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software

Abstract

In a computer system that embodies a first hardware (X) architecture and includes a memory system and at least one simulator for a second (Y) architecture and a system for executing and debugging multiple codes having an environment manager that handles cross-domain calls, a system is provided for debugging code in each domain as part of said multi-code executing and debugging system in a multi-architecture environment. The debugging system includes means for receiving calls for debugger operation from either the X domain or the Y domain. Commands are generated for debugging operations in either domain. The commands that may be generated by the user include RUN and STEP commands for the machine state in the debug domain. General support commands and debug operations support commands may also be generated. The debug operations support commands include EXAMINE, DEPOSIT, SET BREAKPOINT AND CANCEL BREAKPOINT. The latter commands are implemented differently for the different domains.
CA002082066A 1991-03-07 1992-03-05 Software debugging system and method especially adapted for code debugging within a multi-architecture environment Expired - Fee Related CA2082066C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US66588891A 1991-03-07 1991-03-07
US665,888 1991-03-07

Publications (2)

Publication Number Publication Date
CA2082066A1 true CA2082066A1 (en) 1992-09-08
CA2082066C CA2082066C (en) 1998-04-21

Family

ID=24671965

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002082066A Expired - Fee Related CA2082066C (en) 1991-03-07 1992-03-05 Software debugging system and method especially adapted for code debugging within a multi-architecture environment

Country Status (8)

Country Link
US (1) US5548717A (en)
EP (1) EP0532744B1 (en)
JP (1) JP2753500B2 (en)
AU (1) AU651453B2 (en)
CA (1) CA2082066C (en)
DE (1) DE69216020T2 (en)
IE (1) IE79073B1 (en)
WO (1) WO1992015947A1 (en)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU651453B2 (en) 1991-03-07 1994-07-21 Digital Equipment Corporation Improved software debugging system and method especially adapted for code debugging within a multi-architecture environment
US5410648A (en) * 1991-08-30 1995-04-25 International Business Machines Corporation Debugging system wherein multiple code views are simultaneously managed
US5802291A (en) * 1995-03-30 1998-09-01 Sun Microsystems, Inc. System and method to control and administer distributed object servers using first class distributed objects
US5778230A (en) * 1995-11-13 1998-07-07 Object Technology Licensing Corp. Goal directed object-oriented debugging system
US6535903B2 (en) 1996-01-29 2003-03-18 Compaq Information Technologies Group, L.P. Method and apparatus for maintaining translated routine stack in a binary translation environment
US6091897A (en) 1996-01-29 2000-07-18 Digital Equipment Corporation Fast translation and execution of a computer program on a non-native architecture by use of background translator
US5826005A (en) * 1996-03-22 1998-10-20 Sun Microsystems, Inc. System and method for diagnosing computer program faults through the provision of program probe points and referenceable diagnostic program probes
US5901315A (en) * 1997-06-13 1999-05-04 International Business Machines Corporation Method for debugging a Java application having native method dynamic load libraries
US6631514B1 (en) * 1998-01-06 2003-10-07 Hewlett-Packard Development, L.P. Emulation system that uses dynamic binary translation and permits the safe speculation of trapping operations
US6141635A (en) * 1998-06-12 2000-10-31 Unisys Corporation Method of diagnosing faults in an emulated computer system via a heterogeneous diagnostic program
US6247172B1 (en) * 1998-07-02 2001-06-12 Hewlett-Packard Company Method for a translation system that aggressively optimizes and preserves full synchronous exception state
US6480818B1 (en) * 1998-11-13 2002-11-12 Cray Inc. Debugging techniques in a multithreaded environment
US7464044B2 (en) 1998-12-08 2008-12-09 International Business Machines Corporation Method and system for using emulation objects for developing point of sale
US6230313B1 (en) * 1998-12-23 2001-05-08 Cray Inc. Parallelism performance analysis based on execution trace information
DE60023882T2 (en) * 1999-05-07 2006-07-20 Infineon Technologies Ag System on a chip with reprogrammable tester, debugger and bus monitor
DE10036387A1 (en) * 1999-08-16 2001-03-01 Advantest Corp Semiconductor test program diagnostic device has packet extraction and display unit for extracting part of test signal based on data fed in by data feed unit and for displaying its contents
US6543049B1 (en) * 1999-09-03 2003-04-01 International Business Machines Corporation Ranked break points and method for debugging a computer program
US6785884B1 (en) * 1999-09-29 2004-08-31 Unisys Corporation Symbolic debug interface for register transfer simulator debugger
WO2001063416A1 (en) * 2000-02-24 2001-08-30 Bops Incorporated Methods and apparatus for scalable array processor interrupt detection and response
AU2001266660A1 (en) * 2000-06-02 2001-12-17 Virtio Corporation Method and system for virtual prototyping
US20040111707A1 (en) * 2000-12-15 2004-06-10 Bliss Andrew L. Debugger for multiple processors and multiple debugging types
US20020083421A1 (en) * 2000-12-22 2002-06-27 Hitachi America, Ltd. Assembly language code compilation for an instruction-set architecture containing new instructions using the prior assembler
US6826746B2 (en) 2001-03-08 2004-11-30 International Business Machines Corporation Debugger probe for object oriented programming
US6931631B2 (en) * 2001-06-27 2005-08-16 International Business Machines Corporation Low impact breakpoint for multi-user debugging
US7007268B2 (en) * 2001-08-20 2006-02-28 Sun Microsystems, Inc. Method and apparatus for debugging in a massively parallel processing environment
US7200839B2 (en) * 2001-12-11 2007-04-03 International Business Machines Corporation Debugging transactions across multiple processors
US7168067B2 (en) * 2002-02-08 2007-01-23 Agere Systems Inc. Multiprocessor system with cache-based software breakpoints
TW588238B (en) * 2003-02-13 2004-05-21 Micro Star Int Co Ltd Program debugging method
US7496895B1 (en) * 2004-12-29 2009-02-24 The Mathworks, Inc. Multi-domain unified debugger
US7849450B1 (en) * 2005-01-28 2010-12-07 Intel Corporation Devices, methods and computer program products for reverse execution of a simulation
US7685593B2 (en) * 2005-05-12 2010-03-23 Microsoft Corporation Systems and methods for supporting multiple gaming console emulation environments
US20070011431A1 (en) * 2005-06-27 2007-01-11 Microsoft Corporation ROM software breakpoints
US8104019B2 (en) * 2006-03-31 2012-01-24 Microsoft Corporation Debugging in an operating system with multiple subsystems
US20070250814A1 (en) * 2006-04-21 2007-10-25 Microsoft Corporation Debugging in an operating system with multiple subsystems
US20080098359A1 (en) * 2006-09-29 2008-04-24 Ventsislav Ivanov Manipulation of trace sessions based on address parameters
US9317636B1 (en) * 2006-12-11 2016-04-19 Synopsys, Inc. System and method for stopping integrated circuit simulation
US8255203B2 (en) * 2007-04-26 2012-08-28 Hewlett-Packard Development Company, L.P. Method of debugging an executable computer program having instructions for different computer architectures
US20100024030A1 (en) * 2008-07-23 2010-01-28 Microsoft Corporation Restartable transformation automaton
JP2010140240A (en) * 2008-12-11 2010-06-24 Renesas Electronics Corp Processor, multiprocessor and debugging method
US20100153693A1 (en) * 2008-12-17 2010-06-17 Microsoft Corporation Code execution with automated domain switching
US20130132063A1 (en) * 2011-11-18 2013-05-23 Michael J. Rieschl Systems and methods for debugging just-in-time static translation in an emulated system
US10339229B1 (en) 2013-05-31 2019-07-02 Cadence Design Systems, Inc. Simulation observability and control of all hardware and software components of a virtual platform model of an electronics system
US9262305B1 (en) * 2013-05-31 2016-02-16 Cadence Design Systems, Inc. Simulation observability and control of all hardware and software components of a virtual platform model of an electronics system
US9690686B1 (en) 2014-03-31 2017-06-27 Cadence Design Systems, Inc. Method for setting breakpoints in automatically loaded software
US11487561B1 (en) 2014-12-24 2022-11-01 Cadence Design Systems, Inc. Post simulation debug and analysis using a system memory model
US10802852B1 (en) 2015-07-07 2020-10-13 Cadence Design Systems, Inc. Method for interactive embedded software debugging through the control of simulation tracing components

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2253430A5 (en) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
FR2253435A5 (en) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
FR2253425A5 (en) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US4084235A (en) * 1975-04-14 1978-04-11 Honeywell Information Systems Inc. Emulation apparatus
JPS5576447A (en) * 1978-12-01 1980-06-09 Fujitsu Ltd Address control system for software simulation
US4253145A (en) * 1978-12-26 1981-02-24 Honeywell Information Systems Inc. Hardware virtualizer for supporting recursive virtual computer systems on a host computer system
JPS6010665B2 (en) * 1979-07-20 1985-03-19 沖電気工業株式会社 microcomputer
GB2060225B (en) * 1979-09-29 1983-05-25 Plessey Co Ltd Multi-programming data processing system process suspension
US4456954A (en) * 1981-06-15 1984-06-26 International Business Machines Corporation Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations
US4533996A (en) * 1982-02-23 1985-08-06 International Business Machines Corporation Peripheral systems accommodation of guest operating systems
US4454580A (en) * 1981-09-16 1984-06-12 International Business Machines Corporation Program call method and call instruction execution apparatus
US4672532A (en) * 1982-06-14 1987-06-09 Tektronix, Inc. Software/hardware integration control system
US4509122A (en) * 1982-11-18 1985-04-02 International Business Machines Corporation Method for controlling the file transfer capability of an interactive text processing system that is emulating a host processing system terminal
JPS59140666A (en) * 1983-01-31 1984-08-13 Victor Co Of Japan Ltd Reproducer for rotary recording medium
US4727480A (en) * 1984-07-09 1988-02-23 Wang Laboratories, Inc. Emulation of a data processing system
JPS6133546A (en) * 1984-07-25 1986-02-17 Nec Corp Information processor
US4792895A (en) * 1984-07-30 1988-12-20 International Business Machines Corp. Instruction processing in higher level virtual machines by a real machine
JPS6273333A (en) * 1985-09-26 1987-04-04 Nec Corp Emulation control system
US4794522A (en) * 1985-09-30 1988-12-27 International Business Machines Corporation Method for detecting modified object code in an emulator
DE3678893D1 (en) * 1985-10-03 1991-05-29 Mitsubishi Electric Corp COMPUTER PROGRAM DEBUG SYSTEM.
US4825354A (en) * 1985-11-12 1989-04-25 American Telephone And Telegraph Company, At&T Bell Laboratories Method of file access in a distributed processing computer network
JPS62182939A (en) * 1986-02-07 1987-08-11 Hitachi Ltd Logic simulation method for information processor
JPS62214443A (en) * 1986-03-17 1987-09-21 Fanuc Ltd Emulation executing method
JPS6376028A (en) * 1986-09-19 1988-04-06 Fujitsu Ltd Method for controlling execution of instruction step in virtual computer system
US4841476A (en) * 1986-10-06 1989-06-20 International Business Machines Corporation Extended floating point operations supporting emulation of source instruction execution
US4802165A (en) * 1986-10-08 1989-01-31 Enteleki, Inc. Method and apparatus of debugging computer programs
US5210832A (en) 1986-10-14 1993-05-11 Amdahl Corporation Multiple domain emulation system with separate domain facilities which tests for emulated instruction exceptions before completion of operand fetch cycle
US5133072A (en) * 1986-11-13 1992-07-21 Hewlett-Packard Company Method for improved code generation in reduced instruction set computers
US4992934A (en) * 1986-12-15 1991-02-12 United Technologies Corporation Reduced instruction set computing apparatus and methods
US4811345A (en) * 1986-12-16 1989-03-07 Advanced Micro Devices, Inc. Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit
US4819234A (en) * 1987-05-01 1989-04-04 Prime Computer, Inc. Operating system debugger
JPS6491228A (en) * 1987-09-30 1989-04-10 Takeshi Sakamura Data processor
US5067072A (en) * 1987-11-06 1991-11-19 Visystems, Inc. Virtual software machine which preprocesses application program to isolate execution dependencies and uses target computer processes to implement the execution dependencies
US4951195A (en) * 1988-02-01 1990-08-21 International Business Machines Corporation Condition code graph analysis for simulating a CPU processor
US5167023A (en) 1988-02-01 1992-11-24 International Business Machines Translating a dynamic transfer control instruction address in a simulated CPU processor
US4945480A (en) * 1988-02-10 1990-07-31 International Business Machines Corporation Data domain switching on program address space switching and return
US5210874A (en) 1988-03-22 1993-05-11 Digital Equipment Corporation Cross-domain call system in a capability based digital data processing system
JP2666847B2 (en) * 1988-06-06 1997-10-22 日本電気株式会社 Heterogeneous language communication method
US5038348A (en) * 1988-07-01 1991-08-06 Sharp Kabushiki Kaisha Apparatus for debugging a data flow program
US5051893A (en) * 1988-07-11 1991-09-24 Digital Equipment Corporation System for processing data to facilitate the creation of executable images
WO1990001738A1 (en) * 1988-07-29 1990-02-22 Hunter Systems Software, Inc. Machine process for translating programs in binary machine language into another binary machine language
US4949255A (en) * 1988-09-07 1990-08-14 International Business Machines Corp. Message interface and method for recursive calling between interpretive and compiled computer processes
WO1990003610A1 (en) 1988-09-20 1990-04-05 Digital Equipment Corporation Generic code sharing arrangement for digital data processing system
JPH02135545A (en) * 1988-11-16 1990-05-24 Fujitsu Ltd Execution control processing system for debugger
US5313614A (en) * 1988-12-06 1994-05-17 At&T Bell Laboratories Method and apparatus for direct conversion of programs in object code form between different hardware architecture computer systems
US5063499A (en) * 1989-01-09 1991-11-05 Connectix, Inc. Method for a correlating virtual memory systems by redirecting access for used stock instead of supervisor stock during normal supervisor mode processing
US5142622A (en) 1989-01-31 1992-08-25 International Business Machines Corporation System for interconnecting applications across different networks of data processing systems by mapping protocols across different network domains
US5146593A (en) * 1989-03-06 1992-09-08 International Business Machines Corporation Procedure call interface
JPH02277146A (en) * 1989-04-18 1990-11-13 Nec Corp Program debugging system
JPH0314040A (en) * 1989-06-12 1991-01-22 Toshiba Corp Program transportable support device
US5613116A (en) 1989-07-12 1997-03-18 Digital Equipment Corporation System for specifying interactions among objects in a digital data processing system
JPH0362202A (en) * 1989-07-31 1991-03-18 Japan Electron Control Syst Co Ltd Control program developing device
US5218699A (en) 1989-08-24 1993-06-08 International Business Machines Corporation Remote procedure calls in heterogeneous systems
US5093917A (en) * 1990-01-17 1992-03-03 Ag Communication Systems Corporation Method for passing data parameters between a calling program and a called subroutine in a command analysis table of a computer stored data base system
DE69218682T2 (en) 1991-02-01 1997-09-18 Digital Equipment Corp METHOD FOR TESTING A SOFTWARE PROGRAM
US5307504A (en) * 1991-03-07 1994-04-26 Digital Equipment Corporation System and method for preserving instruction granularity when translating program code from a computer having a first architecture to a computer having a second reduced architecture during the occurrence of interrupts due to asynchronous events
US5339422A (en) * 1991-03-07 1994-08-16 Digital Equipment Corporation System and method for jacketing cross-domain calls in a multi-code execution and debugging system within a multi-architecture environment
AU651453B2 (en) 1991-03-07 1994-07-21 Digital Equipment Corporation Improved software debugging system and method especially adapted for code debugging within a multi-architecture environment
US5652869A (en) 1991-03-07 1997-07-29 Digital Equipment Corporation System for executing and debugging multiple codes in a multi-architecture environment using jacketing means for jacketing the cross-domain calls
US5408650A (en) 1993-06-29 1995-04-18 Digital Equipment Corporation Memory analysis system for dynamically displaying memory allocation and de-allocation events associated with an application program

Also Published As

Publication number Publication date
JPH05505695A (en) 1993-08-19
US5548717A (en) 1996-08-20
AU651453B2 (en) 1994-07-21
DE69216020D1 (en) 1997-01-30
DE69216020T2 (en) 1997-07-10
EP0532744B1 (en) 1996-12-18
JP2753500B2 (en) 1998-05-20
AU1761992A (en) 1992-10-06
EP0532744A1 (en) 1993-03-24
IE79073B1 (en) 1998-04-08
WO1992015947A1 (en) 1992-09-17
IE920746A1 (en) 1992-09-09
CA2082066C (en) 1998-04-21

Similar Documents

Publication Publication Date Title
CA2082066A1 (en) Software debugging system and method especially adapted for code debugging within a multi-architecture environment
Miles Methods in C
CA2102089A1 (en) Recompilation of Computer Programs for Enhanced Optimization
US6412106B1 (en) Graphical system and method for debugging computer programs
CA2082064A1 (en) Improved error reporting for translated code execution
WO1992015962A3 (en) System and method for transforming procedure calls in a cross debugging environment
CA2274665A1 (en) Method, system and data structures for computer software application development and execution
AU5087893A (en) Script-based system for testing a multi-user computer system
DE69933343D1 (en) Method for operating a motor vehicle management computer system
WO1997038536A3 (en) Programmable call processing system and method
Evans et al. On-line debugging techniques: a survey
CA2211505A1 (en) Setting instance breakpoints in object oriented computer programs
CA2078609A1 (en) Upgrade method and system
WO1997042564A3 (en) Process control of rule-based agents with evaluation of stored referential expressions
DE69219538D1 (en) IMPROVED SYSTEM AND METHOD FOR DETERMINING CROSS-BORDER CALLING COMMANDS AND STORAGE DATA, IN PARTICULAR FOR CODE INTERFACE EXECUTION IN THE MULTIPLE CODE EXECUTION AND TROUBLESHOOTING SYSTEM OF A MULTIPLE COMPUTER ARCHITECTURE
JP3304524B2 (en) System call function processing unit
WO2001046761A3 (en) Fabrication process control system emulator
CA2164335A1 (en) System for generating instructions for speech application
JPS6152498B2 (en)
JPS60110045A (en) Automatic trace damping method
CN116599815A (en) Implementation method for ARM architecture PON gateway to manually output user layer program call stack
JPH04307636A (en) Program test system
KR970029098A (en) How to Manage Compile Switch Software Compilation on Network File System
CA2234796A1 (en) Portable object-oriented operating system
Freestone Formal methods applied to protocols-the Alvey FORMAP project

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed