IP Library Granted Patent US 10,956,186
Granted Patent B1
US 10,956,186 · App. 15/695,561 · Granted Mar 23, 2021

Runtime text translation for virtual execution environments

Inventors: André Zammit (Sliema, MT); Shawn Roderick Sciberras (Sliema, MT); Liubov Kulakova (Moscow, RU); Nikolay Dobrovolskiy (Moscow, RU); Serguei M. Beloussov (Singapore, SG)
Assignee: Parallels International GmbH
G06F9/45537G06F16/907G06F40/47
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,956,186
App. No.
15/695,561
Granted
Mar 23, 2021
Kind
B1
Abstract

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.

Claims (36)

1. A method, comprising:

determining, by a virtualization server application running in a privileged execution mode, that an application window has gained focus in a virtual execution environment controlled by the virtualization server application via a virtualization client application running in a non-privileged execution mode;

identifying, in metadata associated with the application window, a first alphanumeric string to be displayed in the application 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 application window to produce modified metadata including the second alphanumeric string;

transmitting, by the virtualization server application, the modified metadata to the virtualization client application; and

causing the virtualization client application to render, using the modified metadata, the application window in the virtual execution environment.

2. The method of claim 1 , wherein the virtualization server application is provided by one of: a virtual machine manager or a terminal server.

3. The method of claim 1 , wherein the virtual execution environment is provided by one of: a virtual machine or a terminal session.

4. The method of claim 1 , wherein the virtualization client application is provided by one of: a virtual machine client application or a terminal service client application.

5. The method of claim 1 , further comprising:

receiving, from the virtualization client application, an identifier of the second natural language.

6. The method of claim 1 , wherein translating the first alphanumeric string further comprises:

looking up at least part of the first alphanumeric string in a translation cache associated with the virtualization server application.

7. The method of claim 6 , wherein translating the first alphanumeric string further comprises:

responsive to failing to find the part of the first alphanumeric string in the translation cache, transmitting a translation request to a translation service.

8. The method of claim 1 , wherein modifying the metadata further comprises:

replacing, in the metadata, the first alphanumeric string with the second alphanumeric string.

9. The method of claim 1 , wherein modifying the metadata further comprises:

appending the second alphanumeric string to the metadata.

10. A non-transitory computer-readable storage medium comprising executable instructions that, when executed by a computer system, cause the computer system to:

determine, by a virtualization server application running in a privileged execution mode, that an application window has been created in a virtual execution environment controlled by the virtualization server application via a virtualization client application running in a non-privileged execution mode;

identify, in metadata associated with the application window, a first alphanumeric string to be displayed in the application window, the first alphanumeric string comprising one or more words in a first natural language;

translate the first alphanumeric string to a second natural language to produce a second alphanumeric string;

modify the metadata associated with the application window to produce modified metadata including the second alphanumeric string; and

transmit, by the virtualization server application, the modified metadata to the virtualization client application; and

causing the virtualization client application to render, using the modified metadata, the application window in the virtual execution environment.

11. The non-transitory computer-readable storage medium of claim 10 , wherein the virtualization server application is provided by one of: a virtual machine manager or a terminal server.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the virtual execution environment is provided by one of: a virtual machine or a terminal session.

13. The non-transitory computer-readable storage medium of claim 10 , wherein the virtualization client application is provided by one of: a virtual machine client application or a terminal service client application.

14. The non-transitory computer-readable storage medium of claim 10 , wherein translating the first alphanumeric string further comprises:

looking up at least part of the first alphanumeric string in a translation cache associated with the virtualization server application.

15. The non-transitory computer-readable storage medium of claim 10 , wherein modifying the metadata further comprises:

replacing, in the metadata, the first alphanumeric string with the second alphanumeric string.

16. The non-transitory computer-readable storage medium of claim 10 , wherein modifying the metadata further comprises:

appending the second alphanumeric string to the metadata.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 047973 FRAME 0797 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 049773/0590 →
SECURITY INTEREST Recorded Dec 21, 2018
From: PARALLELS INTERNATIONAL GMBH
To: UBS AG, STAMFORD BRANCH
Reel/Frame 047973/0797 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 5, 2017
From: ZAMMIT, ANDRÉ; SCIBERRAS, SHAWN RODERICK; KULAKOVA, LIUBOV; DOBROVOLSKIY, NIKOLAY; BELOUSSOV, SERGUEI M.
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 043490/0866 →