Methods and apparatus for optimizing installation location of software
AssigneeAdobe Systems Incorporated
InventorsEdward R. Rowe, Brent E. Rosenquist, David G. Sawyer, Dylan Ashe
Life of this patent
Estimating the term…
Abstract
A system installs an application by identifying a file set indicating files accessed during operation of the application. The system identifies a set of available storage areas that are accessible to a computerized device, and that are capable of storing files in the file set. The system identifies a performance metric associated with each of the storage areas in the set of available storage areas, and positions files from the file set into at least one storage area of the set of available storage areas. The files are positioned based on the performance metrics associated with the one storage area.
Claims31
A method of installing an application for access by a computerized device, the computer-implemented method comprising:
- identifying a file set comprised of files accessed during operation of the application, wherein identifying the file set includes identifying a plurality of associated files that are accessed by the application during startup of the application, wherein identifying the plurality of associated files includes accessing a list of files, the list of files indicating an order of file access during execution of the application, the list of files having been previously generated by a list generation process that installed and executed the application on a first computerized device, monitored an execution of the application on the first computerized device, recorded a plurality of file identities that are accessed during the execution of the application on the first computerized device, and sorted the plurality of file identities in order of access during the execution of the application on the first computerized device;
- identifying a set of available storage areas, accessible a second computerized device, the set of available storage areas having sufficient capacity for storing files in the file set;
- identifying a performance metric associated with storage areas in the set of available storage areas;
- identifying the performance metric including measuring a speed of each available storage area by writing given files as data files, reading the given files as image files, and measuring a time needed to perform each read;
- and
- positioning files from the file set into at least one storage area of the set of available storage areas based on the performance metric associated with the storage areas in the set of available storage areas.
A computerized device comprising:
- a memory;
- a processor;
- a communications interface;
- an interconnection mechanism coupling the memory, the processor and the communications interface;
- wherein the memory is encoded with an installation application that when executed on the processor installs an application on the computerized device by performing the operations of:
- identifying a file set comprised of files accessed during operation of the application, wherein identifying the file set includes identifying a plurality of associated files that are accessed by the application during startup of the application, wherein identifying the plurality of associated files includes accessing a list of files, the list of files indicating an order of file access during execution of the application, the list of files having been previously generated by a list generation process that installed and executed the application on a first computerized device, monitored an execution of the application on the first computerized device, recorded a plurality of file identities that are accessed during the execution of the application on the first computerized device, and sorted the plurality of file identities in order of access during the execution of the application on the first computerized device;
- identifying a set of available storage areas, accessible to a second computerized device, the set of available storage areas having sufficient capacity for storing files in the file set;
- identifying a performance metric associated with storage areas in the set of available storage areas, identifying the performance metric including measuring a speed of each available storage area by writing given files as data files, reading the given files as image files, and measuring a time needed to perform each read;
- and
- positioning files from the file set into at least one storage area of the set of available storage areas based on the performance metric associated with the storage areas in the set of available storage area.
A non-transitory computer readable medium encoded with computer programming logic that when executed on a process in a computerized device produces an installation process that performs an installation by causing the computerized device to perform the operations of:
- identifying a file set comprised of files accessed during operation of the application, wherein identifying the file set includes identifying a plurality of associated files that are accessed by the application during startup of the application, wherein identifying the plurality of associated files includes accessing a list of files, the list of files indicating an order of file access during execution of the application, the list of files having been previously generated by a list generation process that installed and executed the application on a first computerized device, monitored an execution of the application on the first computerized device, recorded a plurality of file identities that are accessed during the execution of the application on the first computerized device, and sorted the plurality of file identities in order of access during the execution of the application on the first computerized device;
- identifying a set of available storage areas, accessible to a second computerized device, the set of available storage areas having sufficient capacity for storing files in the file set;
- identifying a performance metric associated with storage areas in the set of available storage areas, identifying the performance metric including measuring a speed of each available storage area by writing given files as data files, reading the given files as image files, and measuring a time needed to perform each read;
- and
- positioning files from the file set into at least one storage area of the set of available storage areas based on the performance metric associated with the storage areas in the set of available storage areas.
A computerized device comprising:
- a memory;
- a processor;
- a communications interface;
- an interconnection mechanism coupling the memory, the processor and the communications interface;
- where the memory is encoded with an installation application that when executed on the processor configures the computerized device with a means for installing an application, the means including:
- means for identifying a file set comprised of files accessed during operation of the application, wherein means for identifying the file set includes identifying a plurality of associated files that are accessed by the application during startup of the application, wherein identifying the plurality of associated files includes accessing a list of files, the list of files indicating an order of file access during execution of the application, the list of files having been previously generated by a list generation process that installed and executed the application on a first computerized device, monitored an execution of the application on the first computerized device, recorded a plurality of file identities that are accessed during the execution of the application on the first computerized device, and sorted the plurality of file identities in order of access during the execution of the application on the first computerized device;
- means for identifying a set of available storage areas, accessible to a second computerized device, the set of available storage areas having sufficient capacity for storing files in the file set;
- means for identifying a performance metric associated with storage areas in the set of available storage areas, identifying the performance metric including measuring a speed of each available storage area by writing given files as data files, reading the given files as image files, and measuring a time needed to perform each read;
- and
- means for positioning files from the file set into at least one storage area of the set of available storage areas based on the performance metric associated with the storage areas in the set of available storage areas.
Dependencies are inferred from the claim text.