Patents by Inventor Adam James McNeeney

Adam James McNeeney 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: 10853071
    Abstract: A method and apparatus for simulating target program code on a host data processing apparatus, the simulation mapping load-exclusive instructions in the target program code to load instructions, and mapping store-exclusive instructions in the target program code to compare-and-swap instructions.
    Type: Grant
    Filed: November 29, 2018
    Date of Patent: December 1, 2020
    Assignee: Arm Limited
    Inventors: Adam James McNeeney, Gareth James Evans
  • Patent number: 10423537
    Abstract: A method is provided for controlling processing of target program code on a host data processing apparatus to simulate processing of the target program code on a target data processing apparatus. In response to a target memory access instruction of the target program code specifying a target address within a simulated address space having a larger size than a host address space supported by a memory management unit of the host data processing apparatus, an address space resizing table is looked up to map the target address to a transformed address within said host address space, and information is generated for triggering a memory access based on translation of the transformed address by the memory management unit of the host data processing apparatus.
    Type: Grant
    Filed: January 31, 2018
    Date of Patent: September 24, 2019
    Assignee: ARM Limited
    Inventors: Adam James McNeeney, Matthew Lucien Evans
  • Publication number: 20190236019
    Abstract: A method is provided for controlling processing of target program code on a host data processing apparatus to simulate processing of the target program code on a target data processing apparatus. In response to a target memory access instruction of the target program code specifying a target address within a simulated address space having a larger size than a host address space supported by a memory management unit of the host data processing apparatus, an address space resizing table is looked up to map the target address to a transformed address within said host address space, and information is generated for triggering a memory access based on translation of the transformed address by the memory management unit of the host data processing apparatus.
    Type: Application
    Filed: January 31, 2018
    Publication date: August 1, 2019
    Inventors: Adam James McNeeney, Matthew Lucien Evans
  • Publication number: 20190220279
    Abstract: A method and apparatus for simulating target program code on a host data processing apparatus, the simulation mapping load-exclusive instructions in the target program code to load instructions, and mapping store-exclusive instructions in the target program code to compare-and-swap instructions.
    Type: Application
    Filed: November 29, 2018
    Publication date: July 18, 2019
    Inventors: Adam James MCNEENEY, Gareth James EVANS
  • Patent number: 9996396
    Abstract: Provided are a computer program product, system, and method for transferring a virtual machine from a first server to a second server. A first enhanced system translator executing on the first server includes a first virtual machine interface to interface with a first instance of the virtual machine on the first server and a first convert state component. A second enhanced system translator executing on the second server includes a second virtual machine interface to interface with a second instance of the virtual machine and a second convert state component. The first convert state component converts a state of the first instance of the virtual machine to a first instruction set architecture and the second convert state component converts the first instructions set architecture to a second instruction set architecture for use by the second instance of the virtual machine to run on the second server.
    Type: Grant
    Filed: May 19, 2016
    Date of Patent: June 12, 2018
    Assignee: International Business Machines Corporation
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash
  • Patent number: 9690662
    Abstract: A technique for operating a group of virtual machines (VMs) includes utilizing a checkpoint procedure to maintain secondary VMs to assume tasks of primary VMs within a cluster in the event of failover. On failover of a first one of the primary VMs, a first one of the secondary VMs assumes the tasks from the checkpoint immediately preceding a failover event. Each of the primary VMs is connected to receive data from remaining ones of the primary VMs via an internal bus and process the data on receipt. Checkpoints for the primary VMs are synchronized. For each of the primary VMs, release to the external bus of data generated on the basis of received internal bus data is prevented until a subsequent checkpoint has occurred. On failover of one of the primary VMs, all of the primary VMs are directed to initiate failover to an associated one of the secondary VMs.
    Type: Grant
    Filed: December 19, 2011
    Date of Patent: June 27, 2017
    Assignee: International Business Machines Corporation
    Inventor: Adam James McNeeney
  • Publication number: 20160266937
    Abstract: A system method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request; responsive to receiving the transfer request, means for pausing the virtual machine; and means for collecting a state of the virtual machine. The system may include means for stopping a first interface component operable on the first physical machine; means for starting a second interface component operable on the second physical machine; and means for transferring the state to the second interface component. The system may further comprise means for starting the virtual machine on the second physical machine in response to the state transfer.
    Type: Application
    Filed: May 19, 2016
    Publication date: September 15, 2016
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash
  • Patent number: 9378162
    Abstract: An interrupt controller for controlling the routing and handling of interrupts received at a data processing apparatus including at least one physical processing unit configured to run at least one of a plurality of virtual processors and a memory. The interrupt controller includes redistribution circuitry with at least one data store corresponding to the unit, the data store storing a pointer to a virtual pending table storing currently pending virtual interrupts for a virtual processor currently running on the corresponding unit and a pointer to a pending table configured to store currently pending physical interrupts for the corresponding unit and an input configured to receive a virtual interrupt for interrupting a virtual processor. Control circuitry is configured to add the virtual interrupt to the virtual pending table and to store the virtual interrupt in the virtual pending table for the virtual processor that is stored in the memory.
    Type: Grant
    Filed: May 21, 2013
    Date of Patent: June 28, 2016
    Assignee: ARM Limited
    Inventors: Anthony Jebson, Andrew John Turner, Matthew Lucien Evans, Gareth James Evans, Adam James McNeeney
  • Patent number: 9372727
    Abstract: A system, method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request. In response to receiving the transfer request, the virtual machine is paused and a state of the virtual machine is collected. A first interface component operable on the first physical machine stopped and a second interface component operable on the second physical machine is started. The state is transferred to the second interface component. The virtual machine is started on the second physical machine in response to the state transfer.
    Type: Grant
    Filed: March 4, 2015
    Date of Patent: June 21, 2016
    Assignee: International Business Machines Corporation
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash
  • Publication number: 20150178128
    Abstract: A system, method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request; responsive to receiving the transfer request, means for pausing the virtual machine; and means for collecting a state of the virtual machine. The system may include means for stopping a first interface component operable on the first physical machine; means for starting a second interface component operable on the second physical machine; and means for transferring the state to the second interface component. The system may further comprise means for starting the virtual machine on the second physical machine in response to the state transfer.
    Type: Application
    Filed: March 4, 2015
    Publication date: June 25, 2015
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash
  • Patent number: 8984507
    Abstract: A system, method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request; responsive to receiving the transfer request, pausing the virtual machine and collecting a state of the virtual machine. A first interface component operable on the first physical machine is stopped and a second interface component operable on the second physical machine is started. The state is transferred to the second interface component. The the virtual machine on the second physical machine is started in response to the state transfer.
    Type: Grant
    Filed: March 31, 2011
    Date of Patent: March 17, 2015
    Assignee: International Business Machines Corporation
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash
  • Publication number: 20140351471
    Abstract: An interrupt controller for controlling the routing and handling of interrupts received at a data processing apparatus including at least one physical processing unit configured to run at least one of a plurality of virtual processors and a memory. The interrupt controller includes redistribution circuitry with at least one data store corresponding to the unit, the data store storing a pointer to a virtual pending table storing currently pending virtual interrupts for a virtual processor currently running on the corresponding unit and a pointer to a pending table configured to store currently pending physical interrupts for the corresponding unit and an input configured to receive a virtual interrupt for interrupting a virtual processor. Control circuitry is configured to add the virtual interrupt to the virtual pending table and to store the virtual interrupt in the virtual pending table for the virtual processor that is stored in the memory.
    Type: Application
    Filed: May 21, 2013
    Publication date: November 27, 2014
    Inventors: Anthony JEBSON, Andrew John TURNER, Matthew Lucien EVANS, Gareth James EVANS, Adam James MCNEENEY
  • Publication number: 20130275808
    Abstract: A technique for operating a group of virtual machines (VMs) includes utilizing a checkpoint procedure to maintain secondary VMs to assume tasks of primary VMs within a cluster in the event of failover. On failover of a first one of the primary VMs, a first one of the secondary VMs assumes the tasks from the checkpoint immediately preceding a failover event. Each of the primary VMs is connected to receive data from remaining ones of the primary VMs via an internal bus and process the data on receipt. Checkpoints for the primary VMs are synchronized. For each of the primary VMs, release to the external bus of data generated on the basis of received internal bus data is prevented until a subsequent checkpoint has occurred. On failover of one of the primary VMs, all of the primary VMs are directed to initiate failover to an associated one of the secondary VMs.
    Type: Application
    Filed: December 19, 2011
    Publication date: October 17, 2013
    Applicant: International Business Machines Corporation
    Inventors: Adam James McNeeney, James Mulcajy
  • Publication number: 20130074065
    Abstract: A method of achieving data consistency in a shared storage accessible by a first and second machine. The method includes, in response to receiving state information of the first machine, configuring the second machine to a mirrored operating state corresponding to an operating state of the first machine, receiving a notification that the first machine will overwrite existing data stored in the shared storage, and, in response to the notification, reading the existing data, storing a copy of existing data in a local storage of the second machine, and sending an acknowledgment to the first machine that the copy has been stored in the local storage, to enable the first machine to overwrite the existing data with newly written data. The method also includes, in response to receiving a failure notification, retrieving the copy of the existing data, overwriting the newly written data with the copy of the existing data.
    Type: Application
    Filed: September 21, 2011
    Publication date: March 21, 2013
    Applicant: IBM CORPORATION
    Inventors: Adam James McNeeney, David James Oliver Rigby
  • Publication number: 20110265084
    Abstract: A system, method and computer program for transferring a running virtual machine from a first to a second physical machine, where each of the physical machines has a different instruction set architecture. The system may comprise a receiver for receiving a transfer request; responsive to receiving the transfer request, means for pausing the virtual machine; and means for collecting a state of the virtual machine. The system may include means for stopping a first interface component operable on the first physical machine; means for starting a second interface component operable on the second physical machine; and means for transferring the state to the second interface component. The system may further comprise means for starting the virtual machine on the second physical machine in response to the state transfer.
    Type: Application
    Filed: March 31, 2011
    Publication date: October 27, 2011
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Paul Knowles, Adam James McNeeney, Henry Paul Nash