Messages in this thread | | | Date | Fri, 29 May 1998 18:01:37 +0200 (CEST) | From | Geert Uytterhoeven <> | Subject | Re: bzip2 compression of kernel or initial ramdisk? |
| |
On Fri, 29 May 1998, Adam J. Richter wrote: > I am not sure what is meant by "gzip can be used in place."
With gzip, you can malloc a piece of memory the size of the uncompressed image and load the compressed image there. You don't need to do malloc(uncompressed_size) and malloc(compressed_size).
> It appears that a bzip2'ed initial ramdisk and kernel would > probably be worth doing for many circumstances, but, as measured by > boot floppy kilobytes saved per programmer hour invested, it will > probably be more effective to exhaust the following avenues first: > > 1. recheck for kernel options that are not useful in a fully > modularized configuration > 2. modularize the few remaining drivers that do not need to > be on an initial boot floppy, > 3. attempt to reduce module duplication between the main > kernel distribution and the PCMCIA drivers, > 4. more carefully strip kernels from module .o files and > the pruned shared glibc built into the ramdisk, > 5. investigate getting better compression by extending the > window sizes in gzip beyond what gzip -9 provides. This > will probably require using a different format change > changes some 16 bit numbers to 24 or 32 bit numbers. > 6. combine some duplicative code within the kernel image, probably > starting with multiple copies of the decompression code.
7. Write a GPLed implementation of Open Firmware (IEEE P1275) that fits in 640 KB [1] and switches the CPU to `32-bit' [2] mode. Then you have a real powerful boot monitor and are no longer plagued by the stupid 640 KB limit that's so characteristic for the ia32 flavor of Linux. And LILO becomes a simple portable FORTH script :-)
[1] Can't be a problem. The OF in my PPC easily fits in a 512 KB Flash ROM. [2] I always forget whether it's called `real' or `protected' mode. IMHO real life is 32 or 64 bit flat :-)
Greetings,
Geert
-- Geert Uytterhoeven Geert.Uytterhoeven@cs.kuleuven.ac.be Wavelets, Linux/{m68k~Amiga,PPC~CHRP} http://www.cs.kuleuven.ac.be/~geert/ Department of Computer Science -- Katholieke Universiteit Leuven -- Belgium
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu
| |