Method and apparatus for automatically optimizing execution of a computer program
AssigneeSun Microsystems, Inc.
InventorsGreg White, Su Chan, Achut Reddy
Life of this patent
Estimating the term…
Abstract
The claimed invention can be used to automatically determine what files are needed to optimally execute a computer program to a desired state. In one embodiment the invention automatically creates an optimized file containing the files that are necessary to reach the desired state of a computer program. One or more remainder files may also be created. A remainder file contains the files that may be used by the computer program after reaching the desired state of execution.
Claims20
A method for automatically optimizing execution of a computer program comprising:
- obtaining a computer program having a plurality of files;
- determining a subset of files associated with said plurality of files wherein said subject comprises files used to attain a desired state comprising a point of execution at which said computer program can accept user input;
- retrieving said subset;
- creating an optimized file comprising said subset of files;
- storing aid optimized file in a first computer;
- forwarding said optimized file to a second computer, wherein said optimized file initiates said computer program;
- creating a remainder file comprising at least one file from said plurality of files, wherein said remainder file comprises a plurality of files substantially used by said computer program subsequent to said desired state;
- storing said remainder file in said first computer;
- and
- forwarding said remainder file to said second computer after said forwarding said optimized file from said first computer to said second computer.
A device for automatically optimizing execution of a computer program comprising:
- a means for obtaining a computer program having a plurality of files;
- a means for retrieving a subset of files from said plurality of files used to attain a desired state, wherein said desired state comprises a point of execution at which said computer program can accept user input;
- a means for creating an optimized file comprising said subset of files;
- a means for storing said optimized file in a first computer;
- a means for forwarding said optimized file to a second computer, wherein said optimized file initiates said computer program;
- a means for creating a remainder file comprising at least one file from said plurality of files used by said computer program after said desired state;
- a means for storing said remainder file in said first computer;
- a means for forwarding said remainder file to said second computer after said optimized file is sent from said first computer to said second computer.
A method for determining a subset of files associated with a computer program needed to obtain a desired state comprising:
- obtaining a computer having a plurality of distinct files;
- identifying at least one subset of said plurality of files that allows said computer program to reach a point of execution at which said computer program can accept user input;
- grouping said least one subset into a category of files;
- generating a list of said least one subset contained in said category of files;
- generating an intermediate file containing said plurality of distinct files.
An apparatus comprising:
- a processor;
- a memory coupled to said processor;
- a computer program having a plurality of files stored in said memory;
- a process executed on said processor, said process configured to:
- obtain a computer program having a plurality of files;
- identify a subset of said plurality of files that allows said computer program to reach a point of execution at which said computer program can accept user input;
- generate a list of files contained in said subset;
- and
- generate an intermediate file containing said subset.
An apparatus comprising:
- a processor;
- a memory coupled to said processor;
- a computer program having a plurality of files stored in said memory;
- a process executed on said processor, said process configured to:
- obtain an intermediate file;
- analyze said intermediate file to determine a set of classfiles in said intermediate file, wherein said set of classfiles enables said computer program to attain a desired state;
- compress a first subset of classfiles from said set of classfiles in said intermediate file;
- create a digital signature associated with a second subset of classfiles from said set of classfiles in said intermediate file;
- provide said set of classfiles to an optimized file;
- and
- output said optimized file to a storage medium.
A method for isolating a portion of files in a computer program used to attain a desired state, said computer product comprising:
- obtaining an intermediate file;
- analyzing said intermediate file to determine a set of classfiles in said intermediate file used to enable a computer program to attain a desired state;
- compressing a first subset of classfiles from said set of classfiles in said intermediate files;
- creating a digital signature associated with said first subset of classfiles from said set of classfiles in said intermediate file;
- providing said set of classfiles to an optimized file;
- and
- outputting said optimized file to a storage medium.
Dependencies are inferred from the claim text.