Patents Examined by Charles Swift
  • Patent number: 8312465
    Abstract: A method and apparatus of operating a central processing unit (CPU) including a plurality of processors, is provided and includes collecting real-time statistics relating to the processors during dispatching activities, identifying give-help processors from the real-time statistics when the real-time statistics indicate that one or more of the nodes is overworked, and implementing help to be provided by the give-help processor to relieve the overworked node of a portion of the work to be distributed thereto.
    Type: Grant
    Filed: January 11, 2008
    Date of Patent: November 13, 2012
    Assignee: International Business Machines Corporation
    Inventors: Bernard Pierce, Daniel V. Rosa, Donald W. Schmidt
  • Patent number: 8312424
    Abstract: There are provided methods and computer program products for generating code for an architecture encoding an extended register specification. A method for generating code for a fixed-width instruction set includes identifying a non-contiguous register specifier. The method further includes generating a fixed-width instruction word that includes the non-contiguous register specifier.
    Type: Grant
    Filed: April 3, 2008
    Date of Patent: November 13, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael Karl Gschwind, Robert Kevin Montoye, Brett Olsson, John-David Wellman
  • Patent number: 8286173
    Abstract: A system provides a task scheduler to define a priority queue with at least one window and a queue-window key. Each window is an ordered collection of tasks in a task pool of the priority queue and is identified by the queue-window key. The task scheduler sets a task-window key equal to a user-window key when the user-window key is greater than the minimum queue-window key. The task scheduler can further set the task-window key equal to the minimum queue-window key when the user-window key is less than the minimum queue-window key. A maximum task limit per user for each window and a priority increment for the user-window key are further applied to ensure fair scheduling.
    Type: Grant
    Filed: March 23, 2007
    Date of Patent: October 9, 2012
    Assignee: Oracle America, Inc.
    Inventors: Seth T. Proctor, David A. Jurgens, David R. Chase
  • Patent number: 8286161
    Abstract: An information processing apparatus includes a control operating system executing a process for allocating a plurality of logical processors to a physical processor in a time division manner, and a guest operating system for which a logical partition as an application entity of the logical processor is set. The control operating system sets and updates, as address conversion tables for determining an allocation relationship between the logical processor and the physical processor, two address conversion tables of a first conversion table that sets an allocation relationship between a logical partition address space and a physical address space and a second conversion table that sets an allocation relationship between a virtual address space in the guest operating system and the physical address space.
    Type: Grant
    Filed: September 28, 2005
    Date of Patent: October 9, 2012
    Assignee: Sony Corporation
    Inventors: Atsushi Togawa, Kenichi Murata
  • Patent number: 8261270
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: March 5, 2007
    Date of Patent: September 4, 2012
    Assignee: Google Inc.
    Inventors: Matthew N. Papakipos, Brian K. Grant, Christopher G Demetriou
  • Patent number: 8255915
    Abstract: A computer system characterized by a container hierarchy uses a workload manager to allocate computing resources to workloads. The workload manager can allocate resources as a function of aggregate characteristics of a group of workloads, even where the group does not conform to the container hierarchy.
    Type: Grant
    Filed: October 26, 2007
    Date of Patent: August 28, 2012
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: William H. Blanding, Jerry James Harrow, Jr., Thomas Edwin Turicchi, Clifford McCarthy, Daniel Edward Herington
  • Patent number: 8255901
    Abstract: Systems, methods, and computer program products are provided for customizing software application programs, including self-service applications. In one implementation, a customer selects software components from a standard set of components provided by a developer. The selected software components are then used to form a customized software application. Thereafter, the customized software application may be used by an end user to perform one or more tasks.
    Type: Grant
    Filed: August 23, 2006
    Date of Patent: August 28, 2012
    Assignee: SAP AG
    Inventors: Ralf Halbedel, Wolfgang Kuhn
  • Patent number: 8250576
    Abstract: The present invention extends to methods, systems, and computer program products for a structured task hierarchy for a parallel runtime. The parallel execution runtime environment permits flexible spawning and attachment of tasks to one another to form a task hierarchy. Parent tasks can be prevented from completing until any attached child sub-tasks complete. Exceptions can be aggregated in an exception array such that any aggregated exceptions for a task are available when the task completes. A shield mode is provided to prevent tasks from attaching to another task as child tasks.
    Type: Grant
    Filed: September 30, 2009
    Date of Patent: August 21, 2012
    Assignee: Microsoft Corporation
    Inventors: Huseyin S. Yildiz, Stephen H. Toub, John J. Duffy
  • Patent number: 8239867
    Abstract: Techniques for implementing an atomic FIFO queue and system for processing queue elements are described herein. According to one embodiment, in a first thread of execution, new data is atomically merged with existing data of an object via an atomic instruction associated with hardware that executes the first thread. An attempt is made to acquire ownership of the object (exclusive access). If successful, the object is enqueued on an atomic FIFO queue as a continuation element for further processing. Otherwise, another thread of execution is safely assumed to have acquired ownership and taken responsibility to enqueue the object. A second thread of execution processes the atomic FIFO queue and assumes ownership of the continuation elements. The second thread invokes a function member of the continuation element with a data member of the continuation element, the data member including the newly merged data. Other methods and apparatuses are also described.
    Type: Grant
    Filed: June 3, 2009
    Date of Patent: August 7, 2012
    Assignee: Apple Inc.
    Inventors: David A. Zarzycki, Kevin James Van Vechten, Joshua Osborne
  • Patent number: 8239864
    Abstract: According an aspect of the invention, a mobile terminal includes a task executing unit configured to execute a plurality of task groups and a management unit configured to manage to execute in a first order the task groups. If the task executing unit executes a first task group in foreground and if the management unit receives a first request executing a second task group different from the first task group, the management unit manages the first and the second task groups as one chain and executes the second task group in foreground. If the task executing unit executes the first task group in foreground and if the management unit receives a second request executing a third task group different from the first and second task groups, the management unit manages the first and third task groups as other chain and executes the third task group in foreground.
    Type: Grant
    Filed: March 30, 2007
    Date of Patent: August 7, 2012
    Assignee: Fujitsu Toshiba Mobile Communications Limited
    Inventors: Akira Imai, Yasuhiko Abe, Shinichi Shishino
  • Patent number: 8230421
    Abstract: The design of nonblocking linked data structures using single-location synchronization primitives such as compare-and-swap (CAS) is a complex affair that often requires severe restrictions on the way pointers are used. One way to address this problem is to provide stronger synchronization operations, for example, ones that atomically modify one memory location while simultaneously verifying the contents of others. We provide a simple and highly efficient nonblocking implementation of such an operation: an atomic k-word-compare single-swap operation (KCSS). Our implementation is obstruction-free. As a result, it is highly efficient in the uncontended case and relies on contention management mechanisms in the contended cases. It allows linked data structure manipulation without the complexity and restrictions of other solutions.
    Type: Grant
    Filed: September 28, 2007
    Date of Patent: July 24, 2012
    Assignee: Oracle America, Inc.
    Inventors: Nir N. Shavit, Mark S. Moir, Victor M. Luchangco
  • Patent number: 8230414
    Abstract: A system, apparatus and a method are described for providing efficient software distribution and cache management on a plurality of client machines in a network. In one embodiment of the invention, a cache management software agent is installed on one or more client machines to monitor a status of software versions stored locally on the machines. The cache management software agent performs a check before uploading a matching version of a large software application from a network element in order to determine whether the upload is appropriate. In particular, the agent identifies whether a matching version of the application is already present on the client machine to see if the upload is necessary. If a matching version of the application is not resident on the machine, then the latest version of the large software application is uploaded to the client machine from the network element.
    Type: Grant
    Filed: June 16, 2006
    Date of Patent: July 24, 2012
    Assignee: Infinera Corporation
    Inventors: Steven Joseph Hand, Sriram Subramanian
  • Patent number: 8219989
    Abstract: Dedicated access is provided to a physical input/output (I/O) device which is non-configurable by an initiating logical partition. Access is established by: initiating, by the logical partition, creation of a partition adjunct; invoking a hypervisor of the data processing system to instantiate the partition adjunct with resources donated from the initiating logical partition, the donated resources including a donated virtual address space of the logical partition and the physical I/O device; creating, by the hypervisor, the partition adjunct and assigning the donated virtual address space and donated physical I/O device to the created partition adjunct; and interfacing, by the hypervisor, the logical partition and the created partition adjunct, the interfacing including providing the logical partition with a virtual I/O device which replaces the donated physical I/O device, and which is configurable by the logical partition.
    Type: Grant
    Filed: April 28, 2008
    Date of Patent: July 10, 2012
    Assignee: International Business Machines Corporation
    Inventors: William J. Armstrong, Orran Y. Krieger, Michal Ostrowski, Randal C. Swanberg
  • Patent number: 8219988
    Abstract: A partition adjunct is provided for a logical partition running above a hypervisor of a data processing system. The partition adjunct, which is a separate dispatchable partition from an instantiating logical partition, provides one or more services to the logical partition. A service request received from the logical partition is processed by the partition adjunct utilizing virtual address space donated to the partition adjunct from the logical partition. The partition adjunct and the logical partition share a common virtual address to real address page table, and context switching the current state machine from the logical partition to the partition adjunct occurs without invalidating or modifying state data of selected memory management and address translation hardware of the data processing system. In a hardware multithreaded system, the partition adjunct is dispatched on a single thread, while another thread continues to run in the logical partition initiating the service request.
    Type: Grant
    Filed: April 28, 2008
    Date of Patent: July 10, 2012
    Assignee: International Business Machines Corporation
    Inventors: William J. Armstrong, Orran Y. Krieger, Michal Ostrowski, Randal C. Swanberg
  • Patent number: 8196100
    Abstract: A content management system (CMS) for computer software provides automatic notification and correlation of changes in a design document with corresponding code, and provides automatic notification and correlation of changes in the code with one or more corresponding design documents. Traceability rules are defined that correlate which portions of the code correspond to which portions of the design document. A traceability update policy governs whether interested parties are notified of a change to either the design document or the corresponding code, and whether the change to one causes an automatic update to the other. The result is a content management system that helps keep the code and corresponding design documents consistent with each other so the system has accurate and consistent information at all times.
    Type: Grant
    Filed: April 6, 2007
    Date of Patent: June 5, 2012
    Assignee: International Business Machines Corporation
    Inventor: John Edward Petri
  • Patent number: 8171485
    Abstract: Managing virtual and real machines through a provisioning system. The provisioning system allows a user to create and manage machines through a “self-service” approach. The provisioning system interacts with one or more agents that manage the lifecycle of a machine. The system may provide templates that enable a user to readily create a virtual machine. The system may also include interfaces for administrators to manage virtual and real machine resources.
    Type: Grant
    Filed: September 21, 2007
    Date of Patent: May 1, 2012
    Assignee: Credit Suisse Securities (Europe) Limited
    Inventor: Leslie Muller
  • Patent number: 8166458
    Abstract: Embodiments of the present invention provide methods and systems for automated distributed testing of software. A testing service may utilize a distributed architecture that provides a standardized framework for writing tests, scheduling the tests, and gathering and reporting results of the tests. Multiple distributed labs are integrated into the testing service and their environments can be centrally managed by the testing service. The testing service permits the scheduling and performance of tests across multiple machines within a test lab, or tests that span across multiple test labs. Any of the machines in the test labs may be selected based on variety of criteria. The testing service may then automatically locate the appropriate machines that match or satisfy the criteria and schedule the tests when the machines are available. The testing service may also automatically create and set up a desired test environment according to the desired specifications for the test.
    Type: Grant
    Filed: November 7, 2005
    Date of Patent: April 24, 2012
    Assignee: Red Hat, Inc.
    Inventors: Richard Ding Li, William F. Peck, Adriaan van de Ven
  • Patent number: 8151352
    Abstract: In some embodiments, antivirus/malware behavior-based scanning (emulation) is accelerated by identifying known code sequences and executing pre-stored native-code routines (e.g. decompression, decryption, checksum routines) implementing the functionality of the known code sequences before returning to the emulation. During emulation, target machine code instructions are compared to a set of known signatures. If a known code sequence is identified, the emulator calls a native code routine and caches the current instruction address. If the emulator subsequently reaches a cached address, a native code routine may be called without scanning the data at the address for known signatures. Signature scanning may be performed selectively for instructions following code flow changes (e.g. after jump, call or interrupt instructions).
    Type: Grant
    Filed: July 14, 2006
    Date of Patent: April 3, 2012
    Assignee: Bitdefender IPR Managament Ltd.
    Inventor: Mihai Novitchi
  • Patent number: 8146066
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: March 5, 2007
    Date of Patent: March 27, 2012
    Assignee: Google Inc.
    Inventors: Christopher G. Demetriou, Matthew N. Papakipos
  • Patent number: 8136104
    Abstract: A runtime system implemented in accordance with the present invention provides an application platform for parallel-processing computer systems. Such a runtime system enables users to leverage the computational power of parallel-processing computer systems to accelerate/optimize numeric and array-intensive computations in their application programs. This enables greatly increased performance of high-performance computing (HPC) applications.
    Type: Grant
    Filed: March 5, 2007
    Date of Patent: March 13, 2012
    Assignee: Google Inc.
    Inventors: Matthew N. Papakipos, Brian K. Grant, Morgan S. McGuire, Christopher G. Demetriou