Managing compressed ROM image code

    公开(公告)号:GB2319865B

    公开(公告)日:2001-06-06

    申请号:GB9720316

    申请日:1997-09-25

    Applicant: IBM

    Abstract: A system and method for compressing portions of the operating system in a ROM image and for executing the system from the compressed image. Compression is used to reduce the size of the ROM image to reduce component cost. Low use segments are compressed. The operating system is initialized into a virtual address space with entries only for the uncompressed segments. Attempts to execute a compressed segment result in a page fault. The page fault handler determines that the segment is compressed, allocates a new page and decompresses the page into RAM for execution. The RAM copy of the segment is used for execution until the page is reused for another purpose. Later execution causes a new page fault and reallocation. A memory object reference is created for components of the image; a virtual memory page reference is then made for each component not in a compressed form; instructions are then executed by reference to the image; a page fault is detected when attempting to execute an instruction in a component not having a page table reference; a compressed image is then decompressed into the random access memory in response to the page fault.

    Managing partially compressed ROM image code

    公开(公告)号:GB2319865A

    公开(公告)日:1998-06-03

    申请号:GB9720316

    申请日:1997-09-25

    Applicant: IBM

    Abstract: In an embedded microprocessor based computer system, compressed portions of a ROM image are decompressed only when accessed. A ROM image is built such that low use segments of the operating system are compressed (figs. 3 and 4). The operating system is initialised into a virtual address space with page table entries only for the uncompressed segments (figs. 6-8). An attempt to execute a compressed segment, 902, results in a page fault, 908. A page fault handler determines that the segment is compressed, 912, allocates a new page and decompresses the page into RAM 916, 918 for execution 906. The RAM copy of the segment is used for execution until the page is reused for another purpose, whereby later execution will cause a new page fault and reallocation. Compression reduces the size of the ROM image and since the entire image does not need to be expanded into RAM for execution, the overall component cost is reduced.

Patent Agency Ranking