Patents Assigned to Parallel International GmbH
-
Patent number: 10606493Abstract: A system and method is provided for managing memory allocated to a virtual machine running on a host platform. An exemplary method includes continuously calculating the amount of free physical memory of the host platform by subtracting the amount of physical memory currently used consumed by the host operating system from the total size of the physical memory on the host platform. Moreover, using the calculated amount of free physical memory, the method includes dynamically adjusting an overall limit of the physical memory that can be allocated to the virtual machine running on the host platform, and then allocating to the virtual machine an amount this allocated physical memory so that active pages can be stored in the allocated memory and directly accessed during operation by the virtual machine.Type: GrantFiled: April 14, 2017Date of Patent: March 31, 2020Assignee: Parallels International GmbHInventors: Aleksandr Kartashov, Iurii Ovchinnikov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10594661Abstract: A system and method is provided that enables the recovery of data packets transmitted over an unreliable network. The system and method utilize an algorithm for transmitting the data packets with restoration of lost data during data transfer over UDP Protocol encrypted with DTLS Protocol. Advantageously, the algorithm does not require changes to data for either UDP or DTLS packets, but rather a separate, specifically designed packet is transmitted to the recipient to facilitate and ensure the recovery of any lost data packets over the unreliable network.Type: GrantFiled: June 13, 2017Date of Patent: March 17, 2020Assignee: Parallels International GmbHInventors: Sergey Pachkov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10581636Abstract: Disclosed are systems and methods for exchanging network traffic between a client and a virtual machine running on a physical server. The described system provides a virtual network interface controller (NIC) that emulates access to a physical local area network of the physical server. The described system further includes server-side and client side components of a packet injection layer that exchanges guest network packets between the client and the virtual machine using a communication channel without injecting the guest network packets into the physical local network of the server.Type: GrantFiled: October 20, 2017Date of Patent: March 3, 2020Assignee: Parallels International GmbHInventors: Dmitry Skorodumov, Nikolay Dobrovolskiy, Serguei M. Beloussov, Alexey Koryakin
-
Patent number: 10542078Abstract: Disclosed are systems and methods for balancing load of computing resources among a plurality of servers by a plurality of load balancers. Clients communicate with a front-end device which forwards requests to the load balancers in a cyclical fashion. The load balancers estimate the impact of the received requests and can forward client requests to an estimated least loaded backend server. The backend servers process client requests and periodically report load statistics to the load balancers.Type: GrantFiled: June 13, 2017Date of Patent: January 21, 2020Assignee: Parallels International GmbHInventors: Daniel Farrugia, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10534637Abstract: Systems and methods for managing software applications are provided. The system may receive a user input request, via a graphical user interface, to chain together two or more applications. The system determines application profiles associated with each application, where the application profile specifies an input type and an output type for that application. The system determines whether the first output type of the first application is compatible with the second input type of the second application. If so, the system generates a chain application configured to execute the first application and second application in sequential order in which an intermediate output of the first application is passed to the second application as an input.Type: GrantFiled: February 21, 2018Date of Patent: January 14, 2020Assignee: Parallels International GmbHInventors: Sergey Kontsov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10528380Abstract: A communication channel may be implemented from a host operating system (OS) to a guest OS of a virtual machine. The method may include receiving an instruction to create a communication channel between a guest OS of a virtual machine and host OS of a host computer system. The method may further include transmitting, to a virtual Universal Serial Bus (USB) hub executed by the host OS, a first request to create a virtual USB device on the virtual USB hub. The method may also include providing the virtual USB device to the guest OS and identifying an operation to be performed by the guest OS on the virtual USB device. The method may include providing, from the guest OS to the virtual USB hub of the host OS, a second request that includes the operation to be performed by the guest OS.Type: GrantFiled: November 27, 2017Date of Patent: January 7, 2020Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10529327Abstract: A system and method is provided that enables voice recognition for legacy operating systems of a computing device. An exemplary method includes receiving speech-based instructions from a user of mobile device that indicate a request for executing a task. The speech-based instructions are then analyzed by an intelligent personal assistant running on the mobile device to determine an intent of the user. If the intent of the user identifies a specialized client software module installed on the mobile, the software module will generate a command object that includes parameters relating to the execution of the task. The command object is then transmitted by the first computing device to a personal computer with a legacy operating system where the command object causes a software agent installed on the personal computer to execute the task based on the parameters included in the command object.Type: GrantFiled: March 29, 2017Date of Patent: January 7, 2020Assignee: Parallels International GmbHInventors: Ivan Korobov, Andrey Omelyanchuk, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10528512Abstract: Systems and methods for performing asynchronous input/output (I/O) operations. An example method comprises: initializing a list of sockets that are ready for performing I/O operations; traversing the list of sockets, wherein a traversal operation of the list includes, for each socket referenced by the list: performing I/O operations using the socket, updating a state flag associated with the socket to reflect a state of the socket, updating one or more observed I/O performance statistics of the socket; and responsive to detecting less than a threshold number of I/O operation errors during the traversal operation, updating the list of sockets based on updated endpoint state flags and observed I/O performance statistics.Type: GrantFiled: March 14, 2018Date of Patent: January 7, 2020Assignee: Parallels International GmbHInventors: Sergey Pachkov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10509688Abstract: A system and method is provided for migrating a virtual machine between servers to access physical resources. An exemplary method includes intercepting a request from a client device to access a physical resource; identifying a virtual machine on a first server that is currently hosting a remote application for the client device; identifying a second server associated with the physical resource; and migrating the virtual machine from the first server to the second server, such that the client device can access the physical resource using the second server.Type: GrantFiled: June 29, 2017Date of Patent: December 17, 2019Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10496848Abstract: A system and method is provided for accessing secure files by local client devices. An exemplary method comprises receiving an access request to access an encrypted file on a client device, in response to the access request, transmitting a decryption request to decrypt a remote processing portion of a block of the encrypted file, receiving, in response to the decryption request, the decrypted remote processing portion of the block of the encrypted file, and receiving a local decryption key and applying the local decryption key to decrypt one or more local portions of the block of the encrypted file to obtain a fully decrypted block of the encrypted file.Type: GrantFiled: November 27, 2018Date of Patent: December 3, 2019Assignee: Parallels International GmbHInventors: Maxim Lyadvinsky, Paul Gafa, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10481941Abstract: 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: GrantFiled: April 25, 2018Date of Patent: November 19, 2019Assignee: Parallels International GmbHInventors: Andrey N. Naenko, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10432681Abstract: 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: GrantFiled: October 19, 2016Date of Patent: October 1, 2019Assignee: Parallels International GmbHInventors: Artem Kolomeitsev, Alexander Kiselev, Nikolay N. Dobrovolskiy, Stanislav S. Protassov, Serguei M. Beloussov
-
Patent number: 10404663Abstract: An example method for file sharing over secure connections comprises: establishing a secure client connection; receiving a client request identifying a file residing on the file sharing host; transmitting an identifier and a parameter of the secure client connection via a management connection to the file sharing host; receiving a host request to establish a secure host connection, the host request comprising the identifier of the secure client connection; establishing the secure host connection using the parameter of the secure client connection identified by the received identifier; forwarding, over the secure host connection, a first data packet received over the secure client connection, the first data packet comprising at least part of the client request; and forwarding, over the secure client connection, a second data packet received over the secure host connection, the second data packet comprising at least part of the file identified by the client request.Type: GrantFiled: February 29, 2016Date of Patent: September 3, 2019Assignee: Parallels International GmbHInventors: Alexey Petrukhin, Grigory Nikolaenko, Nikolay Dobrovolskiy, Serguei Beloussov
-
Patent number: 10404805Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes comparing, by a processing device in a remote access system, one or more days and times of day corresponding to initiation of a remote access session at a server device to determine that the days and times of day are within a threshold range from a day and time of day. The method further includes storing, in a data storage at the remote access system, first session information identifying the day and time of day for the remote access session at the server device. The method further includes, in response to an occurrence of the day and time of day, causing the server device to initiate the remote access session.Type: GrantFiled: May 22, 2017Date of Patent: September 3, 2019Assignee: Parallels International GmbHInventors: Cláudio Rodrigues, Paul Gafa, Liubov M. Kulakova, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10380195Abstract: Implementations of the disclosure describe grouping documents by content similarity. A method of the disclosure includes determining a first set of document identifiers (IDs) for documents identified responsive to a search query, for each document ID of the first set: obtaining shingles corresponding to the document ID, identifying a second set of document IDs corresponding to the obtained shingles, grouping the identified document IDs of the second set in a grouping data structure, and determining resulting document IDs from the grouping data structure, the resulting document IDs corresponding to a threshold number of the document IDs in the grouping data structure having a highest number of occurrences. The method further includes associating the documents corresponding to the resulting documents IDs with one another in search results generated responsive to the search query.Type: GrantFiled: January 13, 2017Date of Patent: August 13, 2019Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10379823Abstract: A processing device of a remote server identifies at least one control in an active application window and a plurality of control options associated with the at least one control. The active application window comprises a user interface in a first format generated by an application running on the remote server. The processing device generates a first metadata representation of the at least one control and of the plurality of control options and sends the first metadata representation to a mobile device communicatively coupled to the remote server. The mobile device generates a user interface in a second format based on the first metadata representation to present the control and the plurality of control options on the mobile device.Type: GrantFiled: September 5, 2017Date of Patent: August 13, 2019Assignee: Parallels International GmbHInventors: Ruslan Sadovnikov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10372497Abstract: A system and method is provided for performing computations on a virtual machine without a special hardware computation unit, such as a discrete graphics processing unit (GPU). The described method uses a computation module to intercept requests from a user application executing in a virtual machine on a first physical computer. The intercepted requests may include requests to configure GPU computation grids, start and finish accelerated code execution, and transfer data to and from the special computation unit. The computation module offloads accelerated code to a second physical computer having a physical special hardware unit (e.g., discrete GPU).Type: GrantFiled: September 5, 2017Date of Patent: August 6, 2019Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov, Alexey Koryakin
-
Patent number: 10359969Abstract: Systems and methods for creating virtual machine snapshots. An example method comprises: receiving a request to create a snapshot of a virtual machine running on a host computer system; protecting from modification a plurality of virtual memory pages of the virtual machine; responsive to detecting an attempt to modify a virtual memory page of the plurality of memory pages, copying the virtual memory page to a queue residing in a random access memory (RAM) of the host computer system; making the virtual memory page writable; retrieving the virtual memory page from the queue; writing the virtual memory page to a disk of the host computer system; and responsive to exhausting the queue, completing creation of the snapshot of the virtual machine.Type: GrantFiled: March 9, 2017Date of Patent: July 23, 2019Assignee: Parallels International GmbHInventors: Iurii Ovchinnikov, Alexey Koryakin, Denis Lamtsov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10313474Abstract: A system and method for reducing load on a load balancer by offloading redundant queries to the client. The system and method includes receiving an optimized service listing and determining if a suitable server can be identified without submitting a query to the load balancer. An exemplary method includes receiving, from a load balancing node, a listing of client services hosted by servers remotely coupled to the load balancing node, locally storing this listing and identifying one or more the client services to be transmitted to the client device. The method further includes accessing the listing of client services to determine if one or more of the servers is hosting the identified client service, establishing a connection between the client device and the server, and transmitting the identified client service from the server to the client device.Type: GrantFiled: November 14, 2016Date of Patent: June 4, 2019Assignee: Parallels International GmbHInventors: Daniel Farrugia, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10230855Abstract: 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: GrantFiled: September 12, 2016Date of Patent: March 12, 2019Assignee: Parallels International GmbHInventors: Matthew Cini Sarreo, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov