Patents Assigned to Parallels International GmbH
-
Patent number: 11044315Abstract: Systems and methods for facilitating access to files that are stored by network-accessible file storage services. An example system comprises a plurality of file access nodes including a control node, wherein the control node is configured to: receive a file access request initiated by a client, wherein the file access request comprises an identifier of a file, an identifier of a file storage service, and an access token associated with the file stored by the file storage service; request, using the access token, metadata associated with the file from the file storage service; define, using the metadata, a plurality of portions forming the file; and forward, to the plurality of file access nodes, identifiers of the plurality of portions.Type: GrantFiled: February 24, 2020Date of Patent: June 22, 2021Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 11036764Abstract: A document classifier, executed by a processing device, groups a plurality of stored documents using machine learning to create a plurality clusters that each include documents having similar characteristics. The document classifier further determines a document classification for each of the plurality of clusters based on a subset of the documents in each respective cluster. In addition, the document classifier associates a determined document classification with each of the plurality of documents, wherein resulting classifications of documents are used to filter search results in response to queries of end users.Type: GrantFiled: January 12, 2017Date of Patent: June 15, 2021Assignee: Parallels International GmbHInventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 11036344Abstract: 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: GrantFiled: September 13, 2016Date of Patent: June 15, 2021Assignee: Parallels International GmbHInventors: Joseph Portelli, Paul Gafa, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 11030792Abstract: Disclosed herein are systems and methods for packing stream outputs of a geometry shader into an output buffer. In one aspect, an exemplary method comprises generating, using vertices of primitives received from one or more geometry shaders, a stream output data together with an index buffer, where each absent vertex is replaced with a primitive restart, rebuilding the index buffer to a list format; and unwrapping the index data of the rebuilt index buffer to a packed buffer.Type: GrantFiled: May 22, 2019Date of Patent: June 8, 2021Assignee: Parallel International GmbHInventors: Alexey Ivanov, Evgeny Nikitenko, Nikolay Dobrovolskiy
-
Patent number: 11010324Abstract: 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; 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 state flags.Type: GrantFiled: November 11, 2019Date of Patent: May 18, 2021Assignee: Parallels International GmbHInventors: Sergey Pachkov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 11010280Abstract: Disclosed are systems and methods for debugging program code using a computing system. The disclosed method includes designating a control point in a software application subject to a debugging procedure, and then executing the program code for the software application as a guest application executing within a virtual machine. Upon detection of a virtualization event, the hardware processor transfers program control to a hypervisor which then determines whether the virtualization event corresponds to the designated control point based on an execution state of the guest application. If so, the virtualization event handler may generate a debugging event that is used by a debugger.Type: GrantFiled: March 13, 2019Date of Patent: May 18, 2021Assignee: Parallels International GmbHInventors: Andrey Stupachenko, Nikolay Dobrovolskiy
-
Patent number: 11003470Abstract: Systems and methods for implementing sticky notes associated with remotely executed applications. An example method comprises: receiving, by a client gateway, a request initiated by a client to launch a published application executable by a virtual execution environment; retrieving, from a publishing server associated with the virtual execution environment, a plurality of sticky note definition records, wherein each sticky note definition record of the plurality of sticky note definition records defines a sticky note associated with the published application; and causing the client to render, in a visual association with a window of the published application, a popup window representing a sticky note defined by a sticky note definition record of the plurality of sticky note definition records.Type: GrantFiled: March 5, 2018Date of Patent: May 11, 2021Assignee: Parallels International GmbHInventors: Stefania Galea, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 11004263Abstract: Disclosed herein are systems and methods for reading input data into a geometry shader by rebuilding an index buffer. In one aspect, an exemplary method comprises constructing T-vectors for one-element ranges of the index buffer by defining each T-vector as a 4-component vector, calculating T-vectors for ranges [0; i] for all vertices of the index buffer by prefix scanning, for each vertex and for each primitive featuring the vertex, determining if the primitive is complete, and for each complete primitive, calculating an offset in an output index buffer using a component of the T-vector used to indicate, for the vertex, a number of complete primitives inside the range and a component that indicates a number of vertices since a last primitive restart, and writing an index value in an output index buffer, and reading input data into the geometry shader in accordance with the written index values.Type: GrantFiled: May 22, 2019Date of Patent: May 11, 2021Assignee: Parallels International GmbHInventors: Alexey Ivanov, Evgeny Nikitenko
-
Patent number: 10999409Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes establishing connections between a host server and client devices associated with one or more local devices, receiving from the client devices configuration requests to configure, on the host server, drivers for the local devices to convert data between a data format accessible to the local devices and a data format accessible to applications provided to the client devices by the host server, identifying execution priority of the client devices, identifying a first group of configuration requests and a second group of configuration requests, executing, in order of decreased priority of client devices, the first group of configuration requests until an occurrence of a restart condition, and responsive to the occurrence of the restart condition, executing the second group of configuration requests.Type: GrantFiled: May 30, 2019Date of Patent: May 4, 2021Assignee: Parallels International GmbHInventors: Sergey Pachkov, Igor Marnat, Liubov Kulakova, Nikolay Dobrovolskiy
-
Patent number: 10999362Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes receiving, by a host server providing a remote desktop environment to a client device, a request from the client device to execute an application, selecting a first terminal server to execute the application, initiating execution of the application on the first terminal server, determining that the application is to be transferred to a second terminal server, determining identifiers of storage locations of one or more application files that are opened by a user of the client device in relation to the application, causing execution of the application on the first terminal server to be terminated; and initiating execution of the application on the second terminal server using the identifiers of the storage locations of the one or more application files.Type: GrantFiled: January 14, 2019Date of Patent: May 4, 2021Assignee: Parallels International GmbHInventors: Maxim Kudrin, Nikolay Dobrovolskiy
-
Patent number: 10990280Abstract: The subject matter of this specification describes a method that includes determining when to send a user selection of a first key on a keyboard to an operating system, where the operating system supports shortcut key combinations. The device identifies the user selection of the first key, as input for an application. The device determines that the first key is part of a shortcut key combination. The processing device determines whether a cursor is visible in a user interface provided by the application. Upon determining that the cursor is visible in the user interface, the device waits for another user selection of one or more remaining keys of the shortcut key combinations before sending the first key to the operating system. Upon determining that the cursor is not visible in the user interface, the device sends the first key to the operating system without waiting for another user selection.Type: GrantFiled: December 3, 2018Date of Patent: April 27, 2021Assignee: Parallels International GmbHInventors: Alexander Grechishkin, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10992744Abstract: The subject matter of this specification can be implemented in, among other things, a method and a system to perform the method that includes receiving a request from a client device to execute an application, selecting servers that provide remote desktop environment and host the requested application, determining, based on a priority level for a client session to be established, a capacity of system resources and a current utilization level of each server, that the client device is to be directed to a first server, the first server having an expected utilization level that satisfies a threshold condition, and directing the request to the first server to establish the client session and to execute the requested application as part of the client session.Type: GrantFiled: August 29, 2019Date of Patent: April 27, 2021Assignee: Parallels International GmbHInventors: Alexey Kutuzov, Nikolay Dobrovolskiy
-
Patent number: 10979493Abstract: Disclosed are systems and methods for forwarding service requests to an idle server from among a plurality of servers. For example, the method comprises, by a load balancer, tracking service requests on each backend server, estimating an additional load associated with currently pending requests based on resource usage statistics reported in a previous time interval, predicting which of the plurality of servers is most likely to be the most idle server for a next time interval using a statistical model based on the estimated additional load associated with currently pending requests, and forwarding service requests to the most idle server based on the prediction.Type: GrantFiled: December 13, 2019Date of Patent: April 13, 2021Assignee: Parallel International GmbHInventors: Daniel Farrugia, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10956186Abstract: Systems and methods for runtime text translation for virtual execution environments. An example method comprises: identifying, by a virtualization server application, a window associated with an application running in a virtual execution environment controlled by the virtualization server application; identifying, in metadata associated with the window, a first alphanumeric string to be displayed in the window, the first alphanumeric string comprising one or more words in a first natural language; translating the first alphanumeric string to a second natural language to produce a second alphanumeric string; modifying the metadata associated with the window to produce modified metadata including the second alphanumeric string; transmitting the modified metadata to a virtualization client application associated with the virtual execution environment; and causing the virtualization client application to render the window.Type: GrantFiled: September 5, 2017Date of Patent: March 23, 2021Assignee: Parallels International GmbHInventors: André Zammit, Shawn Roderick Sciberras, Liubov Kulakova, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10924528Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes determining, by a first computing device, a set of remote applications hosted by a second computing device including file type associations for each remote application. The first computing device determines a set of local applications and their file type associations. The each file type associated with a remote application, the first computing device determines whether the file type is also associated with a local application. Responsive to determining that the file type is associated with both a remote and local application, the first computing device configures a proxy component with parameters specifying the remote application and the local application. The proxy component is configured to determine whether to open a requested file of the file type with the remote application or the local application based upon the current client/server environment.Type: GrantFiled: June 29, 2018Date of Patent: February 16, 2021Assignee: Parallels International GmbHInventors: Ivan Korobov, Silvan Chetcuti, Ruslan Sadovnikov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10908943Abstract: Systems and methods for browser credential management for terminal server sessions. An example method comprises: receiving, by a terminal server, a credential manager API request intercepted by a hook module installed into a browser running within a terminal session managed by the terminal server; forwarding the intercepted API request to a terminal service client application running on a client computer system; receiving, from the terminal service client application, a client response to the intercepted API request; producing, using the client response, a terminal server response to the intercepted API request; and forwarding the terminal server response to the hook module.Type: GrantFiled: April 25, 2019Date of Patent: February 2, 2021Assignee: Parallels International GmbHInventors: Sergey Viktorov, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10904350Abstract: A method for providing high availability Virtual Desktop Infrastructure (VDI) includes determining, by a VDI client and based on connection information for a first VDI broker associated with a first datacenter, whether a connection to the first VDI broker is available, and responsive to determining that the connection to the first VDI broker associated with the first datacenter is available, connecting the VDI client to a first VDI broker associated with a first datacenter.Type: GrantFiled: March 2, 2020Date of Patent: January 26, 2021Assignee: Parallels International GmbHInventors: Maxim Kudrin, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10887390Abstract: A remote application connection manager, executed by a processing device, transmits a remote application connection request from the processing device to a remote application server. The remote application connection manager further receives one or more access compliance conditions for the processing device from the remote application server. Also, the remote application connection manager determines whether the processing device satisfies the one or more access compliance conditions and if the processing device does not satisfy the one or more access compliance conditions, the remote application connection manager determines whether the processing device has a configuration control right to update a configuration of the processing device to satisfy the one or more access compliance conditions. If the processing device has the configuration control right, the remote application connection manager updates the configuration of the processing device.Type: GrantFiled: December 15, 2017Date of Patent: January 5, 2021Assignee: Parallels International GmbHInventors: Alexey Kutuzov, Yury Averkiev, Matthew Cini Sarreo, Ian Sant, Nikolay Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10884782Abstract: 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: October 2, 2019Date of Patent: January 5, 2021Assignee: Parallels International GmbHInventors: Andrey N. Naenko, Alexey B. Koryakin, Nikolay N. Dobrovolskiy, Serguei M. Beloussov
-
Patent number: 10852986Abstract: 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: May 30, 2019Date of Patent: December 1, 2020Assignee: Parallels International GmbHInventors: Iurii Ovchinnikov, Alexey Koryakin, Denis Lamtsov, Nikolay Dobrovolskiy, Serguei M. Beloussov