Patents by Inventor Mikael Vidstedt

Mikael Vidstedt 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: 20230367638
    Abstract: Techniques for computing and storing object identity hash values are disclosed. In some embodiments, a runtime system generates a value, such as a nonce, that is unique to a particular allocation region within memory. The runtime system may mix the value with one or more seed values that are associated with one or more respective objects stored in the allocation region. The runtime system may obtain object identifiers for the respective objects by applying a hash function to the result of mixing the seed value with at least the value associated with the allocation region. Conditioning operations may also be applied before, during or after the mixing operations to make the values appear more random. The nonce value may be changed from time to time, such as when memory is recycled in the allocation region, to reduce the risk of hash collisions.
    Type: Application
    Filed: July 28, 2023
    Publication date: November 16, 2023
    Applicant: Oracle International Corporation
    Inventors: John Robert Rose, Mikael Vidstedt, Erik Österlund
  • Patent number: 11755373
    Abstract: Techniques for computing and storing object identity hash values are disclosed. In some embodiments, a runtime system generates a value, such as a nonce, that is unique to a particular allocation region within memory. The runtime system may mix the value with one or more seed values that are associated with one or more respective objects stored in the allocation region. The runtime system may obtain object identifiers for the respective objects by applying a hash function to the result of mixing the seed value with at least the value associated with the allocation region. Conditioning operations may also be applied before, during or after the mixing operations to make the values appear more random. The nonce value may be changed from time to time, such as when memory is recycled in the allocation region, to reduce the risk of hash collisions.
    Type: Grant
    Filed: October 7, 2020
    Date of Patent: September 12, 2023
    Assignee: Oracle International Corporation
    Inventors: John Robert Rose, Mikael Vidstedt, Erik Österlund
  • Publication number: 20220107840
    Abstract: Techniques for computing and storing object identity hash values are disclosed. In some embodiments, a runtime system generates a value, such as a nonce, that is unique to a particular allocation region within memory. The runtime system may mix the value with one or more seed values that are associated with one or more respective objects stored in the allocation region. The runtime system may obtain object identifiers for the respective objects by applying a hash function to the result of mixing the seed value with at least the value associated with the allocation region. Conditioning operations may also be applied before, during or after the mixing operations to make the values appear more random. The nonce value may be changed from time to time, such as when memory is recycled in the allocation region, to reduce the risk of hash collisions.
    Type: Application
    Filed: October 7, 2020
    Publication date: April 7, 2022
    Applicant: Oracle International Corporation
    Inventors: John Robert Rose, Mikael Vidstedt, Erik Österlund
  • Patent number: 10452409
    Abstract: In one approach, a native call is performed using an adapter generator to produce an adapter for converting memory structures between a first memory representation adhering to a first application binary interface (ABI) and a second memory representation adhering to a second memory representation adhering to a second ABI. In some cases, the adapter produced by the adapter generator is stored in an adapter cache and indexed by the shape of the call for later reuse should the same native call be made again in the future. The adapter produced by the adapter generator uses a set of intermediate instructions which can be either compiled by a Just-in-Time (JIT) compiler or interpreted by an interpreter to produce executable instructions for converting between the first ABI and the second ABI.
    Type: Grant
    Filed: October 21, 2016
    Date of Patent: October 22, 2019
    Assignee: Oracle International Corporation
    Inventors: John R. Rose, Vladimir Ivanov, Mikael Vidstedt
  • Patent number: 9971618
    Abstract: A system and method for reconfiguring a virtual server image suitable for cloud deployment. In accordance with an embodiment, the system comprises providing a virtual server image, which can be executed on one or a plurality of hypervisors, and which contains a bootable part of a virtual machine, a non-bootable part of the virtual machine, a software application code for a software application, and a software application data for the software application. Information in a virtual server image patch can be used to reconfigure the contents of the virtual server image from its original content to a reconfigured content, to create a reconfigured virtual server image. In a particular embodiment, the virtual machine can be a Java Virtual Machine.
    Type: Grant
    Filed: May 29, 2014
    Date of Patent: May 15, 2018
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Publication number: 20170115975
    Abstract: In one approach, a native call is performed using an adapter generator to produce an adapter for converting memory structures between a first memory representation adhering to a first application binary interface (ABI) and a second memory representation adhering to a second memory representation adhering to a second ABI. In some cases, the adapter produced by the adapter generator is stored in an adapter cache and indexed by the shape of the call for later reuse should the same native call be made again in the future. The adapter produced by the adapter generator uses a set of intermediate instructions which can be either compiled by a Just-in-Time (JIT) compiler or interpreted by an interpreter to produce executable instructions for converting between the first ABI and the second ABI.
    Type: Application
    Filed: October 21, 2016
    Publication date: April 27, 2017
    Inventors: John R. Rose, Vladimir Ivanov, Mikael Vidstedt
  • Patent number: 9239814
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Grant
    Filed: January 27, 2014
    Date of Patent: January 19, 2016
    Assignee: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Patent number: 8924789
    Abstract: A system and method for providing virtual machine diagnostic information. In accordance with an embodiment, a “flight recorder”, for use with a virtual machine, such as a Java virtual machine (JVM), allows a system administrator, software developer or other user experiencing a system problem to “go back in time” and analyze what happened right before a particular problem occurred in their system, and/or obtain an extremely detailed level of profiling without impacting system performance. The flight recorder does this by being tightly integrated into the core of the JVM itself, and by being very conscious of its performance overhead. This allows the flight recorder to provide a large amount of information on the inner workings of the JVM, and on Java programs running in the JVM.
    Type: Grant
    Filed: April 25, 2012
    Date of Patent: December 30, 2014
    Assignee: Oracle International Corporation
    Inventors: Staffan Larsen, Henrik Osterdahl, Mikael Vidstedt
  • Patent number: 8856294
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Grant
    Filed: June 1, 2009
    Date of Patent: October 7, 2014
    Assignee: Oracle International Corporation
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Publication number: 20140282548
    Abstract: A system and method for reconfiguring a virtual server image suitable for cloud deployment. In accordance with an embodiment, the system comprises providing a virtual server image, which can be executed on one or a plurality of hypervisors, and which contains a bootable part of a virtual machine, a non-bootable part of the virtual machine, a software application code for a software application, and a software application data for the software application. Information in a virtual server image patch can be used to reconfigure the contents of the virtual server image from its original content to a reconfigured content, to create a reconfigured virtual server image. In a particular embodiment, the virtual machine can be a Java Virtual Machine.
    Type: Application
    Filed: May 29, 2014
    Publication date: September 18, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Patent number: 8776053
    Abstract: A system and method for reconfiguring a virtual server image suitable for cloud deployment. In accordance with an embodiment, the system comprises providing a virtual server image, which can be executed on one or a plurality of hypervisors, and which contains a bootable part of a virtual machine, a non-bootable part of the virtual machine, a software application code for a software application, and a software application data for the software application. Information in a virtual server image patch can be used to reconfigure the contents of the virtual server image from its original content to a reconfigured content, to create a reconfigured virtual server image. In a particular embodiment, the virtual machine can be a Java Virtual Machine.
    Type: Grant
    Filed: August 9, 2010
    Date of Patent: July 8, 2014
    Assignee: Oracle International Corporation
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Publication number: 20140143389
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Application
    Filed: January 27, 2014
    Publication date: May 22, 2014
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Patent number: 8639787
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Grant
    Filed: April 12, 2012
    Date of Patent: January 28, 2014
    Assignee: Oracle International Corporation
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Patent number: 8533383
    Abstract: A system and method for locking memory areas in a Java Virtual Machines (JVM) to facilitate sharing between virtual servers. In accordance with an embodiment, the system comprises a computing/virtual execution environment, which includes one or more physical computers, computer systems, server computers, or similar computing devices, a hypervisor, and a virtual machine or JVM. The JVM allows one or more application images to be run on the computer, wherein the application images can include application server instances. The application server uses a first large page in memory during its startup process, and is configured so that it signals to the JVM when the application server has completed its startup and has potentially pre-optimized important code. When the JVM receives this signal, it internally write-protects or locks the page used for application server code memory, so that any new JITed code or re-optimized code is subsequently written into a new large page.
    Type: Grant
    Filed: January 14, 2011
    Date of Patent: September 10, 2013
    Assignee: Oracle International Corporation
    Inventors: Fredrik Ohrstrom, Mikael Vidstedt
  • Publication number: 20130111273
    Abstract: A system and method for providing virtual machine diagnostic information. In accordance with an embodiment, a “flight recorder”, for use with a virtual machine, such as a Java virtual machine (JVM), allows a system administrator, software developer or other user experiencing a system problem to “go back in time” and analyze what happened right before a particular problem occurred in their system, and/or obtain an extremely detailed level of profiling without impacting system performance. The flight recorder does this by being tightly integrated into the core of the JVM itself, and by being very conscious of its performance overhead. This allows the flight recorder to provide a large amount of information on the inner workings of the JVM, and on Java programs running in the JVM.
    Type: Application
    Filed: April 25, 2012
    Publication date: May 2, 2013
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Staffan Larsen, Henrik Osterdahl, Mikael Vidstedt
  • Publication number: 20120266169
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Application
    Filed: April 12, 2012
    Publication date: October 18, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Publication number: 20120185847
    Abstract: A system and method for locking memory areas in a Java Virtual Machines (JVM) to facilitate sharing between virtual servers. In accordance with an embodiment, the system comprises a computing/virtual execution environment, which includes one or more physical computers, computer systems, server computers, or similar computing devices, a hypervisor, and a virtual machine or JVM. The JVM allows one or more application images to be run on the computer, wherein the application images can include application server instances. The application server uses a first large page in memory during its startup process, and is configured so that it signals to the JVM when the application server has completed its startup and has potentially pre-optimized important code. When the JVM receives this signal, it internally write-protects or locks the page used for application server code memory, so that any new JITed code or re-optimized code is subsequently written into a new large page.
    Type: Application
    Filed: January 14, 2011
    Publication date: July 19, 2012
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Fredrik Öhrström, Mikael Vidstedt
  • Publication number: 20110078680
    Abstract: A system and method that can be used to reconfigure a virtual server image that is suitable for cloud deployment. In accordance with an embodiment, the system and method comprises providing a virtual server image, which can be executed on the one or a plurality of hypervisors, and which provides a virtual machine environment for a software application, wherein the virtual server image contains a bootable part of the virtual machine, a non-bootable part of the virtual machine, a software application code for the software application, and a software application data for the software application; and receiving a virtual server image patch, and using information in the virtual server image patch to reconfigure the contents of the virtual server image from its original content to a reconfigured content, to create a reconfigured virtual server image.
    Type: Application
    Filed: August 9, 2010
    Publication date: March 31, 2011
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Publication number: 20100306355
    Abstract: A system and method to convert a software application, such as a Java application into a virtual server image that is suitable for cloud deploymentx. In accordance with an embodiment, the system and method allows for building a hypervisor appliance containing a virtual machine running an application. In particular, the hypervisor appliance can be compatible with any hypervisor for server virtualization and the application virtual machine can be a Java Virtual Machine (JVM).
    Type: Application
    Filed: June 1, 2009
    Publication date: December 2, 2010
    Applicant: ORACLE INTERNATIONAL CORPORATION
    Inventors: Marcus Lagergren, Mikael Vidstedt
  • Patent number: 7757202
    Abstract: A system and method for detecting memory leaks in a garbage collected environment. In particular, the present invention provides a mechanism by which objects in the memory space of a virtual machine are analyzed as to whether they are warm or cold, i.e., how long they have persisted in memory without being accessed or referenced by another object. Following this analysis, the objects are clustered into groups of warm or cold objects, and any links from warm clusters to cold clusters are determined. This information is then provided to the software developer for use in detecting and analyzing potential memory leaks.
    Type: Grant
    Filed: November 5, 2007
    Date of Patent: July 13, 2010
    Assignee: BEA Systems, Inc.
    Inventors: Joakim Dahlstedt, Peter Lonnebring, Mikael Vidstedt