Function evaluation using lightweight process snapshots

    公开(公告)号:US09710357B2

    公开(公告)日:2017-07-18

    申请号:US13567036

    申请日:2012-08-04

    CPC classification number: G06F11/362 G06F11/3096 G06F11/3636 G06F11/366

    Abstract: A debugger creates a lightweight process snapshot of a debuggee target process and performs in-process or function evaluation (func-eval) inspection against the copy. This allows most state in the debuggee process to stay intact because changes made by the func-eval are local to the process snapshot. Debugger operations that are too destructive to the original debuggee process can be performed on the process snapshot without threatening the real process. Process snapshots allow the debugger to perform a func-eval while isolating the debuggee process and not losing the actual state of the original debuggee process. A new process snapshot of the debuggee process is created when the current snapshot is corrupt due to a func-eval side effect. The debugger may also use a lightweight machine snapshot of the host debuggee machine and perform func-evals against that machine snapshot to further isolate kernel and other side effects.

    Function Evaluation using Lightweight Process Snapshots
    2.
    发明申请
    Function Evaluation using Lightweight Process Snapshots 有权
    使用轻量级过程快照进行功能评估

    公开(公告)号:US20140040897A1

    公开(公告)日:2014-02-06

    申请号:US13567036

    申请日:2012-08-04

    CPC classification number: G06F11/362 G06F11/3096 G06F11/3636 G06F11/366

    Abstract: A debugger creates a lightweight process snapshot of a debuggee target process and performs in-process or function evaluation (func-eval) inspection against the copy. This allows most state in the debuggee process to stay intact because changes made by the func-eval are local to the process snapshot. Debugger operations that are too destructive to the original debuggee process can be performed on the process snapshot without threatening the real process. Process snapshots allow the debugger to perform a func-eval while isolating the debuggee process and not losing the actual state of the original debuggee process. A new process snapshot of the debuggee process is created when the current snapshot is corrupt due to a func-eval side effect. The debugger may also use a lightweight machine snapshot of the host debuggee machine and perform func-evals against that machine snapshot to further isolate kernel and other side effects.

    Abstract translation: 调试器创建一个调试对象进程的轻量级进程快照,并针对副本执行进程内或函数评估(func-eval)检查。 这允许调试过程中的大多数状态保持原样,因为func-eval所做的更改是进程快照的本地。 可以对进程快照执行对原始调试程序过程具有破坏性的调试器操作,而不会对实际进程造成威胁。 过程快照允许调试器在隔离调试过程的同时执行func-eval,而不会丢失原始调试过程的实际状态。 由于func-eval副作用,当前快照损坏时,将创建一个新的进程快照。 调试器还可以使用主机调试器机器的轻量级机器快照,并针对该机器快照执行功能,以进一步隔离内核和其他副作用。

    Ensuring thread affinity for interprocess communication in a managed code environment
    3.
    发明申请
    Ensuring thread affinity for interprocess communication in a managed code environment 有权
    确保在托管代码环境中对进程间通信的线程关联

    公开(公告)号:US20070226752A1

    公开(公告)日:2007-09-27

    申请号:US11388809

    申请日:2006-03-23

    CPC classification number: G06F9/547 G06F9/546 H04L67/1002 H04L67/42

    Abstract: A remote procedure call channel for interprocess communication in a managed code environment ensures thread-affinity on both sides of an interprocess communication. Using the channel, calls from a first process to a second process are guaranteed to run on a same thread in a target process. Furthermore, calls from the second process back to the first process will also always execute on the same thread. An interprocess communication manager that allows thread affinity and reentrancy is able to correctly keep track of the logical thread of execution so calls are not blocked in unmanaged hosts. Furthermore, both unmanaged and managed hosts are able to make use of transparent remote call functionality provided by an interprocess communication manager for the managed code environment.

    Abstract translation: 用于在托管代码环境中的进程间通信的远程过程调用通道确保进程间通信两端的线程关联。 使用该通道,从第一进程到第二进程的调用将保证在目标进程中的同一线程上运行。 此外,从第二个进程返回到第一个进程的调用也将始终在同一个线程上执行。 允许线程关联和重入的进程间通信管理器能够正确地跟踪执行的逻辑线程,从而在非托管主机中不阻止调用。 此外,非托管和托管主机都能够使用由进程间通信管理器为托管代码环境提供的透明远程调用功能。

    Non-destructive debugging for add-ins
    4.
    发明申请
    Non-destructive debugging for add-ins 有权
    加载项的非破坏性调试

    公开(公告)号:US20060277527A1

    公开(公告)日:2006-12-07

    申请号:US11142803

    申请日:2005-06-01

    CPC classification number: G06F11/3664

    Abstract: Methods and systems for debugging add-ins using a non-destructive approach. Add-ins are hosted, not stand-alone components, that run in a host application. The add-ins are loaded into an isolated environment so they can be debugged and stopped without affecting the host application. This prevents termination of the host application at arbitrary times. In addition, the host application can refresh itself when an add-in is stepped through in the debugger. The present invention also allows the add-in developer to interact with the host application during a debugging session even when the add-in is stopped at a breakpoint.

    Abstract translation: 使用非破坏性方法调试加载项的方法和系统。 在主机应用程序中运行的加载项是托管的,而不是独立的组件。 加载项加载到隔离的环境中,以便它们可以被调试和停止,而不会影响主机应用程序。 这样可以防止在任意时间终止主机应用程序。 此外,主机应用程序可以在调试器中跨越加载项时自动刷新。 本发明还允许加载开发者在调试会话期间与主机应用进行交互,即使当插件在断点处停止时。

    Historical Software Diagnostics using Lightweight Process Snapshots
    6.
    发明申请
    Historical Software Diagnostics using Lightweight Process Snapshots 有权
    使用轻量级流程快照的历史软件诊断

    公开(公告)号:US20140040669A1

    公开(公告)日:2014-02-06

    申请号:US13567034

    申请日:2012-08-04

    CPC classification number: G06F11/3636 G06F11/3096 G06F11/366

    Abstract: A debugging and diagnostics system allows users to take lightweight process snapshots of running debuggee processes so the users may analyze those snapshots at a later time. The snapshot mechanism allows diagnostic tools to compare an original process or one or more process snapshots or to compare any of a series of snapshots to each other. The snapshot mechanism further allows users to inspect a snapshot of process memory while allowing the original process to continue running with minimal impact. A user may do historical debugging using process snapshots of a debuggee process taken over time. This allows the user to view the state of the debuggee process as it existed when the snapshot was taken. The lightweight process snapshot is less invasive because it does not require a full copy of the memory and allows the original process to run un-interrupted while specific collections and inspections are completed.

    Abstract translation: 调试和诊断系统允许用户对运行的调试进程进行轻量级的进程快照,以便用户稍后分析这些快照。 快照机制允许诊断工具比较原始进程或一个或多个进程快照,或将一系列快照中的任何一个快照进行比较。 快照机制还允许用户检查进程内存的快照,同时允许原始进程以最小的影响继续运行。 用户可以使用随时间推移的调试过程的过程快照进行历史调试。 这允许用户查看在执行快照时存在的debuggee进程的状态。 轻量级进程快照具有较少的侵入性,因为它不需要内存的完整副本,并允许原始进程运行不间断,而特定的集合和检查完成。

    Non-destructive debugging for add-ins
    7.
    发明授权
    Non-destructive debugging for add-ins 有权
    加载项的非破坏性调试

    公开(公告)号:US07716650B2

    公开(公告)日:2010-05-11

    申请号:US11142803

    申请日:2005-06-01

    CPC classification number: G06F11/3664

    Abstract: Methods and systems for debugging add-ins using a non-destructive approach. Add-ins are hosted, not stand-alone components, that run in a host application. The add-ins are loaded into an isolated environment so they can be debugged and stopped without affecting the host application. This prevents termination of the host application at arbitrary times. In addition, the host application can refresh itself when an add-in is stepped through in the debugger. The present invention also allows the add-in developer to interact with the host application during a debugging session even when the add-in is stopped at a breakpoint.

    Abstract translation: 使用非破坏性方法调试加载项的方法和系统。 在主机应用程序中运行的加载项是托管的,而不是独立的组件。 加载项加载到隔离的环境中,以便它们可以被调试和停止,而不会影响主机应用程序。 这样可以防止在任意时间终止主机应用程序。 此外,主机应用程序可以在调试器中跨越加载项时自动刷新。 本发明还允许加载开发者在调试会话期间与主机应用进行交互,即使当插件在断点处停止时。

    Historical software diagnostics using lightweight process snapshots
    8.
    发明授权
    Historical software diagnostics using lightweight process snapshots 有权
    使用轻量级进程快照的历史软件诊断

    公开(公告)号:US08909990B2

    公开(公告)日:2014-12-09

    申请号:US13567034

    申请日:2012-08-04

    CPC classification number: G06F11/3636 G06F11/3096 G06F11/366

    Abstract: A debugging and diagnostics system allows users to take lightweight process snapshots of running debuggee processes so the users may analyze those snapshots at a later time. The snapshot mechanism allows diagnostic tools to compare an original process or one or more process snapshots or to compare any of a series of snapshots to each other. The snapshot mechanism further allows users to inspect a snapshot of process memory while allowing the original process to continue running with minimal impact. A user may do historical debugging using process snapshots of a debuggee process taken over time. This allows the user to view the state of the debuggee process as it existed when the snapshot was taken. The lightweight process snapshot is less invasive because it does not require a full copy of the memory and allows the original process to run un-interrupted while specific collections and inspections are completed.

    Abstract translation: 调试和诊断系统允许用户对运行的调试进程进行轻量级的进程快照,以便用户稍后分析这些快照。 快照机制允许诊断工具比较原始进程或一个或多个进程快照,或将一系列快照中的任何一个快照进行比较。 快照机制还允许用户检查进程内存的快照,同时允许原始进程以最小的影响继续运行。 用户可以使用随时间推移的调试过程的过程快照进行历史调试。 这允许用户查看在执行快照时存在的debuggee进程的状态。 轻量级进程快照具有较少的侵入性,因为它不需要内存的完整副本,并允许原始进程运行不间断,而特定的集合和检查完成。

    Integrated body conditioning exercise system
    9.
    发明授权
    Integrated body conditioning exercise system 失效
    综合身体调理运动系统

    公开(公告)号:US07670264B2

    公开(公告)日:2010-03-02

    申请号:US11050319

    申请日:2005-02-02

    CPC classification number: A63B24/00 A63B24/0075

    Abstract: The Integrated Body Conditioning (IBC) exercise system is a method of exercising employing three defining elements: integration of aerobic, resistance, and Range of Motion exercises performed at a properly elevated heart rate with exercise intensity and duration adjusted in view of biofeedback data.

    Abstract translation: 综合身体调节(IBC)运动系统是运用三种定义要素的一种方法:在适当升高的心率下进行的有氧,阻力和运动范围的运动,运动强度和持续时间根据生物反馈数据进行调整。

Patent Agency Ranking