Legal claims defining the scope of protection, as filed with the USPTO.
1. A method comprising: at a host system that is operatively coupled to a portable storage device, performing: receiving a plurality of file system commands issued by an installer application at the host system; hiding a drive identifier associated with a first file system located at a fixed storage memory device of the host system; removing a directory of the first file system from a list of available directories; preventing write access to the first file system during a copy operation, wherein the plurality of file system commands includes a plurality of application programming interface (API) commands, wherein during installation of a portable application to the portable storage device, at least one of the plurality of API commands is selectively intercepted and modified such that the installer application has write access to a second file system but does not have write access to the first file system, and wherein a set of rules is used to determine whether to selectively intercept and modify parameters of the API commands before the API commands are executed with respect to a destination file system; and selectively intercepting and modifying at least one file system command of the plurality of file system commands before the at least one file system command is executed with respect to the destination file system when the destination file system is the first file system, such that access is directed to the second file system located at the portable storage device.
2. The method of claim 1 , wherein the portable storage device is a flash memory device having a universal serial bus (USB) interface.
3. The method of claim 1 , wherein the directory is removed from the list of available directories by modifying an operating system parameter of a find file command.
4. The method of claim 1 , wherein the write access to the first file system is prevented during the copy operation by intercepting a copy file command and by changing a target directory of the copy file command such that the target directory is located within the second file system instead of within the first file system.
5. The method of claim 1 , wherein the at least one of the plurality of API commands is selected from a create file command, an open file command, and a copy file command and wherein the destination file system is identified by a file system path name.
6. The method of claim 5 , wherein the drive identifier is hidden by modifying a return value and at least one parameter of the at least one file system command upon identifying a particular destination directory or a translation of the particular destination directory.
7. The method of claim 1 , further comprising retrieving at least one previously executed API command from an API call history database and evaluating the set of rules based on the at least one previously executed API command.
8. The method of claim 7 , wherein the at least one previously executed API command is a command to retrieve a file name from a user.
9. The method of claim 7 , wherein the set of rules includes heuristic patterns.
10. The method of claim 9 , wherein, based on the heuristic patterns and the set of rules, further comprising removing restrictions on access to available file systems in order to allow an installed application to function correctly when executed at the host system or to allow the installer application to access resources.
11. The method of claim 10 , wherein the resources are accessed from the first file system.
12. The method of claim 1 , further comprising executing the modified API command at an operating system program to perform a file system operation with respect to the second file system.
13. The method of claim 12 , wherein the file system operation is a write command to perform an installation of the installer application onto the portable storage device.
14. A method comprising: at a host system that is operatively coupled to a portable storage device, performing: receiving a request to install an application on the portable storage device; executing an installer program at the host system, the installer program issuing a file system command to write one or more executable files for the application to a first file system at a first storage device; removing a directory of the first file system from a list of available directories; preventing write access to the first file system during a copy operation, wherein the file system command includes an application programming interface (API) command, wherein during installation of a portable application to the portable storage device, the API command is selectively intercepted and modified such that the installer application has write access to a second file system but does not have write access to the first file system, and wherein a set of rules is used to determine whether to selectively intercept and modify parameters of the API command before the API command is executed with respect to a destination file system; and intercepting the file system command and modifying the file system command to write the one or more executable files for the application to the second file system at the portable storage device.
15. The method of claim 14 , further comprising writing information associated with the application to a data storage area at the portable storage device.
16. The method of claim 14 , further comprising identifying the presence of the application stored at the portable storage device to an auto-run application stored at the portable storage device.
17. The method of claim 14 , wherein the application is a portable application suitable for execution on a second host device when the second host device is coupled to the portable storage device.
18. The method of claim 14 , wherein the first file system is a default file system identified by the host system and wherein the first storage device is a disk drive attached to the host system.
19. The method of claim 14 , wherein the portable storage device comprises a universal serial bus (USB) flash memory device, and wherein the host system comprises a computer.
20. A host system comprising: an interface configured to communicate with a removable data storage device; an installer application configured to issue a plurality of file system commands; a fixed data storage device; and a processor, wherein, with the processor, the host system is configured to selectively intercept and modify parameters of a file system command of the plurality of file system commands issued by the installer application before the file system command is executed with respect to a target file system on the fixed data storage device; wherein the host system is further configured to selectively remove a directory of a first file system from a list of available directories located on the fixed data storage device; wherein the host system is further configured to selectively direct access to a second file system to enable the installer application to access the second file system; and wherein the host system is further configured to prevent write access to the first file system during a copy operation, wherein the plurality of file system commands includes a plurality of application programming interface (API) commands, wherein during installation of a portable application to the removable data storage device, at least one of the plurality of API commands is selectively intercepted and modified such that the installer application has write access to the second file system but does not have write access to the first file system, and wherein a set of rules is used to determine whether to selectively intercept and modify parameters of the API commands before the API commands are executed with respect to a destination file system.
21. The host system of claim 20 , wherein the target file system is identified by a target file system path name.
22. The host system of claim 21 , wherein the host system is further configured to evaluate the target file system path name.
23. The host system of claim 20 , wherein the fixed data storage device is a flash memory, and wherein the interface is a universal serial bus (USB) interface.
24. The host system of claim 20 , wherein the API commands are selected from a create file command, an open file command, a copy file command, a directory content enumeration command, and a drive enumeration command.
25. The host system of claim 20 , wherein the host system is configured to perform a set of file system restrictive actions including hiding a drive identifier associated with the first file system.
26. The host system of claim 25 , wherein the drive identifier is hidden by modifying a return value and parameters of the file system command when the file system command includes a destination directory or a translation of the destination directory.
27. The host system of claim 26 , wherein the file system command is a find file command and wherein a directory is removed from a list of user available directories by modifying a parameter of the find file command.
28. The host system of claim 26 , wherein the file system command is a copy file command and wherein access to the first file system is prevented during the copy operation by changing a target directory of the copy file command such that the target directory is located within the second file system instead of the first file system.
29. The host system of claim 23 , further comprising an API call history database that stores at least one previously executed API command and further comprising a rule engine to evaluate a set of rules, wherein the rule engine evaluates the set of rules with respect to the at least one previously executed API command and wherein the rule engine provides an output that determines whether to selectively intercept and modify the API commands.
30. A portable data storage device comprising: an interface for connection to a host device; a storage area that includes a stored application installation redirection component, the application installation redirection component configured to: selectively modify parameters of at least one file system command during execution of an application installer before the at least one file system command is executed by an operating system; selectively direct access to a second file system associated with the portable data storage device; remove a directory of a first file system from a list of available directories, wherein the first file system is located at a fixed storage memory device of the host device; and prevent write access to the first file system in a copy operation, wherein the at least one file system command is an application programming interface (API) command, wherein during installation of a portable application to the portable storage device, the API command is selectively intercepted and modified such that the installer application has write access to the second file system but does not have write access to the first file system, and wherein a set of rules is used to determine whether to selectively intercept and modify parameters of the API command before the API command is executed with respect to a destination file system.
31. The portable data storage device of claim 30 ; wherein the application installation redirection component is configured to hide a drive identifier associated with the first file system and to prevent write access to the first file system during a copy operation.
Unknown
June 25, 2013
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.