Execution control with cross-level trace mapping

An execution control, execution time technology, applied in the field of execution control with cross-level tracking mapping, can solve problems such as unavailability and inaccuracy

Pending Publication Date: 2020-12-11
MICROSOFT TECH LICENSING LLC
View PDF0 Cites 1 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

[0005] However, because execution traces can contain less information than is sometimes available during real-time process debugging, and because execution traces record state information at a low level, when a debugger or other software tool attempts to control replay execution (i.e., base

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • Execution control with cross-level trace mapping
  • Execution control with cross-level trace mapping
  • Execution control with cross-level trace mapping

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0026] overview

[0027] Debugging in a production cloud environment presents serious technical challenges. For example, assume that a particular request R for an online shopping cart does not work. How can a developer debug the processing of request R without slowing down the processing of all other requests and minimizing the processing slowdown of request R? To find bugs, developers use information about what is going on inside the code, such as a way to see the value of a variable at one or more points of interest during the processing of a request R.

[0028] The trace-based debugging innovations discussed here can help overcome technical difficulties that traditional methods cannot solve. For example, many traditional debuggers and debugging methods allow developers to set halt breakpoints (halt breakpoints) to obtain information about variable values. A pause breakpoint is an instruction to pause execution so that the developer has time to examine memory contents at ...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

PUM

No PUM Login to view more

Abstract

Described technologies aid execution control during replays of traced program behavior. Cross-level mapping correlates source code, an intermediate representation, and native instructions in a trace.The trace includes a record of native code instructions which were executed by a runtime-managed program. The trace does not include any executing instance of the runtime. Breakpoints are set to aligntrace locations with source code expressions or statements, and to skip over garbage collection and other code unlikely to interest a developer. A live debugging environment is adapted to support trace-based reverse execution. An execution controller in a debugger or other tool may utilize breakpoint ranges, cross-level mappings, backward step-out support, and other items to control a replay execution of the trace. Aspects of familiar compilers or familiar runtimes may be re-purposed for innovative execution control which replays previously generated native code, as opposed to their established purpose of generating native code.

Description

Background technique [0001] Computer software is often complex. Part of the complexity may arise from the nature of the work the program is designed to perform, for example, tracking numerous real-world items or ongoing transactions over hours or more, coordinating activities with other complex software, controlling complex hardware, etc. . In almost any real-world use of software, complexity also arises, as many details are introduced and should be properly managed to instruct the computer hardware how to perform real-world work that was originally written in English or another natural language to describe with much less precision. That said, the transformation from a high-level description to a low-level implementation executable by a computer system inevitably introduces complexity. Programming language source code, which is even more precise than natural language, is still at a relatively high level, and thus obscure, open to various understandings and implementations. ...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to view more

Application Information

Patent Timeline
no application Login to view more
IPC IPC(8): G06F11/36
CPCG06F11/3636G06F11/3664G06F11/3624
Inventor P·尼尔森J·戴维斯D·迈尔斯T·莱D·陈J·莫拉N·福尔克
Owner MICROSOFT TECH LICENSING LLC
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Try Eureka
PatSnap group products