Methods and devices for reducing compressed page loading time on page fault
AssigneeTelefonaktiebolaget LM Ericsson (publ)
InventorsVijaya Kumar Kilari, Saugata Das Purkayastha
Life of this patent
Estimating the term…
Abstract
Exemplary embodiments provide for compressing, storing, retrieving and decompressing paged code from mass storage devices. By evaluating the size of compressed virtual pages relative to the storage page (read unit) of the mass storage device into which the compressed virtual pages are to be stored, decisions can be made which facilitate later read out and decompression of those compressed virtual pages. According to exemplary embodiments, a virtual page can be stored uncompressed, compressed but undivided or compressed and subdivided into a plurality of parts based on an evaluation.
Claims16
A method for storing a plurality of virtual pages in a mass storage device, the method comprising:
- compressing each virtual page to generate a corresponding compressed virtual page having a corresponding compressed size;
- evaluating said compressed size of each of said compressed virtual pages relative to a page size of said mass storage device;
- and
- selectively storing each of the plurality of virtual pages in said mass storage device uncompressed, compressed but without subdividing, or subdivided with compressed subparts, in a manner that is based on at least one of:
- an uncompressed size of the respective virtual page and said compressed size of the respective virtual page, selected based on said evaluating,
- wherein, for each one of the plurality of virtual pages that is stored in said mass storage device subdivided with compressed subparts, said storing comprises:
- concluding that said compressed size of the one of the plurality of virtual pages will not fit within one page of said mass storage device;
- in response to said concluding, dividing the one of the plurality of virtual pages into a plurality of subdivided uncompressed parts of the one of the plurality of virtual pages;
- independently performing said compressing, said evaluating, and said selectively storing for each of said plurality of subdivided uncompressed parts of the one of the plurality of virtual pages.
An electronic device comprising:
- a first memory interface configured to connect at least one mass storage device, a second memory interface configured to connect at least one random access memory (RAM);
- a processor configured to execute a memory management function, the memory management function comprising storing a plurality of virtual pages into the at least one mass storage device when said at least one mass storage device is connected to the first memory interface,
- wherein said memory management function is configured to:
- compress each virtual page to generate a corresponding compressed virtual page having a corresponding compressed size;
- evaluate said compressed size of each of said compressed virtual pages relative to a page size of said mass storage device;
- and
- selectively store each of the plurality of virtual pages in said mass storage device uncompressed, compressed but without subdividing, or subdivided with compressed subparts, in a manner that is based on at least one of:
- an uncompressed size of the respective virtual page and said compressed size of the respective virtual page, selected based on said evaluating,
- wherein, for each one of the plurality of virtual pages that is stored in said mass storage device subdivided with compressed subparts, said storing comprises:
- concluding that said compressed size of the one of the plurality of virtual pages will not fit within one page of said mass storage device;
- in response to said concluding, dividing the one of the plurality of virtual pages into a plurality of subdivided uncompressed parts of the one of the plurality of virtual pages;
- independently performing said compressing, said evaluating, and said selectively storing for each of said plurality of subdivided uncompressed parts of the one of the plurality of virtual pages.
Dependencies are inferred from the claim text.