Patents by Inventor Stefan Usenbinz
Stefan Usenbinz 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: 10877992Abstract: Updating a database is provided. The updating is noticeable by all read and/or write processes. In response to a write request to the database, a temporary copy of the database is generated. The write operations are performed to the temporary copy of the database. The current database generation of the database is replaced with the temporary copy for creating a next database generation.Type: GrantFiled: November 30, 2017Date of Patent: December 29, 2020Assignee: International Business Machines CorporationInventors: Jens Mehler, Florian Merkert, Carsten Otte, Stefan Usenbinz
-
Patent number: 10698854Abstract: A system architecture is provided and includes first and second processing units respectively communicative with an on-chip coherency unit and an accelerator communicative with the on-chip coherency unit. The accelerator is configured to execute an operation responsive to a call issued by one of the first and second processing units. The first processing unit is configured to set an asynchronous operation flag (AOF) to indicate that the second processing unit is to conduct an operation for the first processing unit. The second processing unit is configured to respond to the AOF by building scatter gather lists and subsequently issuing the call and feeding the scatter gather lists to the accelerator to facilitate execution of the operation by the accelerator.Type: GrantFiled: February 27, 2019Date of Patent: June 30, 2020Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Simon Weishaupt, Matthias Klein, Stefan Usenbinz, Anthony Thomas Sofia
-
Publication number: 20190163800Abstract: Updating a database is provided. The updating is noticeable by all read and/or write processes. In response to a write request to the database, a temporary copy of the database is generated. The write operations are performed to the temporary copy of the database. The current database generation of the database is replaced with the temporary copy for creating a next database generation.Type: ApplicationFiled: November 30, 2017Publication date: May 30, 2019Inventors: Jens Mehler, Florian Merkert, Carsten Otte, Stefan Usenbinz
-
Patent number: 10282195Abstract: Techniques are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original computer program is loaded and executed on a computer system. An associated method may include allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include reserving spare areas between the module TLS blocks for adding new module thread variables and arranging at an end of the module TLS blocks a thread data template section for resetting threads or creating new threads. The method may result in addition of modules to the original computer program and/or application of a concurrent patch through replacement of one or more of the plurality of original computer program modules.Type: GrantFiled: November 30, 2017Date of Patent: May 7, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Angel Nunez Mencias, Albert Schirmer, Christine Axnix, Stefan Usenbinz
-
Patent number: 10223127Abstract: Securely removing system capabilities, being available to at least one logical partition, from that partition, the partition being hosted by a computer system running an operating system. The system capabilities are available to a boot loader of the computer system, wherein the boot loader is started in the logical partition. The logical partition remains activated while removing the system capabilities. A removal request is initiated by the boot loader; and a deconfigure command is performed by the boot loader.Type: GrantFiled: September 14, 2016Date of Patent: March 5, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Gerd Bayer, Robert Kieninger, Marco Kraemer, Jakob C. Lang, Angel Nunez Mencias, Stefan Roscher, Stefan Usenbinz
-
Patent number: 9998459Abstract: Technical solutions are described for securely deploying a shrouded virtual server. An example method includes sending, by a host manager, authentication information of a hosting system to a client device in response to a request from the client device. The \method also includes receiving a request to deploy a virtual server using a shrouded mode. The method also includes deploying a preconfigured hypervisor on the hosting system, where the preconfigured hypervisor is deployed in an immutable mode that disables changes to security settings of the preconfigured hypervisor. The method also includes deploying, by the preconfigured hypervisor, a preconfigured boot image as an instance of the virtual server on the preconfigured hypervisor. The method also includes sending, by the host manager, an identifier of the virtual server for receipt by the client device.Type: GrantFiled: November 17, 2017Date of Patent: June 12, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Khary J. Alexander, Utz Bacher, Reinhard T. Buendgen, Patrick J. Callaghan, John C. Dayka, Thomas B. Mathias, K. Paul Muller, James A. O'Connor, William J. Rooney, Kurt N. Schroeder, Peter G. Spera, Tiberiu Suto, Sean Swehla, Stefan Usenbinz, Craig R. Walters
-
Publication number: 20180088934Abstract: Techniques are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original computer program is loaded and executed on a computer system. An associated method may include allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include reserving spare areas between the module TLS blocks for adding new module thread variables and arranging at an end of the module TLS blocks a thread data template section for resetting threads or creating new threads. The method may result in addition of modules to the original computer program and/or application of a concurrent patch through replacement of one or more of the plurality of original computer program modules.Type: ApplicationFiled: November 30, 2017Publication date: March 29, 2018Inventors: Angel Nunez MENCIAS, Albert SCHIRMER, Christine AXNIX, Stefan USENBINZ
-
Publication number: 20180063136Abstract: Technical solutions are described for securely deploying a shrouded virtual server. An example method includes sending, by a host manager, authentication information of a hosting system to a client device in response to a request from the client device. The \method also includes receiving a request to deploy a virtual server using a shrouded mode. The method also includes deploying a preconfigured hypervisor on the hosting system, where the preconfigured hypervisor is deployed in an immutable mode that disables changes to security settings of the preconfigured hypervisor. The method also includes deploying, by the preconfigured hypervisor, a preconfigured boot image as an instance of the virtual server on the preconfigured hypervisor. The method also includes sending, by the host manager, an identifier of the virtual server for receipt by the client device.Type: ApplicationFiled: November 17, 2017Publication date: March 1, 2018Inventors: Khary J. Alexander, Utz Bacher, Reinhard T. Buendgen, Patrick J. Callaghan, John C. Dayka, Thomas B. Mathias, K. Paul Muller, James A. O'Connor, William J. Rooney, Kurt N. Schroeder, Peter G. Spera, Tiberiu Suto, Sean Swehla, Stefan Usenbinz, Craig R. Walters
-
Patent number: 9904539Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may include allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: GrantFiled: May 31, 2016Date of Patent: February 27, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Angel Nunez Mencias, Albert Schirmer, Christine Axnix, Stefan Usenbinz
-
Patent number: 9882901Abstract: Technical solutions are described for securely deploying a shrouded virtual server. An example method includes sending, by a host manager, authentication information of a hosting system to a client device in response to a request from the client device. The \method also includes receiving a request to deploy a virtual server using a shrouded mode. The method also includes deploying a preconfigured hypervisor on the hosting system, where the preconfigured hypervisor is deployed in an immutable mode that disables changes to security settings of the preconfigured hypervisor. The method also includes deploying, by the preconfigured hypervisor, a preconfigured boot image as an instance of the virtual server on the preconfigured hypervisor. The method also includes sending, by the host manager, an identifier of the virtual server for receipt by the client device.Type: GrantFiled: December 14, 2015Date of Patent: January 30, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Khary J. Alexander, Utz Bacher, Reinhard T. Buendgen, Patrick J. Callaghan, John C. Dayka, Thomas B. Mathias, K. Paul Muller, James A. O'Connor, William J. Rooney, Kurt N. Schroeder, Peter G. Spera, Tiberiu Suto, Sean Swehla, Stefan Usenbinz, Craig R. Walters
-
Publication number: 20170249157Abstract: Securely removing system capabilities, being available to at least one logical partition, from that partition, the partition being hosted by a computer system running an operating system. The system capabilities are available to a boot loader of the computer system, wherein the boot loader is started in the logical partition. The logical partition remains activated while removing the system capabilities. A removal request is initiated by the boot loader; and a deconfigure command is performed by the boot loader.Type: ApplicationFiled: September 14, 2016Publication date: August 31, 2017Inventors: Gerd Bayer, Robert Kieninger, Marco Kraemer, Jakob C. Lang, Angel Nunez Mencias, Stefan Roscher, Stefan Usenbinz
-
Publication number: 20170171197Abstract: Technical solutions are described for securely deploying a shrouded virtual server. An example method includes sending, by a host manager, authentication information of a hosting system to a client device in response to a request from the client device. The \method also includes receiving a request to deploy a virtual server using a shrouded mode. The method also includes deploying a preconfigured hypervisor on the hosting system, where the preconfigured hypervisor is deployed in an immutable mode that disables changes to security settings of the preconfigured hypervisor. The method also includes deploying, by the preconfigured hypervisor, a preconfigured boot image as an instance of the virtual server on the preconfigured hypervisor. The method also includes sending, by the host manager, an identifier of the virtual server for receipt by the client device.Type: ApplicationFiled: December 14, 2015Publication date: June 15, 2017Inventors: Khary J. Alexander, Utz Bacher, Reinhard T. Buendgen, Patrick J. Callaghan, John C. Dayka, Thomas B. Mathias, K. Paul Muller, James A. O'Connor, William J. Rooney, Kurt N. Schroeder, Peter G. Spera, Tiberiu Suto, Sean Swehla, Stefan Usenbinz, Craig R. Walters
-
Publication number: 20160274899Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may include allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: ApplicationFiled: May 31, 2016Publication date: September 22, 2016Inventors: ANGEL NUNEZ MENCIAS, ALBERT SCHIRMER, CHRISTINE AXNIX, STEFAN USENBINZ
-
Patent number: 9436457Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may include allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: GrantFiled: August 11, 2014Date of Patent: September 6, 2016Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Angel Nunez Mencias, Albert Schirmer, Christine Axnix, Stefan Usenbinz
-
Publication number: 20140351804Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may include allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may include providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: ApplicationFiled: August 11, 2014Publication date: November 27, 2014Inventors: ANGEL NUNEZ MENCIAS, ALBERT SCHIRMER, CHRISTINE AXNIX, STEFAN USENBINZ
-
Patent number: 8839225Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may comprise allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may comprise providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: GrantFiled: January 21, 2009Date of Patent: September 16, 2014Assignee: International Business Machines CorporationInventors: Angel Nunez Mencias, Albert Schirmer, Christine Axnix, Stefan Usenbinz
-
Patent number: 8799592Abstract: A computer system with a memory containing a first guest operating system, including a first portion of the memory and a second guest operating system, including a second portion of the memory. The memory further contains an address exchange module for exchanging memory address handles, a data mover for moving data between the first and second portions of the memory, and an emulated input output memory management unit for controlling the data mover. Instructions in the memory cause the processor to: register accessible memory with the emulated input output memory management unit, write address handles to the address exchange module, read the address handles from the address exchange module, and move the data into the second portion of the memory.Type: GrantFiled: April 10, 2012Date of Patent: August 5, 2014Assignee: International Business Machines CorporationInventors: Gerd Bayer, Marco Kraemer, Hoang-Nam Nguyen, Christoph Raisch, Stefan Usenbinz
-
Publication number: 20120271981Abstract: A computer system with a memory containing a first guest operating system, including a first portion of the memory and a second guest operating system, including a second portion of the memory. The memory further contains an address exchange module for exchanging memory address handles, a data mover for moving data between the first and second portions of the memory, and an emulated input output memory management unit for controlling the data mover. Instructions in the memory cause the processor to: register accessible memory with the emulated input output memory management unit, write address handles to the address exchange module, read the address handles from the address exchange module, and move the data into the second portion of the memory.Type: ApplicationFiled: April 10, 2012Publication date: October 25, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Gerd BAYER, Marco KRAEMER, Hoang-Nam NGUYEN, Christoph RAISCH, Stefan USENBINZ
-
Publication number: 20090187725Abstract: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may comprise allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may comprise providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.Type: ApplicationFiled: January 21, 2009Publication date: July 23, 2009Applicant: International Business Machines CorporationInventors: Angel Nunez Mencias, Albert Schirmer, Christine Axnix, Stefan Usenbinz