Patents by Inventor Nikolay Igotti

Nikolay Igotti 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: 10162617
    Abstract: Systems and methods for binary translation are disclosed. In some implementations, guest software to run in a Native Client environment is received. The guest software is configured to execute at a specified guest hardware architecture and not within the Native Client environment. A binary translation of the guest software into Native Client compatible machine code is provided using emulation software. The Native Client compatible machine code executes within a sandbox for the Native Client environment. The Native Client compatible machine code is executable within an application. Providing the binary translation of the guest software into the Native Client compatible machine code for execution within the sandbox occurs just in time, during a runtime of the emulated guest software, and without porting or recompiling the guest software. Providing the binary translation interleaves with execution of the emulated guest software.
    Type: Grant
    Filed: April 10, 2015
    Date of Patent: December 25, 2018
    Assignee: Google LLC
    Inventors: Evgeny Eltsin, Nikolay Igotti, Andrey Khalyavin, Dmitry Polukhin
  • Patent number: 10007497
    Abstract: Techniques for binary translation are disclosed. A host platform receives a program for a guest platform different from the host. The program uses a set of shared objects or dynamically loaded libraries and is not compatible with the host platform. The host platform determines whether the host platform has a corresponding shared object or dynamically loaded library that implements a common external interface with a specified shared object or dynamically loaded library from within the set. If the host platform has the corresponding shared object or dynamically loaded library, the host platform uses the corresponding shared object or dynamically loaded library in place of the specified shared object or dynamically loaded library for execution of the program. If the host platform lacks the corresponding shared object or dynamically loaded library, the host platform performs binary translation of the specified shared object or dynamically loaded library for execution of the program.
    Type: Grant
    Filed: April 10, 2015
    Date of Patent: June 26, 2018
    Assignee: GOOGLE LLC
    Inventors: Evgeny Eltsin, Nikolay Igotti, Andrey Khalyavin, Dmitry Polukhin
  • Publication number: 20170039050
    Abstract: Techniques for binary translation are disclosed. A host platform receives a program for a guest platform different from the host. The program uses a set of shared objects or dynamically loaded libraries and is not compatible with the host platform. The host platform determines whether the host platform has a corresponding shared object or dynamically loaded library that implements a common external interface with a specified shared object or dynamically loaded library from within the set. If the host platform has the corresponding shared object or dynamically loaded library, the host platform uses the corresponding shared object or dynamically loaded library in place of the specified shared object or dynamically loaded library for execution of the program. If the host platform lacks the corresponding shared object or dynamically loaded library, the host platform performs binary translation of the specified shared object or dynamically loaded library for execution of the program.
    Type: Application
    Filed: April 10, 2015
    Publication date: February 9, 2017
    Inventors: Evgeny ELTSIN, Nikolay IGOTTI, Andrey KHALYAVIN, Dmitry POLUKHIN
  • Publication number: 20170039049
    Abstract: Systems and methods for binary translation are disclosed. In some implementations, guest software to run in a Native Client environment is received. The guest software is configured to execute at a specified guest hardware architecture and not within the Native Client environment. A binary translation of the guest software into Native Client compatible machine code is provided using emulation software. The Native Client compatible machine code executes within a sandbox for the Native Client environment. The Native Client compatible machine code is executable within an application. Providing the binary translation of the guest software into the Native Client compatible machine code for execution within the sandbox occurs just in time, during a runtime of the emulated guest software, and without porting or recompiling the guest software. Providing the binary translation interleaves with execution of the emulated guest software.
    Type: Application
    Filed: April 10, 2015
    Publication date: February 9, 2017
    Applicant: Google Inc.
    Inventors: Evgeny ELTSIN, Nikolay IGOTTI, Andrey KHALYAVIN, Dmitry POLUKHIN
  • Publication number: 20050003810
    Abstract: A method for installing an application on a mobile device is provided. The method includes obtaining the application over a network and storing the application on the mobile device. The method further includes processing the application on the mobile device to generate a processed application. Also include in the method is storing the processed application on the mobile device and requesting access to the application. The method also includes mapping the request to access the application to the processed application and launching the processed application on the mobile device.
    Type: Application
    Filed: May 28, 2003
    Publication date: January 6, 2005
    Applicant: Sun Microsystems, Inc.
    Inventors: Singyun Chu, Nikolay Igotti
  • Publication number: 20030033443
    Abstract: The present invention relates to a low-level API for integrating a virtual machine into a host application. According to one or more embodiments of the present invention, the plug-in traditionally used to implement a virtual machine is partitioned into two categories. A first category contains host application specific information. A second category contains host application independent information and contains the virtual machine itself. This allows a developer to interface with the virtual machine in a manner that is removed from the runtime environment that exists in the host application.
    Type: Application
    Filed: March 1, 2001
    Publication date: February 13, 2003
    Inventor: Nikolay Igotti