Patents Assigned to Parallels IP Holdings GmbH
  • 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: 10140145
    Abstract: A method for acquiring process statistics includes starting a Virtual Machine (VM) on the host node; renaming a standard DLL that collects process statistics; installing a replacement DLL in a directory of a Task Manager, wherein the replacement DLL has the same name as the standard DLL prior to the renaming; collecting host OS process statistics via the renamed standard DLL; collecting VM process statistics via API calls to the replacement DLL from the Task Manager; and displaying the VM process statistics and the host OS process statistics in the same interface. Optional steps include launching the Task Manager on a host node; saving a link to location of the renamed standard DLL prior to the installing; starting a host process prior to the step of collecting the host OS process statistics, and starting a VM process on the VM prior to the step of collecting the VM process statistics.
    Type: Grant
    Filed: October 20, 2016
    Date of Patent: November 27, 2018
    Assignee: PARALLELS IP HOLDINGS GMBH
    Inventors: Elena A. Koryakina, Alexey B. Koryakin
  • Patent number: 10025924
    Abstract: A system for managing Containers, including a hardware node running an OS; a multi-tenant application on the node; and a plurality of Containers under the OS. A process of the multi-tenant application uses only one Container at a time. Remaining Containers available to the process are taskless Containers. An arbiter controls permissions for the process to switch from one Container to another Container. The arbiter defines trusted and untrusted execution contexts. Code of the process executing in the untrusted context is not permitted to switch Containers, and the code of the process executing in the trusted context is permitted to switch Containers. The arbiter detects attempts to switch Containers, and prevents them when executing untrusted code. Upon a request to the multi-tenant application, the arbiter switches the process that will process the user request to one of the taskless Containers and executes the request in the untrusted context.
    Type: Grant
    Filed: August 26, 2016
    Date of Patent: July 17, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Andrey Vagin, Alexey Kobets
  • Patent number: 9990370
    Abstract: A method for editing a non-native file on a mobile device using a remote application, including establishing a connection between a local-side component and a remote-side component on a remote computer; wherein the local-side component identifies an editor on the remote computer based on parameters of the file; on the remote computer, activating an editor for a file located on the mobile device; upon selection of the editor, using the local-side component to transmit the file to the remote-side component; storing the file in a storage on the remote computer; opening the file using the editor and giving the editor control over the file using a protocol for remote connection; editing the file on the mobile device as if the editor on the remote computer were native; saving the file on the remote storage and transmitting the file to the mobile device; and replacing the file on the mobile device with the transmitted file.
    Type: Grant
    Filed: July 25, 2016
    Date of Patent: June 5, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexander Aplemakh, Andrey A. Omelyanchuk, Alexey Petrukhin, Stanislav S. Protassov, Serguei M. Beloussov, Nikolay Dobrovolskiy, Dmitry Martynov
  • Patent number: 9940159
    Abstract: Systems and methods for facilitating hibernation mode transitions for virtual machines. An example method comprises: responsive to determining that an active user session exists in a virtual machine operating in a hibernation state on a host computer system, disabling modifications of a hardware configuration parameter of the virtual machine; responsive to determining that the active user session has terminated, enabling modifications of the hardware configuration parameter of the virtual machine; and responsive to determining the hardware configuration parameter of the virtual machine has been modified, causing the virtual machine to discard, upon awakening, a previously saved memory state.
    Type: Grant
    Filed: June 9, 2016
    Date of Patent: April 10, 2018
    Assignee: PARALLELS IP HOLDINGS GMBH
    Inventors: Yuri Ovchinnikov, Nikolay Dobrovolskiy, Serguei Beloussov
  • Patent number: 9912553
    Abstract: A method for provisioning application resources using semantic links is provided. Each application is divided into a set of separate resources corresponding to business logic linked to each other by semantic links. The application is configured based on user requirements. The provider assembles an application provisioning package, including creating a Virtual Environment (e.g., VM) on a customer site and launching an application instance on the VM based on required configuration determined by application resources and the semantic links required by these resources. A provisioning algorithm is implemented as a hierarchical tree. A root tree resource (object) is created. All relationships (semantic links) are determined. Existing linked objects are found and not yet existing ones are determined. The tree branch is created not further than one a link from a non-existent object. The leaf nodes of the tree are existing objects or objects that do not have the required links.
    Type: Grant
    Filed: June 8, 2015
    Date of Patent: March 6, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Vladimir Grebenschikov, Timur Nizametdinov, Vladimir Zatsepin, Evgeny Uspenskiy, Maxim Kuzkin, Elena Sidorova, Stepan Anohin, Irina Kononenko, Natal'ya Salomatina
  • Patent number: 9910768
    Abstract: A method and system for management of physical memory of Virtual Machines (VMs) using dynamic memory reallocation based on estimated usages by each of the VMs is provided. A host has different VMs with respective Guest OSs running on the host OS. The Guest OS of an exemplary VM has a balloon agent driver running on it. The balloon agent driver collects Guest OS statistics and calculates Working Set Size (WSS) of the Guest OS based on the Guest OS statistics. The WSS is provided to a Hypervisor via a Virtual Machine Monitor (VMM). The Hypervisor adjusts the size of the ballooned memory based on the calculated WSS and the virtualization statistics collected by the Hypervisor using the VMM.
    Type: Grant
    Filed: May 23, 2016
    Date of Patent: March 6, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Anna L. Melekhova, Larisa Markeeva
  • 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: 9904461
    Abstract: A method for selecting the text on a remote computer or a server from a mobile device is provided. Actions of a user for selecting a text area on the mobile device are emulated on a remote server. A user initiates text selection on a mobile device using touch screen functionality, which is reflected on selected elements of a remote server. Once the mobile device user completes the selection, the emulator selects a corresponding area of the server screen. All mobile device user actions related to selection of text area are emulated on a remote server.
    Type: Grant
    Filed: August 30, 2015
    Date of Patent: February 27, 2018
    Assignee: Parallels IP Holdings GmbH
    Inventors: Dmitry Martynov, Sergey Chuzhanov, Andrey A. Omelyanchuk, Yury Makarov, Nikolay Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov, Alexander Patsay, Artem Kolomeitzev
  • Patent number: 9852198
    Abstract: A method, system and computer program product for generation and management of incremental backups of VEE file system using bitmaps. The proposed method allows users to roll back to any previous version or state of the VEE file system and to instantiate this version using the data encapsulated in virtual disk storage (i.e. file system) of the VEE. A number of VEEs run on a Host Operating System of the computer system. One of the VEEs implemented on the computer system is designated to generation and management of backups of the virtual disk data of the other VEEs without freezing the file system during the entire backup process. A special tracing application runs on the designated VEE for generating the bitmap of a file system snapshot. The user can also set up a time for generating a backup or create a schedule for automatically generating the backups at critical points.
    Type: Grant
    Filed: February 26, 2013
    Date of Patent: December 26, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventors: Alexay N. Kuznetzov, Alexander G. Tormasov, Kirill S. Korotaev, Dmitry I. Monakhov
  • Patent number: 9823819
    Abstract: A method for using a mobile device to access remote host desktop applications. A client mobile device is connected to a remote server (host) over a WAN. The client mobile device launches host desktop applications remotely and loads the application windows onto its screen. The applications are executed on a remote host and the host application icons are loaded and rendered on a mobile device screen. The images are formed on the remote host as a result of execution of the applications. The host is connected to cloud cache storage. The host loads application icons onto the cloud cache storage. The icon hashes are generated. When a mobile client needs to launch the host application, the corresponding icon hashes are used for locating the required application icons in the cloud cache storage and loading them to the client mobile device.
    Type: Grant
    Filed: May 13, 2016
    Date of Patent: November 21, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventors: Ruslan Pashkov, Stanislav S. Protassov, Serguei M. Beloussov, Andrey Pokrovsky, Pavel Gashev, Alexander Aplemakh
  • Patent number: 9817840
    Abstract: A host runs an operating system kernel. A plurality of virtual private servers (containers) is supported within the kernel. The containers use the same files. A template cache has pre-calculated file checksums. The checksum is calculated each time the file is created and/or modified. Each file has an inode containing an attribute indicating whether the checksum is calculated and stored along with the file. If the checksum is present, the process is redirected to access the file with the same inode in the shared disk cache.
    Type: Grant
    Filed: March 15, 2016
    Date of Patent: November 14, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventors: Pavel Emelyanov, Kirill S. Korotaev, Stanislav S. Protassov, Serguei M. Beloussov, Alexander G. Tormasov
  • Patent number: 9766915
    Abstract: Method for partitioning containers includes instantiating a selected container under a host OS; opening a file system of the selected container for modification; inside the FS of the selected container, creating an image file of an Application Container; mounting a virtual disk that corresponds to the image file; mounting the Application Container file system inside the image file; defining boundaries of the Application Container; placing Application Container files inside the Application Container file system; and creating an interface between the selected container and the Application Container for exchanging data. The processes of the Application Container connect to processes of the selected container as if they were native host OS processes. The Application Container can only request data from the host OS through the interface of the selected container. The image file is protected from modification by the selected container. The processes of the Application Container are launched inside the boundaries.
    Type: Grant
    Filed: March 23, 2016
    Date of Patent: September 19, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventor: Pavel Emelyanov
  • Patent number: 9753762
    Abstract: A Container or VM running on physical host is allocated for hosting a dispatcher module in an isolated environment. A thin dispatcher runs on the host OS, while another secured dispatcher module runs inside the allocated Container. If an intruder gains access to the host, he would not be able to send commands to the dispatcher module running inside the Container. The intruder may access the thin dispatcher module, but would not be able to create or delete VMs or Containers. The administrator can connect directly to the dispatcher module inside the container. A remote shell access goes to the host container instead of a physical host. Thus, the security of the host is improved.
    Type: Grant
    Filed: March 4, 2016
    Date of Patent: September 5, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventor: Pavel Emelyanov
  • Patent number: 9727292
    Abstract: In a virtualized system, a number of Virtual Machines (VMs) have their own GUIs. A full screen desktop has active corners that roll up in response to user action, such as mouse move or touch screen action. An active corner of the desktop rolls up allowing a user to select another VM application or another display mode without taking any special actions for getting out of a full screen mode. The switch feature does not take up any space on the desktop.
    Type: Grant
    Filed: December 2, 2010
    Date of Patent: August 8, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventors: Sergey R. Kudryashov, Andrey A. Omelyanchuk
  • Patent number: 9621643
    Abstract: A method for joining Containers and balancing loads uses a cluster of independent computer nodes assembled into a cloud service. The cluster nodes have Containers implemented on them. The Containers execute some real processes that use the resources of the node. If the Container requires additional resources (CPU, memory, etc.), the Container is provided with resources available from another node. In order to do this, the process requiring additional resources is migrated to another Container on a different node, and a proxy process imitates this process execution on the original Container. A load balancer monitors the resource usage and selects the Containers to be joined.
    Type: Grant
    Filed: July 31, 2015
    Date of Patent: April 11, 2017
    Assignee: Parallels IP Holdings GmbH
    Inventor: Pavel Emelyanov
  • 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: 9489220
    Abstract: A system, method and computer program product for implementing a VM on a host computer and monitoring the VM processes from the Host computer. A host-based Task Manager monitors the VM process and obtains execution statistics using a proprietary dynamic link library that substitutes Guest statistic collection functions for standard host statistic collection functions. The Guest statistic collection functions acquire data related to the execution of the VM processes running on the Guest OS.
    Type: Grant
    Filed: November 27, 2015
    Date of Patent: November 8, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Elena A. Koryakina, Alexey B. Koryakin
  • Patent number: 9491061
    Abstract: Method for web-based management of resources. On a cloud computing system, for groups of user resources, defining commonly managed subgroups. Accessing cloud-based control procedures of one subgroup using a dedicated communication channel. Control procedures reside on a server, and are visible with a single specified domain ID unique for the subgroup. Multiple domain IDs are used in one communication session. On the client, isolated windows for each domain ID contain graphical representation of local applications, and where applications of one window share local data and are connected to control procedures using the same domain ID. Managing user resources through control procedures that are controlled by the applications. Only one of the isolated windows is activated at any one time on the user's computer.
    Type: Grant
    Filed: June 7, 2016
    Date of Patent: November 8, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Timur Nizametdinov, Vladimir Grebenshikov, Vladimir Zatsepin, Evgeny Uspenskiy, Maxim Kuzkin
  • Patent number: 9485219
    Abstract: A method, system and computer program product for a VPN for containers and VMs implemented on different network node. A number of network hardware nodes have containers and VMs running on them. The containers and VMs are aggregated into VPNs assembled across the hardware nodes. Each hardware node has a network edge programmable switch configured to route packets to containers and VMs only inside a particular VPN. The switch detects a number of the VPN inside the packet header, replaces this number by a standard broadcast header number and multi-casts the packet to the containers and the VMs inside the VPN.
    Type: Grant
    Filed: May 13, 2015
    Date of Patent: November 1, 2016
    Assignee: Parallels IP Holdings GmbH
    Inventors: Pavel Emelyanov, James Bottomley