Dynamic power optimization for computing devices
    1.
    发明授权
    Dynamic power optimization for computing devices 有权
    计算设备的动态功耗优化

    公开(公告)号:US08799693B2

    公开(公告)日:2014-08-05

    申请号:US13303871

    申请日:2011-11-23

    摘要: In the various aspects, virtualization techniques may be used to reduce the amount of power consumed by execution of applications by power-optimizing the code prior to execution. A dynamic binary translator operating at the machine layer may use a power consumption model to identify code segments that can benefit from optimization and to perform an instruction-sequence to instruction-sequence translation of object code to generate power-optimized object code. Execution hardware may be instrumented with additional circuitry to measure the power consumption characteristics of executing code. The power consumption models may be updated and object code may be regenerated based on the measured the power consumption characteristics of previously executed code. In an aspect, power optimization may be accomplished when the computing device is connected to a battery charger.

    摘要翻译: 在各个方面,虚拟化技术可以用于通过在执行之前对代码进行优化来减少执行应用所消耗的功率量。 在机器层上操作的动态二进制翻译器可以使用功耗模型来识别可以从优化中受益的代码段,并且执行指令序列到目标代码的指令序列转换以产生功率优化的目标代码。 执行硬件可以附加附加电路来测量执行代码的功耗特性。 可以基于测量的先前执行的代码的功耗特性来更新功耗模型并且可以重新生成目标代码。 在一个方面,当计算设备连接到电池充电器时,可以实现功率优化。

    Concurrent parsing and processing of HTML and JAVASCRIPT®
    2.
    发明授权
    Concurrent parsing and processing of HTML and JAVASCRIPT® 有权
    并行解析和处理HTML和JAVASCRIPT®

    公开(公告)号:US08413047B2

    公开(公告)日:2013-04-02

    申请号:US13106064

    申请日:2011-05-12

    IPC分类号: G06F17/27

    摘要: The aspects enable a processor to concurrently execute markup language code (e.g., HTML) having embedded scripting language code (e.g., JAVASCRIPT®) during a page load operation by a browser. A markup language parser parses markup language code until embedded scripting language code is encountered. The segment of embedded scripting language code is extracted for execution by a scripting language engine which proceeds concurrently with speculative parsing of the markup language code. Markup language code generated by execution of scripting language code is evaluated to determine if it is well formed, and a partial rollback of the markup language parse and re-parsing of portions of the markup language code is accomplished if not. Concurrent parsing of markup language code and execution of scripting language code, with partial roll back of the parsing process when necessary, continues until all markup language code has been parsed and all scripting language code has been executed.

    摘要翻译: 这些方面使处理器在浏览器的页面加载操作期间同时执行具有嵌入的脚本语言代码(例如,JAVASCRIPT?)的标记语言代码(例如,HTML)。 标记语言解析器解析标记语言代码,直到遇到嵌入式脚本语言代码。 提取嵌入式脚本语言代码段以由与标记语言代码的推测性解析同时进行的脚本语言引擎执行。 评估通过执行脚本语言代码生成的标记语言代码,以确定其是否形成良好,如果不是,则完成标记语言解析和部分标记语言代码的重新解析的部分回滚。 同时解析标记语言代码和执行脚本语言代码,必要时部分回滚解析过程,一直持续到所有标记语言代码已被解析并且所有脚本语言代码都已被执行。

    Accessing memory locations for paged memory objects in an object-addressed memory system
    3.
    发明授权
    Accessing memory locations for paged memory objects in an object-addressed memory system 有权
    访问对象寻址的存储系统中分页的内存对象的内存位置

    公开(公告)号:US08375195B2

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

    申请号:US12398724

    申请日:2009-03-05

    IPC分类号: G06F12/10

    CPC分类号: G06F12/1009 G06F12/1027

    摘要: One embodiment of the present invention provides a system that accesses memory locations in an object-addressed memory system. During a memory access in the object-addressed memory system, the system receives an object identifier and an address. The system then uses the object identifier to identify a paged memory object associated with the memory access. Next, the system uses the address and a page table associated with the paged memory object to identify a memory page associated with the memory access. After determining the memory page, the system uses the address to access a memory location in the memory page.

    摘要翻译: 本发明的一个实施例提供一种访问对象寻址存储器系统中的存储器位置的系统。 在对象寻址存储器系统中的存储器访问期间,系统接收对象标识符和地址。 然后,系统使用对象标识符来标识与存储器访问相关联的分页存储器对象。 接下来,系统使用地址和与分页存储器对象相关联的页表来识别与存储器访问相关联的存储器页面。 确定内存页后,系统会使用该地址访问内存页中的内存位置。

    Method and system for configuring software modules to execute in an execution environment
    4.
    发明授权
    Method and system for configuring software modules to execute in an execution environment 有权
    用于配置在执行环境中执行的软件模块的方法和系统

    公开(公告)号:US08302077B2

    公开(公告)日:2012-10-30

    申请号:US12403751

    申请日:2009-03-13

    IPC分类号: G06F9/44

    CPC分类号: G06F8/71

    摘要: A method for configuring software modules that includes accessing a properties repository that includes a plurality of properties of the execution environment of the computer system. The method further includes generating a configuration file for each software module. Generating a configuration file includes obtaining a generator module defined for the software module, and executing the generator module to instantiate the configuration file for the software module. The generator module is configured to identify a property required for the configuration file, obtain the value for the property from the properties repository, and store the value for the property in the configuration file in accordance with a customized format required by the software module. The method further includes storing the configuration file for each of the software modules.

    摘要翻译: 一种配置软件模块的方法,包括访问包括计算机系统的执行环境的多个属性的属性库。 该方法还包括为每个软件模块生成配置文件。 生成配置文件包括获得为软件模块定义的生成器模块,以及执行生成器模块来实例化软件模块的配置文件。 发电机模块被配置为识别配置文件所需的属性,从属性存储库获取属性的值,并根据软件模块所要求的定制格式将该属性的值存储在配置文件中。 该方法还包括存储每个软件模块的配置文件。

    Method and system for coordinating hypervisor scheduling
    5.
    发明授权
    Method and system for coordinating hypervisor scheduling 有权
    协调虚拟机管理程序调度的方法和系统

    公开(公告)号:US08132173B2

    公开(公告)日:2012-03-06

    申请号:US11932844

    申请日:2007-10-31

    IPC分类号: G06F9/46

    CPC分类号: G06F9/52 G06F9/522

    摘要: A method for executing an application on a plurality of nodes, that includes synchronizing a first clock of a first node of the plurality of nodes and a second clock of a second node of the plurality of nodes, configuring a first hypervisor on the first node to execute a first application domain and a first privileged domain, configuring a second hypervisor on the second node to execute a second application domain and a second privileged domain, and executing the application in the first application domain and the second application domain, wherein the first application domain and the second application domain execute semi-synchronously and the first privileged domain and the second privileged domain execute semi-synchronously.

    摘要翻译: 一种用于在多个节点上执行应用的方法,包括使所述多个节点中的第一节点的第一时钟与所述多个节点中的第二节点的第二时钟同步,将所述第一节点上的第一管理程序配置为 执行第一应用域和第一特权域,在所述第二节点上配置第二管理程序以执行第二应用域和第二特权域,以及在所述第一应用域和所述第二应用域中执行所述应用,其中所述第一应用 域和第二应用域半同步地执行,并且第一特权域和第二特权域被半同步地执行。

    Dynamic transactional instantiation of system configuration using a virtual file system layer
    6.
    发明授权
    Dynamic transactional instantiation of system configuration using a virtual file system layer 有权
    使用虚拟文件系统层进行系统配置的动态事务实例化

    公开(公告)号:US08117243B2

    公开(公告)日:2012-02-14

    申请号:US12035154

    申请日:2008-02-21

    IPC分类号: G06F12/00 H04N7/173

    CPC分类号: G06F9/44505

    摘要: A virtual configuration system, comprising a virtualization engine and a configuration engine, for the dynamic instantiation of configuration files is disclosed. A mechanism is disclosed that allows for transactional updates to a repository of configuration settings comprising multiple files. Configuration entries are stored in a first memory location and a copy of the entries is stored in a second memory location. A virtual configuration file that includes a virtual configuration for each entry is created and used to provide the operating system with path and location information regarding the configuration entries. Simultaneously and during run-time of the computer, the configuration entries stored in the second memory location can be modified. Once the modifications are complete, a second virtual configuration file is created referencing the configuration entries stored at the second memory location. The first virtual configuration file is thereafter atomically replaced by the second virtual configuration file.

    摘要翻译: 公开了一种用于配置文件的动态实例化的虚拟配置系统,包括虚拟化引擎和配置引擎。 公开了允许对包括多个文件的配置设置的存储库的事务性更新的机制。 配置条目存储在第一存储器位置中,并且条目的副本被存储在第二存储器位置中。 创建包含每个条目的虚拟配置的虚拟配置文件,并用于向操作系统提供有关配置条目的路径和位置信息。 同时并且在计算机的运行时间期间,可以修改存储在第二存储器位置中的配置条目。 一旦修改完成,将创建参考存储在第二存储器位置的配置条目的第二虚拟配置文件。 第一个虚拟配置文件此后由第二个虚拟配置文件原子替换。

    Method and system for discovery of a root file system
    7.
    发明授权
    Method and system for discovery of a root file system 有权
    发现根文件系统的方法和系统

    公开(公告)号:US08112620B2

    公开(公告)日:2012-02-07

    申请号:US12403738

    申请日:2009-03-13

    IPC分类号: G06F9/00 G06F15/177

    CPC分类号: G06F9/4406

    摘要: A method for discovery of a root file system that includes obtaining a tag corresponding to a boot image for an operating system, identifying, by a boot loader, a location of the boot image having a predefined value matching the tag, loading a kernel of the operating system retrieved from the boot image, and transferring execution to the kernel, wherein the boot loader provides the tag for the location to the kernel. The method further includes identifying, by the kernel, the location of the root file system based on the tag provided by the boot loader, and executing the operating system on a processor using the root file system identified by the kernel.

    摘要翻译: 一种用于发现根文件系统的方法,包括获得与操作系统的引导映像相对应的标签,由引导加载程序识别具有与标签匹配的预定值的引导映像的位置,加载 操作系统从引导映像检索,并将执行转移到内核,其中引导加载程序为内核提供位置的标签。 该方法还包括由内核根据引导加载程序提供的标签来识别根文件系统的位置,以及使用由内核识别的根文件系统在处理器上执行操作系统。

    USING SAFEPOINTS TO PROVIDE PRECISE EXCEPTION SEMANTICS FOR A VIRTUAL MACHINE
    9.
    发明申请
    USING SAFEPOINTS TO PROVIDE PRECISE EXCEPTION SEMANTICS FOR A VIRTUAL MACHINE 审中-公开
    使用SAFEPOINTS为虚拟机提供精确的例外语句

    公开(公告)号:US20100153776A1

    公开(公告)日:2010-06-17

    申请号:US12334290

    申请日:2008-12-12

    IPC分类号: G06F11/07 G06F9/455

    摘要: One embodiment of the present invention provides a system that provides precise exception semantics for a virtual machine. During operation, the system receives a program comprised of instructions that are specified in a machine instruction set architecture of the virtual machine, and translates these instructions into native instructions for the processor that the virtual machine is executing upon. While performing this translation, the system inserts one or more safepoints into the translated native instructions. The system then executes these native instructions on the processor. During execution, if the system detects that an exception was signaled by a native instruction, the system reverts the virtual machine to a previous safepoint to ensure that the virtual machine will precisely emulate the exception behavior of the virtual machine's instruction set architecture. The system uses a gated store buffer to ensure that any stores that occurred after the previous safepoint are discarded when reverting the virtual machine to the previous safepoint.

    摘要翻译: 本发明的一个实施例提供了一种为虚拟机提供精确异常语义的系统。 在操作期间,系统接收包括在虚拟机的机器指令集架构中指定的指令的程序,并且将这些指令转换为虚拟机正在执行的处理器的本地指令。 在执行此翻译时,系统会将一个或多个访问点插入翻译的本机指令。 然后系统在处理器上执行这些本机指令。 在执行期间,如果系统检测到本机指令发出异常,则系统将虚拟机还原到先前的保护点,以确保虚拟机将精确地模拟虚拟机指令集架构的异常行为。 系统使用门控存储缓冲区来确保在将虚拟机还原到以前的访问点时,先前访问点之后发生的任何存储都被丢弃。

    DYNAMIC TRANSACTIONAL INSTANTIATION OF SYSTEM CONFIGURATION USING A VIRTUAL FILE SYSTEM LAYER
    10.
    发明申请
    DYNAMIC TRANSACTIONAL INSTANTIATION OF SYSTEM CONFIGURATION USING A VIRTUAL FILE SYSTEM LAYER 有权
    使用虚拟文件系统层进行系统配置的动态交互实现

    公开(公告)号:US20090216990A1

    公开(公告)日:2009-08-27

    申请号:US12035154

    申请日:2008-02-21

    IPC分类号: G06F12/00

    CPC分类号: G06F9/44505

    摘要: A virtual configuration system, comprising a virtualization engine and a configuration engine, for the dynamic instantiation of configuration files is disclosed. A mechanism is disclosed that allows for transactional updates to a repository of configuration settings comprising multiple files. Configuration entries are stored in a first memory location and a copy of the entries is stored in a second memory location. A virtual configuration file that includes a virtual configuration for each entry is created and used to provide the operating system with path and location information regarding the configuration entries. Simultaneously and during run-time of the computer, the configuration entries stored in the second memory location can be modified. Once the modifications are complete, a second virtual configuration file is created referencing the configuration entries stored at the second memory location. The first virtual configuration file is thereafter atomically replaced by the second virtual configuration file.

    摘要翻译: 公开了一种用于配置文件的动态实例化的虚拟配置系统,包括虚拟化引擎和配置引擎。 公开了允许对包括多个文件的配置设置的存储库的事务性更新的机制。 配置条目存储在第一存储器位置中,并且条目的副本被存储在第二存储器位置中。 创建包含每个条目的虚拟配置的虚拟配置文件,并用于向操作系统提供有关配置条目的路径和位置信息。 同时并且在计算机的运行时间期间,可以修改存储在第二存储器位置中的配置条目。 一旦修改完成,将创建参考存储在第二存储器位置的配置条目的第二虚拟配置文件。 第一个虚拟配置文件此后由第二个虚拟配置文件原子替换。