Blaauw,Bernd B.
2005-Jan-25 03:24 UTC
[syslinux] feature request: gzip support in syslinux itself
HPA, is it possible to add GZ support in syslinux itself? Some standalone software compresses very well, but is not compressed. Example is the Memtest86+ binary (90KB uncompressed --> 35KB gzip'd) and maybe Smart Boot Manager (gzip'd COM32 binary instead of normal COM32 binary?). I'm using both on a simple bootdisk, and all space savings are welcome. a workaround could ofcourse be to write each of them to a diskette, then read in the diskette (RAREAD, DISKCOPY, Linux dd, maybe RAWRITE), compress the imagefile, then load it using Memdisk which has (g)zip decompression support. other possibility would be to create an intermediate loader (let's call it 'ungzip') which would decompress the GZ and then let the decompressed binary ('kernel') take control. Similar to memdisk thus, but not for disk images. kernel ungzip append gzipfile=memtest.gz Does this make sense? Bernd ---------------------------------------------------------------- Op deze e-mail zijn de volgende voorwaarden van toepassing: http://www.fontys.nl/disclaimer The above disclaimer applies to this e-mail message. ----------------------------------------------------------------
H. Peter Anvin
2005-Jan-25 07:07 UTC
[syslinux] feature request: gzip support in syslinux itself
Blaauw,Bernd B. wrote:> HPA, > > is it possible to add GZ support in syslinux itself? > Some standalone software compresses very well, but is not compressed. > > Example is the Memtest86+ binary (90KB uncompressed --> 35KB gzip'd) and maybe Smart Boot Manager (gzip'd COM32 binary instead of normal COM32 binary?). > I'm using both on a simple bootdisk, and all space savings are welcome. > > a workaround could ofcourse be to write each of them to a diskette, then read in the diskette (RAREAD, DISKCOPY, Linux dd, maybe RAWRITE), compress the imagefile, then load it using Memdisk which has (g)zip decompression support. > > other possibility would be to create an intermediate loader (let's call it 'ungzip') which would decompress the GZ and then let the decompressed binary ('kernel') take control. Similar to memdisk thus, but not for disk images. > > kernel ungzip > append gzipfile=memtest.gz >The intermediate loader would be possible; in fact, with the new "shuffle and boot" API currently under development, and with zlib now integrated in com32, it shouldn't be difficult to do at all. Doing it in syslinux itself is not really practical, however; syslinux is *extremely* space-constrained, and I can't really see myself doing a gunzip implementation in assembly. -hpa