I ranted about this on irc, and have it implemented already:
While waiting for Igor Pavlov (LZMA author) to create a C version of his encoder, I figure'd it'd be a good idea to go ahead and include the LZMA decoder *only* in the JFFS2 fs driver and the LMZA encoder in the mkfs.jffs2 utility. Why? By doiing this, all pre-included files have the option of being compressed with LZMA! Immediate boost in compression ratio of JFFS2 partition is around 10%. LZMA encoding will not yet be available for real-time changes to the filesystem, but it will be ready when the C encoder is finished. The size difference seems to be about 10%, if there are no mistakes in my early tests. The difference would be greater, if not for the 4Kb block size, which greatly inhibits compression performance. This is the biggest reason there is such a disparity between squashfs and lzma. I suppose this would also allow for the possibility of a user space tool to go and recompress post-install changes with LZMA... but this is another subject, and likely it's best just to wiat for the C encoder of LZMA. Like I said, I've already finished the code, but need to test it more thoroughly (to avoid mistakes like my last one), and port it to FreeWrt. As neat as this is, my larger opinion is that few should ever use the JFFS2 filesystem only. Most peope are much better off using squashfs with pre-included packages and an overlaid JFFS2 file-system. -- Jeremy Collake Bitsum Technologies www.bitsum.com _______________________________________________ freewrt-developers mailing list [email protected] https://www.freewrt.org/lists/listinfo/freewrt-developers
