Managing processes within suspend states and execution states
    31.
    发明授权
    Managing processes within suspend states and execution states 有权
    在挂起状态和执行状态中管理进程

    公开(公告)号:US09588576B2

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

    申请号:US13230698

    申请日:2011-09-12

    摘要: One or more techniques and/or systems are provided for suspending logically related processes associated with an application, determining whether to resume a suspended process based upon one or more wake policies, and/or managing an application state of an application, such as timer and/or system message data. That is, logically related processes associated with an application, such as child processes, may be identified and suspended based upon logical relationships between the processes (e.g., a logical container hierarchy may be traversed to identify logically related processes). A suspended process may be resumed based upon a set of wake policies. For example, a suspended process may be resumed based upon an inter-process communication call policy that may be triggered by an application attempting to communicate with the suspended process. Application data may be managed while an application is suspended so that the application may be resumed in a current and/or relevant state.

    摘要翻译: 提供一个或多个技术和/或系统来暂停与应用相关联的逻辑相关进程,基于一个或多个唤醒策略来确定是否恢复暂停的进程,和/或管理应用的应用状态,诸如定时器和 /或系统消息数据。 也就是说,可以基于进程之间的逻辑关系(例如,可以遍历逻辑容器层次结构以识别逻辑上相关的进程)来识别和暂停与诸如子进程的应用相关联的逻辑相关进程。 可以基于一组唤醒策略恢复暂停的进程。 例如,可以基于可以由尝试与暂停进程通信的应用程序触发的进程间通信呼叫策略来恢复暂停的进程。 应用程序数据可以在应用程序暂停时进行管理,以便可以在当前和/或相关状态恢复应用程序。

    One-time initialization
    32.
    发明授权
    One-time initialization 有权
    一次初始化

    公开(公告)号:US09582316B2

    公开(公告)日:2017-02-28

    申请号:US13106836

    申请日:2011-05-12

    IPC分类号: G06F9/46 G06F9/48

    CPC分类号: G06F9/4806

    摘要: Aspects of the present invention are directed at providing safe and efficient ways for a program to perform a one-time initialization of a data item in a multi-threaded environment. In accordance with one embodiment, a method is provided that allows a program to perform a synchronized initialization of a data item that may be accessed by multiple threads. More specifically, the method includes receiving a request to initialize the data item from a current thread. In response to receiving the request, the method determines whether the current thread is the first thread to attempt to initialize the data item. If the current thread is the first thread to attempt to initialize the data item, the method enforces mutual exclusion and blocks other attempts to initialize the data item made by concurrent threads. Then, the current thread is allowed to execute program code provided by the program to initialize the data item.

    摘要翻译: 本发明的方面旨在为程序在多线程环境中执行数据项的一次初始化提供安全和有效的方式。 根据一个实施例,提供了一种允许程序执行可被多个线程访问的数据项的同步初始化的方法。 更具体地说,该方法包括从当前线程接收初始化数据项的请求。 响应于接收到请求,该方法确定当前线程是否是尝试初始化数据项的第一线程。 如果当前线程是尝试初始化数据项的第一个线程,则该方法会强制执行互斥,并阻止其他尝试初始化由并发线程创建的数据项。 然后,允许当前线程执行程序提供的程序代码来初始化数据项。

    Parallel DLL tree initialization
    33.
    发明授权
    Parallel DLL tree initialization 有权
    并行DLL树初始化

    公开(公告)号:US08707283B2

    公开(公告)日:2014-04-22

    申请号:US11693102

    申请日:2007-03-29

    IPC分类号: G06F9/44

    CPC分类号: G06F9/445

    摘要: A parallel processing method and apparatus for initializing libraries is disclosed. Libraries for an application are identified, an initialization order for the libraries is determined, and the libraries are initialized in asynchronous stages. The initialization order is determined by forming a library tree of the libraries' references and determining a load order for the references according to the levels of the references in the library tree. The asynchronous stages comprise a loading stage that includes a load queue, a snapping stage that includes a snap queue, and an initializing stage that includes an initialize queue.

    摘要翻译: 公开了一种用于初始化库的并行处理方法和装置。 识别应用程序的库,确定库的初始化顺序,并以异步阶段初始化库。 初始化顺序通过形成库引用的库树来确定,并根据库树中引用的级别确定引用的加载顺序。 异步阶段包括加载阶段,其包括加载队列,包括快照队列的捕捉阶段以及包括初始化队列的初始化阶段。

    Managing processes within suspend states and execution states
    34.
    发明授权
    Managing processes within suspend states and execution states 有权
    在挂起状态和执行状态中管理进程

    公开(公告)号:US08621494B2

    公开(公告)日:2013-12-31

    申请号:US13230714

    申请日:2011-09-12

    IPC分类号: G06F9/44 G06F13/00

    摘要: One or more techniques and/or systems are provided for suspending logically related processes associated with an application, determining whether to resume a suspended process based upon a wake policy, and/or managing an application state of an application, such as timer and/or system message data. That is, logically related processes associated with an application, such as child processes, may be identified and suspended based upon logical relationships between the processes (e.g., a logical container hierarchy may be traversed to identify logically related processes). A suspended process may be resumed based upon a wake policy. For example, a suspended process may be resumed based upon an inter-process communication call policy that may be triggered by an application attempting to communicate with the suspended process. Application data may be managed while an application is suspended so that the application may be resumed in a current and/or relevant state.

    摘要翻译: 提供一个或多个技术和/或系统来暂停与应用相关联的逻辑相关进程,基于唤醒策略确定是否恢复暂停的进程,和/或管理应用的应用状态,诸如定时器和/或 系统消息数据。 也就是说,可以基于进程之间的逻辑关系(例如,可以遍历逻辑容器层次结构以识别逻辑上相关的进程)来识别和暂停与诸如子进程的应用相关联的逻辑相关进程。 可以基于唤醒策略恢复暂停的进程。 例如,可以基于可以由尝试与暂停进程通信的应用程序触发的进程间通信呼叫策略来恢复暂停的进程。 应用程序数据可以在应用程序暂停时进行管理,以便可以在当前和/或相关状态恢复应用程序。

    OPERATING SYSTEM VIRTUAL MEMORY MANAGEMENT FOR HARDWARE TRANSACTIONAL MEMORY
    35.
    发明申请
    OPERATING SYSTEM VIRTUAL MEMORY MANAGEMENT FOR HARDWARE TRANSACTIONAL MEMORY 有权
    操作系统硬件事务存储器虚拟内存管理

    公开(公告)号:US20120284485A1

    公开(公告)日:2012-11-08

    申请号:US13554558

    申请日:2012-07-20

    IPC分类号: G06F12/08

    CPC分类号: G06F12/1045 G06F12/0815

    摘要: Operating system virtual memory management for hardware transactional memory. A system includes an operating system deciding to unmap a first virtual page. As a result, the operating system removes the mapping of the first virtual page to the first physical page from the virtual memory page table. As a result, the operating system performs an action to discard transactional memory hardware state for at least the first physical page. Embodiments may further suspend hardware transactions in kernel mode. Embodiments may further perform soft page fault handling without aborting a hardware transaction, resuming the hardware transaction upon return to user mode, and even successfully committing the hardware transaction.

    摘要翻译: 硬件事务内存的操作系统虚拟内存管理。 系统包括决定取消映射第一虚拟页面的操作系统。 结果,操作系统从虚拟存储器页表移除第一虚拟页面到第一物理页面的映射。 结果,操作系统执行至少第一物理页丢弃事务存储器硬件状态的动作。 实施例可以进一步挂起内核模式下的硬件事务。 实施例可以进一步执行软页错误处理,而不中止硬件事务,在返回到用户模式时恢复硬件事务,甚至成功地提交硬件事务。

    Operating system virtual memory management for hardware transactional memory
    36.
    发明授权
    Operating system virtual memory management for hardware transactional memory 有权
    硬件事务内存的操作系统虚拟内存管理

    公开(公告)号:US08250331B2

    公开(公告)日:2012-08-21

    申请号:US12493161

    申请日:2009-06-26

    CPC分类号: G06F12/1045 G06F12/0815

    摘要: Operating system virtual memory management for hardware transactional memory. A method may be performed in a computing environment where an application running on a first hardware thread has been in a hardware transaction, with transactional memory hardware state in cache entries correlated by memory hardware when data is read from or written to data cache entries. The data cache entries are correlated to physical addresses in a first physical page mapped from a first virtual page in a virtual memory page table. The method includes an operating system deciding to unmap the first virtual page. As a result, the operating system removes the mapping of the first virtual page to the first physical page from the virtual memory page table. As a result, the operating system performs an action to discard transactional memory hardware state for at least the first physical page. Embodiments may further suspend hardware transactions in kernel mode. Embodiments may further perform soft page fault handling without aborting a hardware transaction, resuming the hardware transaction upon return to user mode, and even successfully committing the hardware transaction.

    摘要翻译: 硬件事务内存的操作系统虚拟内存管理。 可以在运行在第一硬件线程上的应用程序已经处于硬件事务中的计算环境中执行一种方法,当数据从数据高速缓存条目读取或写入数据高速缓存条目时,高速缓存条目中的事务性存储器硬件状态由存储器硬件相关联。 数据高速缓存条目与从虚拟存储器页表中的第一虚拟页面映射的第一物理页面中的物理地址相关联。 该方法包括决定取消映射第一虚拟页面的操作系统。 结果,操作系统从虚拟存储器页表移除第一虚拟页面到第一物理页面的映射。 结果,操作系统执行至少第一物理页丢弃事务存储器硬件状态的动作。 实施例可以进一步挂起内核模式下的硬件事务。 实施例可以进一步执行软页错误处理,而不中止硬件事务,在返回到用户模式时恢复硬件事务,甚至成功地提交硬件事务。

    DYNAMIC DLL CYCLE RESOLUTION
    37.
    发明申请
    DYNAMIC DLL CYCLE RESOLUTION 有权
    动态DLL循环分辨率

    公开(公告)号:US20080244550A1

    公开(公告)日:2008-10-02

    申请号:US11693092

    申请日:2007-03-29

    IPC分类号: G06F9/44

    CPC分类号: G06F9/44521

    摘要: Deterministically resolving cycles in a library tree is disclosed. Resolving cycles supports certain processes such as safe library initialization. Cycles in the library tree are identified; at least one soft link in each identified cycle is identified; and the at least one soft link in each identified cycle is broken. If a cycle has no soft links, notification is provided indicating that the cycle cannot be broken. Identifying at least one soft link in each identified cycle comprises, for each link in the cycle, determining the dependent and supporting libraries; and determining if one or more functions in the supporting library are required for initializing the dependent library.

    摘要翻译: 公开了确定性地解析库树中的循环。 解决循环支持某些进程,例如安全库初始化。 识别图书馆树中的周期; 识别每个识别周期中的至少一个软链路; 并且每个识别的周期中的至少一个软链路被破坏。 如果一个周期没有软链接,则提供指示该周期不能被破坏的通知。 在每个识别的周期中识别至少一个软链路包括:对于循环中的每个链路,确定依赖和支持的库; 以及确定支持库中的一个或多个功能是否需要初始化依赖库。