Patents by Inventor Michael G. Mall

Michael G. Mall 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).

  • Patent number: 8327368
    Abstract: A kernel of a SMT enabled processor system facilitates construction of an exclusive set of processors to simulate an ST mode for handling the tasks of the ST workload, wherein the ST workload runs more efficiently on single threaded processors. The kernel schedules the ST workload on the exclusive set of processors by selecting one hardware thread per processor within said exclusive set of processors to handle a separate one of the tasks of the ST workload, while requiring the remaining hardware threads per processor within the exclusive set to idle. As a result, the ST workload is executed on the SMT enabled processor system as if the exclusive set of processors run in ST mode, but without actually deactivating the remaining idle hardware threads per processor within the exclusive set of processors.
    Type: Grant
    Filed: November 25, 2011
    Date of Patent: December 4, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael G. Mall, James B. Moody, Suresh E. Warrier
  • Publication number: 20120084778
    Abstract: A kernel of a SMT enabled processor system facilitates construction of an exclusive set of processors to simulate an ST mode for handling the tasks of the ST workload, wherein the ST workload runs more efficiently on single threaded processors. The kernel schedules the ST workload on the exclusive set of processors by selecting one hardware thread per processor within said exclusive set of processors to handle a separate one of the tasks of the ST workload, while requiring the remaining hardware threads per processor within the exclusive set to idle. As a result, the ST workload is executed on the SMT enabled processor system as if the exclusive set of processors run in ST mode, but without actually deactivating the remaining idle hardware threads per processor within the exclusive set of processors.
    Type: Application
    Filed: November 25, 2011
    Publication date: April 5, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: MICHAEL G. MALL, JAMES B. MOODY, SURESH E. WARRIER
  • Patent number: 8136111
    Abstract: A SMT enabled processor system, having multiple processors each activated to interleave execution of multiple hardware threads on each processor, for ST workload, includes a kernel. The kernel of the SMT enabled processor system facilitates construction of an exclusive set of processors to simulate an ST mode for handling the tasks of the ST workload, wherein the ST workload runs more efficiently on single threaded processors. The kernel schedules the ST workload on the exclusive set of processors by selecting one hardware thread per processor within said exclusive set of processors to handle a separate one of the tasks of the ST workload, while requiring the remaining hardware threads per processor within the exclusive set to idle. The ST workload is executed on the SMT enabled processor system as if the exclusive set of processors run in ST mode, but without actually removing the remaining idle hardware threads per processor within the exclusive set of processors.
    Type: Grant
    Filed: June 27, 2006
    Date of Patent: March 13, 2012
    Assignee: International Business Machines Corporation
    Inventors: Michael G. Mall, James B. Moody, Suresh E. Warrier
  • Patent number: 7793149
    Abstract: A method, computer program product, and data processing system for providing optional failure recovery features in operating system kernel code are disclosed. In accordance with a preferred embodiment, a segment of mainline code may designate a recovery routine for that segment by calling a kernel service provided for that purpose. The kernel service allocates a “footprint” region on the recovery stack for storing state information arising from the execution of the recovery-enabled code. In the event of an exception, a recovery manager routine uses information from the recovery stack to recover from the exception. Recovery may be disabled altogether for performance purposes by way of boot-time patching to disable the use of the recovery stack and to allow state information to be written to a static “scratchpad” area, which unlike the recovery stack, is allowed to be overwritten, its contents being ignored.
    Type: Grant
    Filed: February 20, 2007
    Date of Patent: September 7, 2010
    Assignee: International Business Machines Corporation
    Inventors: Michael G. Mall, Bruce Mealey
  • Patent number: 7783920
    Abstract: A method, computer program product, and data processing system for providing optional exception recovery features in operating system kernel code are disclosed. In a preferred embodiment, a segment of mainline code may designate a recovery routine for that segment by calling a kernel service provided for that purpose. The kernel service pushes the address of the designated recovery routine, context, and re-entry point information corresponding to the segment to a recovery stack. An additional “footprint” region is also allocated on the recovery stack and used to store other state information needed for recovery. A mask value or barrier count value is also stored on the recovery stack to allow recovery to be disabled for non-recoverable routines.
    Type: Grant
    Filed: February 20, 2007
    Date of Patent: August 24, 2010
    Assignee: International Business Machines Corporation
    Inventors: Michael G. Mall, Bruce Mealey
  • Patent number: 7562260
    Abstract: A method, system and computer program product for performing recovery of a single-threaded queue are disclosed. The method includes scanning a set of elements of the single-threaded queue to detect a cycle containing a first element, and, in response to detecting the cycle, determining a size of the cycle in terms of a number of elements contained the cycle. A second element of the set of elements of the single-threaded queue is located, which second element is previous to the first element by a number of elements equivalent to the cycle. An element causing the cycle is located by performing a detailed element scan starting at the second element and the single-threaded queue is recovered by storing an end-of-queue value in a forward link of the element causing the cycle.
    Type: Grant
    Filed: April 4, 2006
    Date of Patent: July 14, 2009
    Assignee: International Business Machines Corporation
    Inventor: Michael G. Mall
  • Publication number: 20080201604
    Abstract: A method, computer program product, and data processing system for providing optional failure recovery features in operating system kernel code are disclosed. In accordance with a preferred embodiment, a segment of mainline code may designate a recovery routine for that segment by calling a kernel service provided for that purpose. The kernel service allocates a “footprint” region on the recovery stack for storing state information arising from the execution of the recovery-enabled code. In the event of an exception, a recovery manager routine uses information from the recovery stack to recover from the exception. Recovery may be disabled altogether for performance purposes by way of boot-time patching to disable the use of the recovery stack and to allow state information to be written to a static “scratchpad” area, which unlike the recovery stack, is allowed to be overwritten, its contents being ignored.
    Type: Application
    Filed: February 20, 2007
    Publication date: August 21, 2008
    Inventors: Michael G. Mall, Bruce Mealey
  • Publication number: 20080201606
    Abstract: A method, computer program product, and data processing system for providing optional exception recovery features in operating system kernel code are disclosed. In a preferred embodiment, a segment of mainline code may designate a recovery routine for that segment by calling a kernel service provided for that purpose. The kernel service pushes the address of the designated recovery routine, context, and re-entry point information corresponding to the segment to a recovery stack. An additional “footprint” region is also allocated on the recovery stack and used to store other state information needed for recovery. A mask value or barrier count value is also stored on the recovery stack to allow recovery to be disabled for non-recoverable routines.
    Type: Application
    Filed: February 20, 2007
    Publication date: August 21, 2008
    Inventors: Michael G. Mall, Bruce Mealey
  • Publication number: 20070300227
    Abstract: A method, system, and program are provided for managing execution of mixed workloads in a simultaneous multi-threaded (SMT) enabled system. In one embodiment, in a SMT enabled processor system, having multiple processors each activated to interleave execution of multiple hardware threads on each processor, for ST workload, the kernel of the SMT enabled processor system facilitates construction of an exclusive set of processors to simulate an ST mode for handling the tasks of the ST workload, wherein the ST workload runs more efficiently on single threaded processors. The kernel schedules the ST workload on the exclusive set of processors by selecting one hardware thread per processor within said exclusive set of processors to handle a separate one of the tasks of the ST workload, while requiring the remaining hardware threads per processor within the exclusive set to idle.
    Type: Application
    Filed: June 27, 2006
    Publication date: December 27, 2007
    Inventors: Michael G. Mall, James B. Moody, Suresh E. Warrier
  • Patent number: 5546582
    Abstract: An extension of the two phase commit protocol allows distributed participation among physically distant agents independent of the communications mechanism being used in a data processing system. An extra stage of processing is added to the two phase commit protocol called End Phase One Processing (EPOP) which enables a distribution of the coordinator function across systems using any communication mechanism. EPOP is an extra stage in which a participant can receive control. In this extra stage, a participant flows two phase commit protocol sequences to distributed systems. The communication mechanism is used in such a way that it becomes part of a distributed coordinator. The coordinator itself does not need knowledge of other systems. The extra stage of processing is enabled by an operating system service called Enable End Phase One Exit Processing (EEPOEP). EEPOEP causes an extension of two phase commit protocol to be used on the issuing system.
    Type: Grant
    Filed: February 2, 1995
    Date of Patent: August 13, 1996
    Assignee: International Business Machines Corporation
    Inventors: Roger L. Brockmeyer, Richard Dievendorff, Daniel E. House, Earle H. Jenner, Margaret K. LaBelle, Michael G. Mall, Stuart L. Silen
  • Patent number: 5493661
    Abstract: A method and system for providing a PROGRAM CALL to a dispatchable unit's base space is described herein. A program call to a dispatchable unit's (PC to DU) base space bit is added to each entry-table entry in order to determine whether a PROGRAM CALL to a base space is to be made. Should the bit indicate that a PROGRAM CALL to a dispatchable unit's base space is to be made, then in one embodiment, the base address space number-second-table entry origin (BASTEO) and base address space number (BASN) stored in the dispatchable unit control table (DUCT) are used in identifying the base space and accessing associated control information for the identified base space. In another embodiment, the BASN stored in the DUCT is used in ASN translation to identify the base space and access the associated control information for the base space.
    Type: Grant
    Filed: March 6, 1992
    Date of Patent: February 20, 1996
    Assignee: International Business Machines Corporation
    Inventors: Alan I. Alpert, Carl E. Clark, Jeffrey A. Frey, Michael G. Mall
  • Patent number: 5423013
    Abstract: Allows instructions and data to be located in any one or more of plural sections of a large-size real memory of a data processing system. Any memory section is located by concatenating a conventional small real/absolute address with an address extender used with conventional small-size memory. A Central Processor Extended Address Mode (CPEAM) register content indicates the location of extenders in an AR(s), ASTE(s), STE(s) or PTE(s) for use by a central processor or I/O operations. An Input-Output Extended Address Mode (IOEAM) register content indicates the location of the extenders in ORB(s), CCW(s) or IDAW(s) for use by I/O operations. A compatible mode sets the content to zero for either or both of the CPEAM and IOEAM if either or both is not to be used.
    Type: Grant
    Filed: September 4, 1991
    Date of Patent: June 6, 1995
    Assignee: International Business Machines Corporation
    Inventors: Richard I. Baum, Brent A. Carlson, Moon J. Kim, Michael G. Mall, Casper A. Scalzi, Bhaskar Sinha
  • Patent number: 5220669
    Abstract: A computer system has general purpose registers, control registers and access registers for containing information to allow address space capability. A linkage stack uses protected address space to store state information during program call and program return operations. The linkage stack contains information relating to state entries for the saved information and header and trailer entries to point to other linkage stack sections. A control register contains the pointer to the current linkage stack entry and is changed as the program call or return moves through the stack.
    Type: Grant
    Filed: July 19, 1991
    Date of Patent: June 15, 1993
    Assignee: International Business Machines Corporation
    Inventors: Richard I. Baum, Terry L. Borden, Carol E. Clark, Alan G. Ganek, James Lum, Michael G. Mall, Casper A. Scalzi, Richard J. Schmalz
  • Patent number: 5163096
    Abstract: Provides three access levels of storage key protection, comprising a supervisory level (key 0), an intermediate level of non-public and non-supervisory keys (keys 1-8, 10-15), and an unique public level (key 9). The program routines operating with a supervisory-level access key can access both the public level and the intermediate level of storage blocks. Although a program routine operating with an access key in the intermediary access level cannot access any supervisory level storage block, it can access any block assigned a public level storage key, as well as any storage block assigned the respective intermediate level key. One or more third-level public storage keys (PSKs) may be provided. A program access key using one of the PSK values can only access blocks having the same PSK value, and it cannot access blocks having any other key value.
    Type: Grant
    Filed: June 6, 1991
    Date of Patent: November 10, 1992
    Assignee: International Business Machines Corporation
    Inventors: Carl E. Clark, Michael G. Mall, Casper A. Scalzi, Bhaskar Sinha
  • Patent number: 5023773
    Abstract: A program authorization mechanism for authorizing access to an address space in the main memory of a computer system by a program being run under a multiple address space facility. An access-list entry is associated with each address space, each access-list entry being designated by an access-list-entry token contained in an access register. Each access-list entry includes a private indicator which indicates if the associated address space can be accessed by all programs from this access-list entry or if the associated address space can only be accessed by an authorized program. For program to be authorized, an extended authorization index in a control register must match an access-list extended authorization index in the access-list entry, or the extended authorization index value must be authorized in an authority table associated with the address space. An instruction for testing a given extended authorization index for a given access-list-entry is also disclosed.
    Type: Grant
    Filed: February 10, 1988
    Date of Patent: June 11, 1991
    Assignee: International Business Machines Corporation
    Inventors: Richard I. Baum, Terry L. Borden, Justin R. Butwell, Carl E. Clark, Alan G. Ganek, James Lum, Michael G. Mall, David R. Page, Kenneth E. Plambeck, Casper A. Scalzi, Richard J. Schmalz
  • Patent number: 4979098
    Abstract: A method and apparatus is provided to translate the contents of access registers into information for use in performing addressing functions for multiple virtual address spaces. The access registers represent the full addressing capability of the system but do not directly contain the addressing information. The system has a plurality of general purpose registers, a plurality of access registers associated with the general registers, an access list having access list entries which is addressed by the contents of the access register, memory storage for holding address space number second table entries (ASTE), where the contents of the access list entry locate the ASTE and where the ASTE contains the addressing information needed to translate a virtual address when combined with the contents of a general purpose register. Access register translation (ART) consists of the process of determining addressing information by using the access list entry and the ASTE.
    Type: Grant
    Filed: June 8, 1990
    Date of Patent: December 18, 1990
    Assignee: International Business Machines Corporation
    Inventors: Richard I. Baum, Terry L. Borden, Justin R. Butwell, Carl E. Clark, Alan G. Ganek, James Lum, Michael G. Mall, Kenneth E. Plambeck, Casper A. Scalzi, Richard J. Schmalz, Ronald M. Smith, Julian Thomas
  • Patent number: 4945480
    Abstract: The embodiment enables multiple virtual data domains to be accessible to a program executing on a processor. A data domain is a set of virtual address spaces for containing data that can be accessed by an executing program. Two types of data domains are defined by access lists, called PSAL and DUAL. Each list has entries specifying virtual address spaces accessible to an executing program. The program is located in a program address space. The program address space and each data domain are located through respective control registers. On a program call, the processor loads a control register with means to identify the PSAL data domain. The loaded control register provides the called program with immediate access to its own PSAL data domain. When the call is from a different program address space, the calling program space's PSAL data domain immediately becomes non-accessible due to overlaying in the single loading of the one control register.
    Type: Grant
    Filed: February 10, 1988
    Date of Patent: July 31, 1990
    Assignee: International Business Machines Corporation
    Inventors: Carl E. Clark, Alan G. Ganek, Michael G. Mall, David R. Page