Patents by Inventor Nikolay N. Dobrovolskiy

Nikolay N. Dobrovolskiy 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: 11644939
    Abstract: A processing device sends a request from a remote access client to a first remote application server to access a first application being hosted by the first remote application server, receives instructions from the first remote application server to display a first application window within a browser window of a browser on a display of the client device, creates the first application window within the browser window based on the instructions. The processing device sends a request to a second remote application server to access a second application being hosted by the second remote application server, receives instructions from the second remote application server to display a second application window within the browser window, and creates the second application window for the second application within the browser window based on the instructions. The second application window is displayed within the browser window together with the first application window.
    Type: Grant
    Filed: February 15, 2022
    Date of Patent: May 9, 2023
    Assignee: Parallels International GmbH
    Inventors: Joseph Portelli, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11262884
    Abstract: A processing device sends a request from a remote access client to a first remote application server to access a first application being hosted by the first remote application server, receives instructions from the first remote application server to display a first application window within a browser window of a browser on a display of the client device, creates the first application window within the browser window based on the instructions. The processing device sends a request to a second remote application server to access a second application being hosted by the second remote application server, receives instructions from the second remote application server to display a second application window within the browser window, and creates the second application window for the second application within the browser window based on the instructions. The second application window is displayed within the browser window together with the first application window.
    Type: Grant
    Filed: June 1, 2021
    Date of Patent: March 1, 2022
    Assignee: Parallels International GmbH
    Inventors: Joseph Portelli, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11036344
    Abstract: A processing device sends a request from a remote access client to a first remote application server to access a first application being hosted by the first remote application server, receives instructions from the first remote application server to display a first application window within a browser window of a browser on a display of the client device, creates the first application window within the browser window based on the instructions. The processing device sends a request to a second remote application server to access a second application being hosted by the second remote application server, receives instructions from the second remote application server to display a second application window within the browser window, and creates the second application window for the second application within the browser window based on the instructions. The second application window is displayed within the browser window together with the first application window.
    Type: Grant
    Filed: September 13, 2016
    Date of Patent: June 15, 2021
    Assignee: Parallels International GmbH
    Inventors: Joseph Portelli, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 10884782
    Abstract: Systems and methods for implementing a virtual machine (VM) exit processing accelerator. An example method comprises: intercepting, by a VM exit processing accelerator, a VM exit associated with the virtual machine; responsive to determining that an identifier of a reason of the VM exit satisfies a first condition, processing the VM exit by the VM exit processing accelerator; and resuming execution of the virtual machine.
    Type: Grant
    Filed: October 2, 2019
    Date of Patent: January 5, 2021
    Assignee: Parallels International GmbH
    Inventors: Andrey N. Naenko, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 10481941
    Abstract: Systems and methods for implementing a virtual machine (VM) exit processing accelerator. An example method comprises: intercepting, by a VM exit processing accelerator, a VM exit associated with the virtual machine; responsive to determining that an identifier of a reason of the VM exit satisfies a first condition, processing the VM exit by the VM exit processing accelerator; and resuming execution of the virtual machine.
    Type: Grant
    Filed: April 25, 2018
    Date of Patent: November 19, 2019
    Assignee: Parallels International GmbH
    Inventors: Andrey N. Naenko, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 10432681
    Abstract: A computer-implemented method for transmitting and controlling images of a remotely executed application, the method including connecting a mobile computing device to a remote server; connecting a desktop computing device to the remote server and to the mobile computing device; starting an application on the remote server, wherein the application generates graphical objects controllable by commands from the mobile computing device; encoding each graphical object into a video stream; transferring the video stream to the mobile computing device and to the desktop computing device; generating the commands on mobile computing device; sending the commands to the remote server; detecting if the video stream contains results of execution of the commands; displaying the graphical objects on the local computing device; and generating an image of a substitute graphic object image if the video stream does not contain the results.
    Type: Grant
    Filed: October 19, 2016
    Date of Patent: October 1, 2019
    Assignee: Parallels International GmbH
    Inventors: Artem Kolomeitsev, Alexander Kiselev, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov
  • Patent number: 10230855
    Abstract: A processing device in a server computer system generates multiple instances of a universal scanner driver on a server, each instance corresponding to a different scanner connected at separate user devices. The processing device receives requests for an application running on the server to scan documents using the multiple scanners concurrently. The processing device sends, using the different instances of the universal scanner driver, the requests to each user device concurrently and receives scan data corresponding to the documents from the user device.
    Type: Grant
    Filed: September 12, 2016
    Date of Patent: March 12, 2019
    Assignee: Parallels International GmbH
    Inventors: Matthew Cini Sarreo, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 10204220
    Abstract: A system, method and computer program product for implementing a thin hypervisor. The thin hypervisor does not have any direct association with a VM. The thin hypervisor serves as a wrapper over hardware capabilities of a processor. The processor has privileged low-level capabilities EPT VTX, AMD V and the ARM has virtualization technology. In order to use processor hardware capabilities and receiving root privileges, the system operates in a “super user” mode. The VM operates in a VM environment with kernel privileges in a user mode. A super user space is created in a safe mode. A user space application (or a process) is created. A user space virtualization framework library is used. These entities may be separated by a user space and a kernel (OS) space. A thin hypervisor is implemented in the user space.
    Type: Grant
    Filed: February 25, 2016
    Date of Patent: February 12, 2019
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexey B. Koryakin, Andrey N. Naenko, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov
  • Patent number: 10019282
    Abstract: Systems and methods for implementing a virtual machine (VM) exit processing accelerator. An example method comprises: reading, from a first memory location, a first virtual machine (VM) exit handler address referencing a hypervisor; storing, in a second memory location, the first VM exit handler address; storing, in the first memory location, a second VM exit handler address referencing a VM exit processing accelerator; receiving, by the VM exit processing accelerator, a VM exit associated with a virtual machine; responsive to determining that an identifier of a reason of the VM exit satisfies the first condition, processing the VM exit by the VM exit processing accelerator; and resuming execution of the virtual machine.
    Type: Grant
    Filed: July 21, 2016
    Date of Patent: July 10, 2018
    Assignee: PARALLELS INTERNATIONAL GMBH
    Inventors: Andrey N. Naenko, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 9983761
    Abstract: A method and computer program product for intercepting and blocking the mouse move and resize events on mobile devices transmitting remote application. The remote access client installed on the mobile device send the coordinates of user's touches to remote computer. The remote access agent, running on a remote host, blocks the consequences of user finger (or stylus) actions performed on a captured window of the remote application. The method defines the areas and elements of a captured remote application window that are not affected by the move/resize commands emulated by a mobile device user. This functionality is implemented by a control-agent component running on a remote host for receiving and processing the commands from a mobile device and for transmitting video stream and some metadata about remote applications to the mobile device.
    Type: Grant
    Filed: November 22, 2016
    Date of Patent: May 29, 2018
    Assignee: Parallels International GMBH
    Inventors: Kirill Bagrinovskiy, Stanislav S. Protassov, Serguei M. Beloussov, Nikolay N. Dobrovolskiy
  • Patent number: 9910678
    Abstract: A method for installation of a native OS on a host using non-native utilities. A native OS image is deployed on a native target client system using a non-native distribution server. The OS image is converted and packaged into a non-native format and provided to the target client. The OS image is unpacked and de-converted back to a native format and deployed on the target client. The client agent runs System Imaging Utility to acquire the OS image from the reference partition. The created OS image is pushed to the non-native file sharing system, and then the SCCM Proxy is asked to create an OS image package and a task sequence in the SCCM for this package. When the OS image is placed into the SCCM, the client agent reboots back to the reference partition.
    Type: Grant
    Filed: April 24, 2015
    Date of Patent: March 6, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Timofey Furyaev, Nikolay N. Dobrovolskiy, Evgeny Smirnov
  • Patent number: 9804872
    Abstract: A method, system and computer program product for emulation of a virtual application bookmark on a host desktop. When a user launches a VM (running Windows™), shortcuts to user applications are created on the desktop. In Parallels™ Desktop™, the VM shortcuts and MAC bookmarks can both be seen and be functional. A special file is created in MAC OS X with Windows™ icon. The file is associated with the VM from which the file was created, and resource link corresponding to the original shortcut. The bookmark thus contains a reference to an application icon in the VM, which the user can launch from the host OS by clicking on it.
    Type: Grant
    Filed: December 3, 2014
    Date of Patent: October 31, 2017
    Assignee: PARALLELS INTERNATIONAL GMBH
    Inventors: Denis Ozerov, Andrey A. Omelyanchuk, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov
  • Patent number: 9740380
    Abstract: A processing device receives, from a remote access client executing on a mobile device, user input provided in a portion of an application window being displayed on the mobile device. The application window on the mobile device corresponds to an application executing on a remote host. The user input requests an operation to be performed on the application window and specifies a location of the portion of the application window in which the user input was provided. The processing device determines whether the portion of the application window is a restricted portion with respect to the requested operation to be performed on the application window, and prevents the remote access client on the mobile device from performing the requested operation responsive to a determination that the portion of the application window is the restricted portion.
    Type: Grant
    Filed: April 5, 2016
    Date of Patent: August 22, 2017
    Assignee: Parallels International GmbH
    Inventors: Kirill Bagrinovskiy, Stanislav S. Protassov, Serguei M. Beloussov, Nikolay N. Dobrovolskiy
  • Patent number: 9588657
    Abstract: A method for integration of dynamically scalable non-native windows into a host operating system (OS), including launching a Virtual Machine (VM) running a guest OS on a computer system with the host OS and a host desktop being displayed to a user; displaying a window of a non-native desktop on the host desktop; and scaling the window in response to user action, so that items displayed in the window are scaled with the same ratio, wherein the VM interfaces to a virtual adapter for its maintenance of the window, and wherein a resolution of the displayed window changes dynamically in response to the user action.
    Type: Grant
    Filed: May 19, 2014
    Date of Patent: March 7, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexander V. Grechishkin, Nikolay N. Dobrovolskiy, Alexey B. Koryakin, Sergei Malykhin, Andrey A. Omelyanchuk, Alexander G. Tormasov, Serguei M. Beloussov
  • Patent number: 9535567
    Abstract: A method and computer program product for intercepting and blocking the mouse move and resize events on mobile devices transmitting remote application. The remote access client installed on the mobile device send the coordinates of user's touches to remote computer. The remote access agent, running on a remote host, blocks the consequences of user finger (or stylus) actions performed on a captured window of the remote application. The method defines the areas and elements of a captured remote application window that are not affected by the move/resize commands emulated by a mobile device user. This functionality is implemented by a control-agent component running on a remote host for receiving and processing the commands from a mobile device and for transmitting video stream and some metadata about remote applications to the mobile device.
    Type: Grant
    Filed: December 21, 2015
    Date of Patent: January 3, 2017
    Assignee: Parallels International GmbH
    Inventors: Kirill Bagrinovskiy, Stanislav S. Protassov, Serguei M. Beloussov, Nikolay N. Dobrovolskiy
  • Patent number: 9485290
    Abstract: A computer-implemented method for transmitting and controlling images of a remotely executed application, the method including connecting a mobile computing device to a remote server; connecting a desktop computing device to the remote server and to the mobile computing device; starting an application on the remote server, wherein the application generates graphical objects controllable by commands from the mobile computing device; encoding each graphical object into a video stream; transferring the video stream to the mobile computing device and to the desktop computing device; generating the commands on mobile computing device; sending the commands to the remote server; detecting if the video stream contains results of execution of the commands; displaying the graphical objects on the local computing device; and generating an image of a substitute graphic object image if the video stream does not contain the results.
    Type: Grant
    Filed: April 18, 2014
    Date of Patent: November 1, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Artem Kolomeitsev, Alexander Kiselev, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov
  • Patent number: 9367671
    Abstract: A first component of a Hypervisor is loaded into the memory upon start up. The first component is responsible for context switching and some interrupt handling. The first component of the Hypervisor runs on a root level. An OS is loaded into a highest non-root privilege level. A second component of the Hypervisor is loaded into OS space together with the OS, and running on the highest non-root privilege level. A Virtual Machine Monitor is running on the root level. The second component of the Hypervisor is responsible for (a) servicing the VMM, and (b) enabling communication between VMM code launched on non-root level with the first component of the Hypervisor to enable root mode for the VMM. A Virtual Machine is running on a user level under control of the VMM.
    Type: Grant
    Filed: June 28, 2013
    Date of Patent: June 14, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Nikolay N. Dobrovolskiy, Alexey B. Koryakin, Alexander G. Tormasov
  • Patent number: 9317195
    Abstract: A method for displaying non-native application windows on a computing system that has the host OS and a host desktop, the method including displaying the host desktop; upon a user invoking the non-native application by selecting an object associated with the non-native user application in the host OS, launching the non-native application on a server, wherein the non-native application is incompatible with the host OS and cannot execute under the host OS; and displaying the non-native application in a non-native application window on the computing system on the host OS desktop. The non-native application window has a native look-and-feel of the host OS, and control elements of the non-native application window appear native. Objects within the non-native application window can be drag-and-dropped to the host OS desktop as if they were native objects of the host OS.
    Type: Grant
    Filed: June 29, 2015
    Date of Patent: April 19, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexander V. Grechishkin, Nikolay N. Dobrovolskiy, Alexey B. Koryakin, Sergei Malykhin, Andrey A. Omelyanchuk, Alexander G. Tormasov, Serguei M. Beloussov
  • Patent number: 9286098
    Abstract: A system, method and computer program product for managing files of Virtual Machines, including launching a plurality of Virtual Machines in a computing system having a host OS. Content of at least one file of the host OS is used as a shared file. Using a re-direct, access is provided to the shared file when any Virtual Machine attempts to access its private file; using copy-on-write, a copy is made of the shared file if the Virtual Machine attempts to modify the shared file, and placed in a private area of the corresponding Virtual Machine. One of the Virtual Machines is used as master template, and includes shareable files to which attempts to access the file by other Virtual Machines are redirected. Access to the shared file from the Virtual Machine is implemented using stub files.
    Type: Grant
    Filed: February 4, 2014
    Date of Patent: March 15, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Ilya Baimetov, Nikolay N. Dobrovolskiy, Alexander G. Tormasov, Serguei M. Beloussov
  • Patent number: 9274823
    Abstract: A system, method and computer program product for implementing a thin hypervisor. The thin hypervisor does not have any association with a VM. The thin hypervisor serves as a wrapper over hardware capabilities of a processor. The processor has privileged low-level capabilities EPT VTX, AMD V and the ARM has virtualization technology. In order to use processor hardware capabilities and receiving root privileges, the system operates in a “super user” mode. The VM operates in a VM environment with kernel privileges in a user mode. A super user space is created in a safe mode. A user space application (or a process) is created. A user space virtualization framework library is used. These entities are separated by a user space and a kernel space. A thin hypervisor is implemented in the user space.
    Type: Grant
    Filed: December 24, 2014
    Date of Patent: March 1, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexey B. Koryakin, Andrey N. Naenko, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov