Patents by Inventor Randal C. Swanberg

Randal C. Swanberg has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20090199184
    Abstract: A wake-and-go mechanism is provided for a data processing system. When a thread is waiting for an event, rather than performing a series of get-and-compare sequences, the thread updates a wake-and-go array with a target address associated with the event. Software may save the state of the thread. The thread is then put to sleep. When the wake-and-go array snoops a kill at a given target address, logic associated with wake-and-go array may generate an exception, which may result in a switch to kernel mode, wherein the operating system performs some action before returning control to the originating process. In this case, the trap results in other software, such as the operating system or background sleeper thread, for example, to reload thread from thread state storage and to continue processing of the active threads on the processor.
    Type: Application
    Filed: February 1, 2008
    Publication date: August 6, 2009
    Inventors: Ravi K. Arimilli, Satya P. Sharma, Randal C. Swanberg
  • Publication number: 20090037907
    Abstract: A method in a data processing system is provided for processing a service request of a client partition. The method includes: obtaining by a service partition of the data processing system the service request from the client partition, wherein both the client and service partitions execute above a hypervisor of the data processing system; and processing the service request by the service partition utilizing a processor quantum assigned to the client partition and donated by the client partition to the service partition. The client partition controls scheduling of the service partition by queuing the service request at the client partition until the client partition decides to proceed with execution of the service request by the service partition. In one implementation, the service partition is a partition adjunct of the data processing system, which utilizes donated virtual address space of the client partition.
    Type: Application
    Filed: April 28, 2008
    Publication date: February 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William J. ARMSTRONG, Orran Y. KRIEGER, Michal OSTROWSKI, Randal C. SWANBERG
  • Publication number: 20090037906
    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: Application
    Filed: April 28, 2008
    Publication date: February 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William J. ARMSTRONG, Orran Y. KRIEGER, Michal OSTROWSKI, Randal C. SWANBERG
  • Publication number: 20090037941
    Abstract: Multiple logical partitions are provided access to a self-virtualizing input/output device of a data processing system via multiple dedicated partition adjunct instances.
    Type: Application
    Filed: April 28, 2008
    Publication date: February 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William J. ARMSTRONG, Charles S. GRAHAM, Sandy K. KAO, Kyle A. LUCKE, Naresh NAYAR, Michal OSTROWSKI, Renato J. RECIO, Randal C. SWANBERG
  • Publication number: 20090037682
    Abstract: Access control to shared virtual address space within a single logical partition is provided. The access control includes: associating, by a hypervisor of the data processing system, a memory protection key with a portion of a single logical partition's virtual address space being shared by multiple entities, the key preventing access by one of the multiple entities to that portion of the virtual address space, and allowing access by another of the entities to that portion of the virtual address space; and locking by the hypervisor the memory protection key from modification by the one entity, wherein the locking prevents the one entity from modifying the key and thereby gaining access to the portion of the single logical partition's virtual address space with the associated memory protection key. In one embodiment, the one entity is the single logical partition itself, and the another entity is a partition adjunct.
    Type: Application
    Filed: April 28, 2008
    Publication date: February 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William J. ARMSTRONG, Orran Y. KRIEGER, Cathy MAY, Michal OSTROWSKI, Randal C. SWANBERG
  • Publication number: 20090037908
    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: Application
    Filed: April 28, 2008
    Publication date: February 5, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: William J. ARMSTRONG, Orran Y. KRIEGER, Michal OSTROWSKI, Randal C. SWANBERG
  • Publication number: 20080086395
    Abstract: The present invention thus provides for a method, system, and computer-usable medium that afford an equitably charging of a customer for computer usage time. In a preferred embodiment, the method includes the steps of: tracking an amount of computer resources in a Simultaneous Multithreading (SMT) computer that are available to a customer for a specified period of time; determining if the computer resources in the SMT computer are operating at a nominal rate; and in response to determining that the computer resources are operating at a non-nominal rate, adjusting a billing charge to the customer, wherein the billing charge reflects that the customer has available computer resources, in the SMT computer, that are not operating at the nominal rate during the specified period of time.
    Type: Application
    Filed: October 6, 2006
    Publication date: April 10, 2008
    Inventors: LARRY B. BRENNER, Michael S. Floyd, Christopher Francois, Naresh Nayar, Freeman L. Rawson, Randal C. Swanberg