This is an old revision of the document!
===== Week 10 [ Mon 26 Jul 2010 - Sun 2 Aug 2010 ] ===== ==== Day 1 [ Mon 26 Jul 2010 ] ==== Git commit: [[http://git.etherboot.org/?p=people/andreif/gpxe.git;a=commit;h=93c8394c0661f480146509f8d5c19b8a8a4289d4|93c8394c0661f480146509f8d5c19b8a8a4289d4]] I spent most of my time today thinking of the design of a decoder "class" that would decompress a compressed image and leave an uncompressed one unchanged. The first problem is whether or not the image is compressed. Stefan told me that he does not think any other image format besides multiboot is usually compressed, so a natural thing to do would be to tie the decompression code to multiboot.c. However, we can have a more generic approach using the decoder class. If this is done right, everything could be compressed, including .gpxe scripts. I know they are small as it is but nevertheless it's a fun idea :) To determine if an image is compressed the first thing one has to look for is the file extension. Secondly, most containers have a magic number in the beginning of their headers that uniquely identifies them. The second issue is the compression method. I would like the implementation not to be tied to a specific format, even though gzip's deflate appears to be the de facto standard. I've yet to create a proper implementation for all of this. The code in the above commit is mostly me scribbling while thinking.