Transparent loading of resources from read-only memory for an application program
First Claim
1. A computer program product embodied on a computer-readable medium readable by a computer in a computing environment, for transparently loading resources from a read-only memory (“
- ROM”
) of said computer, comprising;
a plurality of resource files stored in said ROM;
computer-readable program code means for executing a Java Virtual Machine (“
JVM”
) on said computer;
computer-readable program code means for executing an application program on said JVM;
computer-readable program code means for executing a ROM class loader on said JVM, said ROM class loader being adapted to loading said resource files from said ROM;
computer-readable program code means for creating a table comprising an entry for each of said resource files;
computer-readable program code means for receiving, by said ROM class loader, a request from said application program for an input stream on a selected one of said resource files;
computer-readable program code means for using said table to locate said selected resource file in said ROM; and
computer-readable program code means for returning said input stream using said located resource.
1 Assignment
0 Petitions
Accused Products
Abstract
A method, system, and computer program product for transparently loading resources (such as stored bitmaps, images, fonts, and sound files) from read-only memory (“ROM”) for an application program executing on a Java Virtual Machine (“JVM”). Typically, the invention will be used on an embedded computing device which has no disk storage and no file system software. A novel class loader is described, which loads resources from ROM and returns an input stream object as is expected by the existing application program. Therefore, when using the present invention, no change is required to existing application code to use resources stored in ROM. (In addition, no change to existing applications is required in order to invoke the code of the present invention.) The invention may be used with programs written in the Java programming language, or with programs written in other languages that execute on a JVM.
72 Citations
12 Claims
-
1. A computer program product embodied on a computer-readable medium readable by a computer in a computing environment, for transparently loading resources from a read-only memory (“
- ROM”
) of said computer, comprising;a plurality of resource files stored in said ROM;
computer-readable program code means for executing a Java Virtual Machine (“
JVM”
) on said computer;
computer-readable program code means for executing an application program on said JVM;
computer-readable program code means for executing a ROM class loader on said JVM, said ROM class loader being adapted to loading said resource files from said ROM;
computer-readable program code means for creating a table comprising an entry for each of said resource files;
computer-readable program code means for receiving, by said ROM class loader, a request from said application program for an input stream on a selected one of said resource files;
computer-readable program code means for using said table to locate said selected resource file in said ROM; and
computer-readable program code means for returning said input stream using said located resource. - View Dependent Claims (2, 3, 4)
a key value corresponding to an identifier of a particular one of said resource files;
a location of said particular resource file in said ROM; and
a length of data stored at said location for said particular resource file; and
wherein said computer-readable program code means for using said table further comprises;
computer-readable program code means for accessing said table using an identifier of said particular resource file as a key; and
computer-readable program code means for returning said location and said length of said particular resource file when a matching entry is found in said table by said computer-readable program code means for accessing.
- ROM”
-
3. The computer program product for transparently loading resources according to claim 1, further comprising computer-readable program code means for configuring said JVM to use said ROM class loader.
-
4. The computer program product for transparently loading resources according to claim 1, wherein said request is unchanged from a pre-existing request syntax specified in said application program.
-
5. A system in a computing environment for transparently loading resources from a read-only memory (“
- ROM”
) of a computer in said computing environment, comprising;a plurality of resoutce files stored in said ROM;
means of executing a Java Virtual Machine(“
JVM”
)on said computer;
means for executing an application program on said JVM;
means for executing a ROM class loader on said JVM, said ROM class loader being adapted to loading said resource files from said ROM;
means for creating a table comprising an entry for each of said resource files;
means for receiving, by said ROM class loader, a request from said application program for an input stream on a selected one of said resource files;
means for using said table to locate said selected resource file in said ROM; and
means for returning said input stream using said located resource. - View Dependent Claims (6, 7, 8)
a key value corresponding to an identifier of a particular one of said resource files;
a location of said particular resource file in said ROM; and
a length of data stored at said location for said particular resource file; and
wherein said means for using said table further comprises;
means for accessing said table using an identifier of said particular resource file as a key; and
means for returning said location and said length of said particular resource file when a matching entry is found in said table by said means for accessing.
- ROM”
-
7. The system for transparently loading resources according to claim 5, further comprising means for configuring said JVM to use said ROM class loader.
-
8. The system for transparently loading resources according to claim 5, wherein said request is unchanged from a pre-existing request syntax specified in said application program.
-
9. A method for transparently loading resources from a read-only memory (“
- ROM”
) of a computer in a computing environment, comprising the steps of;storing a plurality of resource files in said ROM;
executing a Java Virtual Machine (“
JVM”
) on said computer;
executing an application program on said JVM;
executing a ROM class loader on said JVM, said ROM class loader being adapted to loading said resource files from said ROM;
creating a table comprising an entry for each of said resource files;
receiving, by said ROM class loader, a request from said application program for an input stream on a selected one of said resource files;
using said table to locate said selected resource file in said ROM; and
returning said input stream using said located resource. - View Dependent Claims (10, 11, 12)
a key value corresponding to an identifier of a particular one of said resource files;
a location of said particular resource file in said ROM; and
a length of data stored at said location for said particular resource file; and
wherein said using said table step further comprises the steps of;
accessing said table using an identifier of said particular resource file as a key; and
returning said location and said length of said particular resource file when a matching entry is found in said table by said accessing step.
- ROM”
-
11. The method for transparently loading resources according to claim 9, further comprising the step of configuring said JVM to use said ROM class loader.
-
12. The method for transparently loading resources according to claim 9, wherein said request is unchanged from a pre-existing request syntax specified in said application program.
Specification