IP Library Granted Patent US 7,913,252
Granted Patent B2
US 7,913,252 · App. 11/697,700 · Granted Mar 22, 2011

Portable platform for executing software applications in a virtual environment

Assignee: Installfree, Inc.
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 7,913,252
App. No.
11/697,700
Granted
Mar 22, 2011
Kind
B2
Abstract

A portable platform for executing software applications on a computing device without installing or configuring the applications on the computing device. Furthermore, the execution of the applications is performed without making any changes or modifications to the computing device's memory or file system. The portable platform can reside on, for example, a portable memory device, a portable storage device, or downloaded from a web site.

Claims (71)

1. A method for executing software applications on a computing device in a virtual environment, the method comprising:

providing a portable platform that includes at least a virtual operating system (VOS) and a plurality of software packages; and

executing the plurality of software packages on the computing device using the VOS, wherein the VOS comprises:

a virtual file system (VFS) for interfacing between an operating system (OS) running on the computing device and the VOS;

a single file system for translating a set of file system commands of the computing device to a set of commands to be executed by the portable platform;

a virtual service manager (VSCM) for generating a virtual environment for the execution of services requested by the software packages;

a virtual registry file manager (VRFM) for handling registry file requests; and

a virtual digital rights management (VDRM).

2. The method of claim 1 , wherein the portable platform further comprises:

setting files associated with the plurality of software packages; and

data files for maintaining information saved by a user.

3. The method of claim 1 , wherein each of the plurality of software packages includes at least one of a software application, a virtual desktop, and an add-on.

4. The method of claim 3 , wherein the software application comprises at least one of: a document processing software application, a spreadsheet software application, an email exchange software application, an Internet browser software application, and a media player software application.

5. The method of claim 3 , wherein the virtual desktop comprises an operating system shell.

6. The method of claim 1 , wherein the portable platform is installed on at least one of a portable memory device, and a portable storage device.

7. The method of claim 1 , wherein the portable platform is downloaded from a web site.

8. The method of claim 1 , wherein executing the plurality software of packages comprising:

initializing the VOS;

for each software package, uploading, on-demand, registry files, services and executable files of the software package to the computing device; and

running the executable files of the software package in a user-mode of the operating system.

9. The method of claim 8 , further being capable of coupling between at least two software packages at run-time.

10. The method of claim 1 , wherein the computing device comprises at least one of a personal computer, a personal digital assistant, a handheld computer, a notebook computer, and a networked device.

11. The method of claim 1 , wherein executing the software applications in a virtual environment comprising :

executing the software applications without installing the software applications on the computing device.

12. A non-transitory computer program product including a computer-readable medium comprising software instructions operable to enable a computer to perform a method for executing software applications on a computing device in a virtual environment, comprising:

providing a portable platform that includes at least a virtual operating system (VOS) and a plurality of software packages; and

executing the plurality of software packages on the computing device using the VOS, wherein the VOS comprises:

a virtual file system (VFS) for interfacing between an operating system (OS) running on the computing device and the VOS;

a single file system for translating a set of file system commands of the computing device to a set of commands to be executed by the portable platform;

a virtual service manager (VSCM) for generating a virtual environment for the execution of services requested by the software packages;

a virtual registry file manager (VRFM) for handling registry file requests; and

a virtual digital rights management (VDRM).

13. The non-transitory computer program product of claim 12 , wherein the portable platform further comprises:

setting files associated with the plurality of software packages; and

data files for maintaining information saved by a user.

14. The non-transitory computer program product of claim 12 , wherein each of the plurality of software packages includes at least one of a software application, a virtual desktop, and an add-on.

15. The non-transitory computer program product of claim 14 , wherein the software application comprises at least one of: a document processing software application, a spreadsheet software application, an email exchange software application, an Internet browser software application, and a media player software application.

16. The non-transitory computer program product of claim 14 , wherein the virtual desktop comprises an operating system shell.

17. The non-transitory computer program product of claim 16 , wherein the portable platform is installed on at least one of a portable memory device, a portable storage device.

18. The non-transitory computer program product of claim 12 , wherein the portable platform is downloaded from a web site.

19. The non-transitory computer program product of claim 12 , wherein executing the plurality software packages comprising :

initializing the VOS;

for each software package, uploading, on-demand, registry files, services and executable files of the software package to the computing device; and

running the executable files of the software package in a user-mode of the operating system.

20. The non-transitory computer program product of claim 19 , further being capable of coupling between at least two software packages at run-time.

21. The non-transitory computer program product of claim 12 , wherein the computing device comprises at least one of: a personal computer, a personal digital assistant, a handheld computer, a notebook computer, and a networked device.

22. The non-transitory computer program product of claim 12 , wherein executing the software applications in a virtual environment comprising:

executing the software applications without installing the software applications on the computing device.

23. A portable platform includes a storage media for allowing the execution of a plurality of software applications on a computing device in a virtual environment, the portable platform comprising:

a plurality of software packages; and

a virtual operating system (VOS) for enabling the execution of the software applications on a computing device, wherein the VOS comprises:

a virtual file system (VFS) for interfacing between an operating system (OS) running on the computing device and the VOS;

a single file system for translating a set of file system commands of the computing device to a set of commands to be executed by the portable platform;

a virtual service manager (VSCM) for generating a virtual environment for the execution of services requested by the software packages;

a virtual registry file manager (VRFM) for handling registry file requests; and

a virtual digital rights management (VDRM).

24. The portable platform of claim 23 , further comprising:

setting files associated with the software packages; and

data files for maintaining information saved by a user.

25. The portable platform of claim 23 , being installed on at least one of a portable memory device, a portable storage device.

26. The portable platform of claim 23 , wherein each of the plurality of software packages includes at least one of a software application, a virtual desktop, and an add-on.

27. The portable platform of claim 23 , wherein the portable platform is downloaded from a web site.

28. The portable platform of claim 23 , wherein executing the plurality software packages comprising:

initializing the VOS;

for each software package, uploading, on-demand, registry files, services and executable files of the software package to the computing device; and

running the executable files of the software package in a user-mode of the operating system.

29. The portable platform of claim 28 , further being capable of coupling between at least two software packages at run-time.

30. The portable platform of claim 23 , wherein the computing device comprises at least one of:

a personal computer, a personal digital assistant, a handheld computer, a notebook computer, and a networked device.

31. The portable platform of claim 23 , wherein executing the software applications in a virtual environment comprising:

executing the software applications without installing the software applications on the computing device.

Assignments (5)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064271/0199 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 21, 2015
From: WATCHDOX LTD
To: BLACKBERRY LIMITED
Reel/Frame 037342/0257 →
NUNC PRO TUNC ASSIGNMENT Recorded Apr 27, 2015
From: INSTALL FREE, INC.
To: WATCHDOX LTD.
Reel/Frame 035503/0797 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 6, 2007
From: SHLOMAI, NETZER
To: INSTALLFREE, INC.
Reel/Frame 019128/0870 →
Continuity (2)
Provisional Application 60744598 · Apr 11, 2006
Related Publication 20070240155A1 · Oct 11, 2007