Patents Assigned to Parallels International GmbH
  • Patent number: 11221818
    Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes storing first client information identifying a first client device, identifying a location of the first client device, and identifying a first remote access session that provides the first client device access to resources of the remote access system. The method further includes receiving access information identifying an access device and a user account associated with the first client information. The access information indicates that the user account has been successfully authenticated by the access device. The method further includes, in response to the receipt of the access information, causing the first client device to connect to the first remote access session with the remote access system as a background process of the client device while a user interface of the client device remains locked.
    Type: Grant
    Filed: December 22, 2020
    Date of Patent: January 11, 2022
    Assignee: Parallels International GmbH
    Inventors: Claudio Rodrigues, Nikolay Dobrovolskiy, Serguei Beloussov, Lyuboiv Kulakova
  • Patent number: 11189002
    Abstract: Disclosed herein are systems and methods for detecting when geometry shaders output a constant amount of data and writing the data into an output stream buffer. In one aspect, an exemplary method comprises gathering information about a number of block executions associated with the received data, analyzing the gathered information to determine whether constant or variable amount of data is generated for at least one of: a stream output or a rasterization, and when the constant amount of data is generated for the stream output, writing the generated data directly into a stream output buffer, and when the constant amount of data is generated for the rasterization, writing the generated data into a rasterization buffer either directly or through a use of an intermediate index buffer.
    Type: Grant
    Filed: July 24, 2019
    Date of Patent: November 30, 2021
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11175878
    Abstract: The subject matter of this specification can be implemented in, among other things, a method that includes storing first client information identifying a first client device, identifying a location of the first client device, and identifying a first remote access session that provides the first client device access to resources of the remote access system. The method further includes receiving access information identifying an access device and a user account associated with the first client information. The access information indicates that the user account has been successfully authenticated by the access device. The method further includes, in response to the receipt of the access information, causing the first client device to connect to the first remote access session with the remote access system as a background process of the client device while a user interface of the client device remains locked.
    Type: Grant
    Filed: January 29, 2020
    Date of Patent: November 16, 2021
    Assignee: Parallels International GmbH
    Inventors: Cláudio Rodrigues, Nikolay Dobrovolskiy, Serguei M. Beloussov, Liubov Kulakova
  • Patent number: 11178109
    Abstract: Systems and methods for file sharing over secure connections.
    Type: Grant
    Filed: July 1, 2019
    Date of Patent: November 16, 2021
    Assignee: Parallels International GmbH
    Inventors: Alexey Petrukhin, Grigory Nikolaenko, Nikolay Dobrovolskiy, Serguei Beloussov
  • Patent number: 11169831
    Abstract: A system and method that provides customized graphical user interfaces on mobile devices based on user inputs. An exemplary method includes detecting a computing device remotely connected to a remote server over a network and having an active session of a software application running on the remote server. Moreover, the method further includes identifying and selecting one or more hotkey buttons based on the detected software application, transmitting the one or more hotkey buttons to the computing device to be displayed in a customized interface while the software application is active, detecting an activation of the one or more hotkey buttons displayed on the computing device, and executing, by the remote server, an operation for the active software application in response to the activation of the one or more hotkey button by the user.
    Type: Grant
    Filed: November 27, 2017
    Date of Patent: November 9, 2021
    Assignee: Parallels International GmbH
    Inventors: Pavel Semenov, Ivan Korobov, Serguei M. Beloussov, Nikolay Dobrovolskiy, Liubov Kulakova, Ruslan Sadovnikov
  • Patent number: 11165709
    Abstract: Disclosed are systems and methods for managing computing resources for a remote session that has been established between a client and a remote server via a communication channel. Such a remote session is configured to automatically adapt image quality of the remote session based on a network status of the communication channel. The described technique includes detecting an inactive state of the remote session, and in turn, modifying at least one network setting of the client using a network shaping rule specified to artificially reduce a network quality of the communication channel used by the client for traffic of the remote session, so as to cause the client to reduce image quality of the remote session and reduce an amount of data exchanged between the remote server and the client.
    Type: Grant
    Filed: July 27, 2020
    Date of Patent: November 2, 2021
    Assignee: Parallels International GmbH
    Inventors: Ivan Korobov, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11165752
    Abstract: 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: Grant
    Filed: March 16, 2020
    Date of Patent: November 2, 2021
    Assignee: Parallels International GmbH
    Inventors: Sergey Pachkov, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11159627
    Abstract: Disclosed are systems and methods for seamlessly redirecting network data between a client and a remote server. In one exemplary aspect, the method comprises receiving, at a remote server, the network data via a first remote desktop protocol (RDP) channel, wherein the network data is encapsulated and transmitted by a client device configured to communicate with the remote server. The method further comprises replacing a MAC address listed in the network data with a MAC address of a logical network adapter on the remote server, and placing received network packets into a network driver of the logical network adapter, wherein the logical network adapter transfers received data in an operating system of the remote server such that a server-side application on the remote server receives network packets from the client device.
    Type: Grant
    Filed: January 16, 2020
    Date of Patent: October 26, 2021
    Assignee: Parallels International GmbH
    Inventors: Sergey Pachkov, Alexey Koryakin, Dmitry Skorodumov, Nikolay Dobrovolskiy
  • Patent number: 11153364
    Abstract: Systems and methods for embedding remote applications into HyperText Markup Language (HTML) pages. An example method comprises: identifying, within a HTML page rendered by a browser, a frame referencing a remote application; determining at least one of: a size of a window for rendering output of the remote application on a virtual desktop produced by a virtual execution environment running the remote application or a position of the window on the virtual desktop; causing a remote access session to be established with the virtual execution environment; transmitting a first message specifying at least one of: the size of the window on the virtual desktop or the position of the window on the virtual desktop; and causing the frame to be displayed within the HTML page by the browser for rendering output of the remote application.
    Type: Grant
    Filed: November 29, 2017
    Date of Patent: October 19, 2021
    Assignee: Parallels International GmbH
    Inventors: Joseph Portelli, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11115460
    Abstract: Disclosed are systems and methods for determining an execution location for a utility component. In an exemplary aspect, the systems and methods comprise receiving, at a client device, a request to execute the utility component that performs an action on a target component; determining the execution location of the utility component; determining whether the execution location is on the client device or on a remote application server; and responsive to determining the execution location is on the remote application server, transmitting the request to be executed within a remote session between the client device and the remote application server.
    Type: Grant
    Filed: December 11, 2019
    Date of Patent: September 7, 2021
    Assignee: Parallels International GmbH
    Inventors: Aleksandr Suslov, Ivan Korobov, Serguei M. Beloussov, Nikolay Dobrovolskiy
  • Patent number: 11113094
    Abstract: Virtual computer systems (virtual machines) have become increasingly common with the evolution of virtualization technology, cloud computing, etc. However, as a virtual machine and its associated guest operating system seek to execute and/or access a page of memory through synchronous processes execution of the virtual processor associated with the virtual processing is blocked until the page of memory is locked and available. Accordingly, time is wasted on calls waiting for physical page availability thereby reducing utilization of the host machine and virtual machine respectively. To address this an asynchronous virtual machine environment is established allowing the virtual machine or physical machine to handle additional operations whilst waiting for physical page availability.
    Type: Grant
    Filed: August 28, 2019
    Date of Patent: September 7, 2021
    Assignee: Parallels International GmbH
    Inventors: Alexey Koryakin, Nikolay Dobrovolskiy
  • Patent number: 11093264
    Abstract: Systems and methods for managing user input for a remote application session between a client device and a remote server are provided. Input command data is received from a client device for an application executing within a remote session established between the client device and the remote server. The input command data specifies a plurality of points within a graphical user interface where the input command data was captured on the client device. Spline curves are calculated based on a first subset of sequential points from the plurality of points. Simulated input events are generated that specify intermediate points calculated along the spline curves. The simulated input events are injected into the remote server for the application.
    Type: Grant
    Filed: June 14, 2019
    Date of Patent: August 17, 2021
    Assignee: Parallels International GmbH
    Inventors: Ivan Korobov, Dmitry Varentsov, Nikolay Dobrovolskiy
  • Patent number: 11086527
    Abstract: Systems and methods for pre-fetching data based on memory usage patterns. An example method comprises: receiving a first memory access request identifying a first memory block; receiving a second memory access request identifying a second memory block; update a memory access tracking data structure by incrementing a sequence counter corresponding to a memory access sequence that references the first memory block and the second memory block; receive a third memory access request identifying a third memory block; identifying, based on the memory access tracking data structure, a sequence counter having a maximal value among sequence counters associated with memory access sequences that reference the third memory block; and pre-fetching a fourth memory block corresponding to the identified sequence counter.
    Type: Grant
    Filed: January 28, 2019
    Date of Patent: August 10, 2021
    Assignee: Parallels International GmbH
    Inventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11080089
    Abstract: Disclosed are systems and methods for managing software applications. The system receives, via a graphical user interface, a request to generate a chain application with a sequence of execution comprising a first application and a second application. In response to determining that an output type of the first application is not compatible with an input type of the second application, the system updates, without further user input, the sequence of execution such that the second application precedes the first application. The system generates the chain application configured to execute the first application and the second application in the updated sequence of execution.
    Type: Grant
    Filed: December 5, 2019
    Date of Patent: August 3, 2021
    Assignee: Parallels International GmbH
    Inventors: Sergey Kontsov, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11068269
    Abstract: Systems and methods for instruction decoding using hash tables. An example method of constructing a decoding tree comprises: generating an aggregated vector of differentiating bit scores representing at least a subset of a set of processor instructions; identifying, based on the aggregated vector of differentiating bit scores, one or more opcode bit positions; and constructing a hash table implementing a current level of a decoding tree representing the subset of the set of processor instructions, wherein the hash table is indexed by one or more opcode bits identified by the one or more opcode bit positions.
    Type: Grant
    Filed: May 20, 2019
    Date of Patent: July 20, 2021
    Assignee: Parallels International GmbH
    Inventors: Alexey Koryakin, Nikolay Dobrovolskiy
  • Patent number: 11070647
    Abstract: System for synchronization of content between open applications. Remote access server (RAS) provides remote desktop to a mobile device. The mobile device has a remote access client component and communicates with the RAS and with an authorization component. First computer with a host application is connected to the RAS. Second computer is connected to the RAS and has a native application or a VM with a guest application. Authentication component authenticates the mobile device and the computers. The RAS synchronizes data between the mobile device and the computers, and provides a remote desktop for the mobile device via a remote access client component. The remote desktop includes the host application. Data entered in the host application for the first computer on the mobile device appears in the remote desktop via the RAS, and is synchronized with the guest application on the second computer.
    Type: Grant
    Filed: March 14, 2017
    Date of Patent: July 20, 2021
    Assignee: Parallels International GmbH
    Inventors: Ivan Korobov, Yuri Makarov, Andrey A. Omelyanchuk, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11055115
    Abstract: Disclosed are systems and methods for executing a remote session in a virtualized environment. The described technique may be used when handling a request to launch a remote session using a specified virtual template. A virtual machine (VM) type associated with the virtual template and that indicates hypervisor compatibility of the virtual template may be determined. A destination hypervisor is selected for executing the remote session. If VM type is not compatible for execution on the destination hypervisor, a converted, native VM image file is generated which is compatible with the destination hypervisor. The remote session is then launched on the destination hypervisor using another VM executed using the converted VM image file.
    Type: Grant
    Filed: August 9, 2018
    Date of Patent: July 6, 2021
    Assignee: Parallels International GmbH
    Inventors: Maxim Kudrin, Ilya Bakaev, Bair Dymbrylov, Serguei Beloussov, Nikolay Dobrovolskiy
  • Patent number: 11055896
    Abstract: An example method of hardware-assisted graphics pipeline emulation comprises: computing, based on an input set graphic primitives, a set of tessellation factors; computing, based on the input set graphic primitives, a set of points specifying a plurality of patches; computing, based on the set of points, a tessellation count buffer; generating, based on the set of points and the tessellation count buffer, a tessellation offset buffer; performing, using the tessellation offset buffer, a tessellation setup stage; performing, by a graphics processing unit (GPU), a tessellation stage based on the set of tessellation factors, wherein the tessellation stage generates a plurality of output points corresponding to one or more patches of the plurality of patches; and computing, by a domain shader stage, a plurality of vertex positions defined by the plurality of output points.
    Type: Grant
    Filed: February 25, 2020
    Date of Patent: July 6, 2021
    Assignee: Parallels International GmbH
    Inventors: Evgeny Nikitenko, Alexey Ivanov, Nikolay Dobrovolskiy
  • Patent number: 11042257
    Abstract: A processing device identifies an application that is in a first language and has a first binary resource file that includes first resource data for a first set of resources of the application in the first language, determines that the application is translated into a second language and has a second binary resource file that includes second resource data for a second set of resources of the application in the second language, determines differences between functionality of the second set of resources of the application in the second language and functionality of the first plurality of resources of the application in the first language based on the first binary resource file and the second binary resource file, and modifies one or more of the second plurality of resources of the application in the second language based on at least one of the differences between the functionality of the second plurality of resources and the functionality of the first plurality of resources of the application.
    Type: Grant
    Filed: December 5, 2016
    Date of Patent: June 22, 2021
    Assignee: Parallels International GmbH
    Inventors: Shawn Roderick Sciberras, Paul Gafa, Nikolay Dobrovolskiy, Serguei M. Beloussov
  • Patent number: 11044315
    Abstract: 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: Grant
    Filed: February 24, 2020
    Date of Patent: June 22, 2021
    Assignee: Parallels International GmbH
    Inventors: Anton Zelenov, Nikolay Dobrovolskiy, Serguei M. Beloussov