会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
热词
    • 21. 发明授权
    • Apparatus and method to incrementally update single static assignment
(SSA) form
    • 逐步更新单个静态分配(SSA)形式的装置和方法
    • US6064820A
    • 2000-05-16
    • US85299
    • 1998-05-27
    • Pratap Subrahmanyam
    • Pratap Subrahmanyam
    • G06F9/45
    • G06F8/433G06F8/443
    • A method and apparatus for incrementally updating SSA form after loop unrolling. The incremental SSA tool generates a non-ambiguous new name, in SSA form, for each original name defined in a loop and used outside of the loop after loop unrolling, by using the existing CFG structure for the software code that is created by the compiler. The incremental SSA tool renames the uses in the tails of the loop of a name defined within the loop into new clone names. The incremental SSA tool uses the new clone names created in the tails of the loop to rename other uses outside of the loop, of names that are defined within the loop, into new clone names. Also, the incremental SSA tool reconciles loop unrolled names that are used outside of the loop with the new clone names by creating new incarnation names.
    • 一种在循环展开后逐行更新SSA形式的方法和装置。 增量SSA工具以SSA形式为循环中定义的每个原始名称生成一个非歧义的新名称,并在循环展开之后使用循环外部,通过使用现有的CFG结构为编译器创建的软件代码 。 增量SSA工具将循环中定义的名称的尾部中的使用重命名为新的克隆名称。 增量SSA工具使用在循环尾部创建的新克隆名称将循环外的其他用途名称重命名为循环中定义的名称,将其重新命名为新的克隆名称。 此外,增量SSA工具通过创建新的化身名称,将循环外循环的循环名称与新的克隆名称进行对照。
    • 22. 发明授权
    • Method and system for enabling checkpointing fault tolerance across remote virtual machines
    • 远程虚拟机启用检查点容错功能的方法和系统
    • US08898518B2
    • 2014-11-25
    • US13450249
    • 2012-04-18
    • Ole AgesenRaviprasad MummidiPratap Subrahmanyam
    • Ole AgesenRaviprasad MummidiPratap Subrahmanyam
    • G06F11/00G06F11/20
    • G06F11/2097G06F11/2038G06F11/2046G06F2201/815
    • A checkpointing fault tolerance network architecture enables a backup computer system to be remotely located from a primary computer system. An intermediary computer system is situated between the primary computer system and the backup computer system to manage the transmission of checkpoint information to the backup VM in an efficient manner. The intermediary computer system is networked to the primary VM through a first connection and is networked to the backup VM through a second connection. The intermediary computer system identifies updated data corresponding to memory pages that have been least recently modified by the primary VM and transmits such updated data to the backup VM through the first connection. In such manner, the intermediary computer system holds back updated data corresponding to more recently modified memory pages, since such memory pages may be more likely to be updated again in the future.
    • 检查点容错网络架构使备份计算机系统能够远离主计算机系统。 中间计算机系统位于主计算机系统和备用计算机系统之间,以有效的方式管理检查点信息传输到备份虚拟机。 中间计算机系统通过第一连接与主虚拟机联网,并通过第二连接与备用虚拟机联网。 中间计算机系统识别对应于由主VM最近最近修改的存储器页面的更新数据,并通过第一连接将这种更新的数据发送到备份VM。 以这样的方式,中间计算机系统保持对应于最近修改的存储器页面的更新数据,因为这样的存储器页面将来可能再次被更新。
    • 25. 发明授权
    • Maintaining address translations during the software-based processing of instructions
    • 在基于软件的指令处理期间维护地址转换
    • US08024506B1
    • 2011-09-20
    • US11859710
    • 2007-09-21
    • Ole AgesenPratap Subrahmanyam
    • Ole AgesenPratap Subrahmanyam
    • G06F12/00G06F13/00G06F13/28G06F21/00G06F9/26G06F9/34G06F9/46
    • G06F12/1072G06F12/1036G06F2212/682
    • The invention is used in a virtual machine monitor for a multiprocessing system that includes a virtual memory system. During a software-based processing of a guest instruction, including translating or interpreting a guest instruction, mappings between virtual addresses and physical addresses are retained in memory until processing of the guest instruction is completed. The retained mappings may be cleared after each guest instruction has been processed, or after multiple guest instructions have been processed. Information may also be stored to indicate that an attempt to map a virtual address to a physical address was not successful. The invention may be extended beyond virtual machine monitors to other systems involving the software-based processing of instructions, and beyond multiprocessing systems to other systems involving concurrent access to virtual memory management data.
    • 本发明用于包括虚拟存储器系统的多处理系统的虚拟机监视器中。 在访客指令的基于软件的处理中,包括翻译或解释访客指令,虚拟地址和物理地址之间的映射被保留在存储器中,直到访客指令的处理完成。 保留的映射可以在每个客户指令被处理之后或在多个客户指令被处理之后被清除。 还可以存储信息以指示将虚拟地址映射到物理地址的尝试不成功。 本发明可以扩展到虚拟机监视器以外的其他系统,涉及指令的基于软件的处理,并且超出多处理系统到涉及对虚拟存储器管理数据的并发访问的其他系统。
    • 26. 发明授权
    • Maintaining coherency of derived data in a computer system
    • 维护计算机系统中派生数据的一致性
    • US07783838B1
    • 2010-08-24
    • US11752193
    • 2007-05-22
    • Ole AgesenPratap SubrahmanyamKeith M. Adams
    • Ole AgesenPratap SubrahmanyamKeith M. Adams
    • G06F12/00G06F21/00G06F13/00G06F13/28G06F9/26G06F9/34G06F9/455G06F9/46
    • G06F12/1036G06F9/45537G06F9/45558G06F12/0292G06F2009/45583G06F2212/682Y10S707/99952
    • A computer system has secondary data that is derived from primary data, such as entries in a TLB being derived from entries in a page table. When an actor changes the primary data, a producer indicates the change in a set data structure, such as a data array, in memory that is shared by the producer and a consumer. There may be multiple producers and multiple consumers and each producer/consumer pair has a separate channel. At coherency events, at which incoherencies between the primary data and the secondary data should be removed, consumers read the channels to determine the changes, and update the secondary data accordingly. The system may be a multiprocessor virtual computer system, the actor may be a guest operating system, and the producers and consumers may be subsystems within a virtual machine monitor, wherein each subsystem exports a separate virtual central processing unit.
    • 计算机系统具有从主数据导出的辅助数据,诸如从页表中的条目导出的TLB中的条目。 当演员改变主要数据时,制片人指示在生产者和消费者共享的存储器中的设置数据结构(例如数据阵列)中的改变。 可能有多个生产者和多个消费者,每个生产者/消费者对都有一个单独的渠道。 在一致性事件中,应删除主数据和辅助数据之间的货币,消费者读取通道以确定更改,并相应地更新次要数据。 该系统可以是多处理器虚拟计算机系统,该演员可以是客户操作系统,并且生产者和消费者可以是虚拟机监视器内的子系统,其中每个子系统导出单独的虚拟中央处理单元。
    • 29. 发明授权
    • System and method for remote file access by computer
    • 计算机远程文件访问的系统和方法
    • US06735601B1
    • 2004-05-11
    • US09751647
    • 2000-12-29
    • Pratap Subrahmanyam
    • Pratap Subrahmanyam
    • G06F1200
    • G06F8/63G06F3/0601G06F8/61G06F9/45558G06F17/30115G06F17/30197G06F17/30233G06F2003/0697G06F2009/45579G06F2209/549H04L67/1023H04L67/34H04L69/329
    • Applications, which consist of one or more files containing executable code and/or data, are stored preferably in unmodified form in a provider system. Separately processable portions of the files contain file structure information as well as actual, processable content. A skeleton of each file, consisting of the file structure information but not the processable content, is stored within a user system, and preferably within a virtual machine, along with access information identifying where the actual content is stored. Whenever the user system, in particular, its operating system, issues a request for access to any file portion whose structure only is stored, then the corresponding content is downloaded via a network, from the provider to the user. A broker system may be included as an intermediary between the provider and the user and may perform such functions as billing and selection of available file providers. Applications are thus streamed piecewise in real time to the user, although the streaming operation remains transparent to the user.
    • 包含可执行代码和/或数据的一个或多个文件的应用程序优选以未修改的形式存储在提供者系统中。 文件的可单独处理部分包含文件结构信息以及实际的可处理内容。 由文件结构信息而不是可处理内容组成的每个文件的骨架存储在用户系统内,优选地存储在虚拟机内,以及识别实际内容的存储位置的访问信息。 无论何时用户系统,特别是其操作系统,发出访问其结构仅被存储的任何文件部分的请求,则相应的内容经由网络从提供商下载到用户。 经纪人系统可以被包括在提供商和用户之间的中介,并且可以执行诸如可用文件提供者的计费和选择等功能。 因此,应用程序实时流式传输给用户,尽管流操作对用户来说仍然是透明的。
    • 30. 发明授权
    • Mechanism for finding spare registers in binary code
    • 在二进制代码中查找备用寄存器的机制
    • US06192513B1
    • 2001-02-20
    • US09184807
    • 1998-11-02
    • Pratap Subrahmanyam
    • Pratap Subrahmanyam
    • G06F945
    • G06F11/3612
    • The inventive system and method determines the availability of spare registers in binary code for use by an instrument or program by conducting a local search of either the immediate block of program code or of successor blocks, depending upon where instrumenting code is to be inserted. When inserting code near the begining the of a block of code, the system checks for available registers within the current block of code after the intended insertion point. A register is considered available if the original program overwrites its contents in a statement succeeding the insertion point without first having read data from this register between the insertion point and the current program statement. The system logs all registers found to be available within the immediate block of code using this approach. When the insertion point is at or near the end of a block of code, the system checks all immediate successor blocks for available registers in the same manmer as for the single block case. The system then determines which registers are available, or overwritten without prior access, in all of the successor blocks and deems only these registers to be available to the inserted instrumenting code. The system thus assures that the use of registers by instrumenting code at an insertion point near the end of a code block is harmless to data needed by the main program regardless of where main program execution branches to after the current code block.
    • 本发明的系统和方法根据将要插入代码的位置,通过对程序代码的立即块或后继块执行本地搜索来确定二进制代码中备用寄存器的可用性,供仪器或程序使用。 当在代码块开始附近插入代码时,系统将在预期插入点之后检查当前代码块中的可用寄存器。 如果原始程序在插入点之后的语句中覆盖其内容,而不首先在插入点和当前程序语句之间从该寄存器读取数据,则可以使用寄存器。 该系统使用这种方法记录在即时代码块中发现的可用的所有寄存器。 当插入点处于或接近代码块结束时,系统将检查所有立即的后继块,以获得与单个块情况相同的处理器中的可用寄存器。 然后,系统在所有后继块中确定哪些寄存器可用或覆盖,无需事先访问,并认为只有这些寄存器可用于插入的测试代码。 因此,该系统确保通过在代码块结束附近的插入点处的代码来使用寄存器对主程序所需的数据是无害的,而不管主程序执行在当前代码块之后分支。