1. An apparatus for generating a virtual file system using first data from a first read-only storage medium and second data from a second non-transitory storage medium, wherein the first storage medium comprises a plurality of titles, and a title encompasses at least one movie object or Java object, wherein a movie object describes a video scene, subtitle stream or graphic animation stream and wherein a Java object describes a Java executable that is suitable for running on a Java Virtual Machine and comprises an Application Management Table that points to a Java archive file, the apparatus comprising: means for determining from the first read-only storage medium a first identifier; means for selecting a title from said plurality of titles; and means for determining, upon said selecting a title, that on the second storage medium, in a first directory according to said first identifier, one or more files related to the selected title and the first identifier are available and authorized, means for compiling a virtual file system that comprises files from the first read-only storage medium and from the second storage medium only said files related to the selected title and the first identifier, wherein said means for determining that a file is authorized comprises means for retrieving from the first or the second storage medium a signature of the file, means for decrypting the retrieved signature using a public key of an asymmetric encryption method, and means for verifying that the file is authorized if it is not an Audio-Video stream file, wherein said decrypted signature is used, and wherein said Java executable file when running on the Java Virtual Machine creates or writes new files under the first directory, wherein the first read-only storage medium is a removable medium, and wherein the virtual file system is maintained only as long as the removable read-only storage medium is accessible, and wherein the virtual file system is removed if the removable read-only storage medium is not accessible.