X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=README;h=6b4b174d5f23742cc4b48a02817e5e18bb40e9f2;hp=95f990d9cf0d5a9e1c5f0ac811b8e58eade35b51;hb=94f8de6d411d58a0eb2e472cc1b984f195eb2447;hpb=db6646022cb5b94d566bdb1c3f5de6b10e6939d0 diff --git a/README b/README index 95f990d9..6b4b174d 100644 --- a/README +++ b/README @@ -1,6 +1,6 @@ INTRODUCTION -This is wimlib version 1.7.2-BETA (August 2014). wimlib is a C library for +This is wimlib version 1.7.4 (January 2015). wimlib is a C library for creating, modifying, extracting, and mounting files in the Windows Imaging Format (WIM files). wimlib and its command-line frontend 'wimlib-imagex' provide a free and cross-platform alternative to Microsoft's WIMGAPI, ImageX, @@ -78,18 +78,18 @@ create the file. When applicable, the results with the equivalent Microsoft implementation in WIMGAPI is included. ============================================================================= - | Compression || wimlib (v1.7.2-BETA) | WIMGAPI (Windows 8.1) | + | Compression || wimlib (v1.7.4) | WIMGAPI (Windows 8.1) | ============================================================================= - | None [1] || 361,404,682 in 3.4s | 361,364,994 in 4.2s | - | XPRESS [2] || 138,398,747 in 4.2s | 140,468,002 in 5.1s | - | XPRESS (slow) [3] || 135,284,950 in 10.3s | N/A | - | LZX (quick) [4] || 131,861,913 in 4.7s | N/A | - | LZX (normal) [5] || 126,855,247 in 14.9s | 127,301,774 in 18.2s | - | LZX (slow) [6] || 126,245,561 in 32.1s | N/A | - | LZMS (non-solid) [7] || 122,126,328 in 16.4s | N/A | - | LZMS (solid) [8] || 93,795,440 in 47.4s | 88,789,426 in 96.8s | - | "WIMBoot" [9] || 167,121,495 in 5.3s | 169,124,968 in 9.3s | - | "WIMBoot" (slow) [10] || 165,219,818 in 9.4s | N/A | + | None [1] || 361,314,224 in 2.4s | 361,315,338 in 4.5s | + | XPRESS [2] || 138,218,750 in 3.0s | 140,457,436 in 6.0s | + | XPRESS (slow) [3] || 135,173,511 in 8.9s | N/A | + | LZX (quick) [4] || 130,332,007 in 4.1s | N/A | + | LZX (normal) [5] || 126,714,807 in 12.5s | 127,293,240 in 19.2s | + | LZX (slow) [6] || 126,150,743 in 20.5s | N/A | + | LZMS (non-solid) [7] || 121,909,792 in 11.9s | N/A | + | LZMS (solid) [8] || 93,650,936 in 45.0s | 88,771,192 in 109.2 | + | "WIMBoot" [9] || 167,023,719 in 3.5s | 169,109,211 in 10.4s | + | "WIMBoot" (slow) [10] || 165,027,583 in 7.9s | N/A | ============================================================================= Notes: @@ -139,36 +139,39 @@ Testing environment: The compression ratio provided by wimlib is also competitive with commonly used archive formats. Below are file sizes that result when the Canterbury corpus is -compressed with wimlib (v1.7.0), WIMGAPI (Windows 8), and some other +compressed with wimlib (v1.7.2), WIMGAPI (Windows 8.1), and some other formats/programs: - ================================================= - | Format | Size (bytes) | - ================================================= - | tar | 2,826,240 | - | WIM (WIMGAPI, None) | 2,814,278 | - | WIM (wimlib, None) | 2,813,856 | - | WIM (WIMGAPI, XPRESS) | 825,410 | - | WIM (wimlib, XPRESS) | 792,024 | - | tar.gz (gzip, default) | 738,796 | - | ZIP (Info-ZIP, default) | 735,334 | - | tar.gz (gzip, -9) | 733,971 | - | ZIP (Info-ZIP, -9) | 732,297 | - | WIM (wimlib, LZX quick) | 722,196 | - | WIM (WIMGAPI, LZX) | 651,766 | - | WIM (wimlib, LZX normal) | 649,204 | - | WIM (wimlib, LZX slow) | 639,618 | - | WIM (wimlib, LZMS non-solid) | 592,136 | - | tar.bz2 (bzip, default) | 565,008 | - | tar.bz2 (bzip, -9) | 565,008 | - | WIM (wimlib, LZMS solid) | 525,270 | - | WIM (wimlib, LZMS solid, slow) | 521,700 | - | WIM (WIMGAPI, LZMS solid) | 521,232 | - | tar.xz (xz, default) | 486,916 | - | tar.xz (xz, -9) | 486,904 | - | 7z (7-zip, default) | 484,700 | - | 7z (7-zip, -9) | 483,239 | - ================================================= + ===================================================== + | Format | Size (bytes) | + ===================================================== + | tar | 2,826,240 | + | WIM (WIMGAPI, None) | 2,814,254 | + | WIM (wimlib, None) | 2,814,216 | + | WIM (WIMGAPI, XPRESS) | 825,536 | + | WIM (wimlib, XPRESS) | 790,016 | + | tar.gz (gzip, default) | 738,796 | + | ZIP (Info-ZIP, default) | 735,334 | + | tar.gz (gzip, -9) | 733,971 | + | ZIP (Info-ZIP, -9) | 732,297 | + | WIM (wimlib, LZX quick) | 704,006 | + | WIM (WIMGAPI, LZX) | 651,866 | + | WIM (wimlib, LZX normal) | 632,614 | + | WIM (wimlib, LZX slow) | 625,050 | + | WIM (wimlib, LZMS non-solid) | 581,960 | + | tar.bz2 (bzip, default) | 565,008 | + | tar.bz2 (bzip, -9) | 565,008 | + | WIM (wimlib, LZX solid) | 532,700 | + | WIM (wimlib, LZMS solid) | 525,990 | + | WIM (wimlib, LZX solid, slow) | 525,140 | + | WIM (wimlib, LZMS solid, slow) | 523,728 | + | WIM (WIMGAPI, LZMS solid) | 521,366 | + | WIM (wimlib, LZX solid, very slow) | 520,832 | + | tar.xz (xz, default) | 486,916 | + | tar.xz (xz, -9) | 486,904 | + | 7z (7-zip, default) | 484,700 | + | 7z (7-zip, -9) | 483,239 | + ===================================================== Note: WIM does even better on directory trees containing duplicate files, which the Canterbury corpus doesn't have. @@ -313,9 +316,8 @@ extraction are implemented separately for Windows, UNIX, and UNIX (NTFS-3g mode), to ensure a fast and feature-rich implementation of each platform/mode. wimlib is mainly used on x86 and x86_64 CPUs, but it should also work on a -number of other GCC-supported 32-bit or 64-bit architectures. No assumptions -are made about endianness, but some code assumes that unaligned memory accesses -are supported and relatively efficient. +number of other GCC-supported 32-bit or 64-bit architectures. It has been +tested on the ARM architecture. Currently, gcc and clang are the only supported compilers. A few nonstandard extensions are used in the code. @@ -334,7 +336,7 @@ With regards to the supported compression formats: neither of which is completely applicable to its use in the WIM format, and the first of which contains multiple errors. - There does not seem to be any official documentation for LZMS, so my comments - and code in src/lzms-decompress.c may in fact be the best documentation + and code in src/lzms_decompress.c may in fact be the best documentation available for this particular compression format. The algorithms used by wimlib's compression and decompression codecs are