LZMA SDK 9.20
-------------
LZMA SDK provides the documentation, samples, header files, libraries,
and tools you need to develop applications that use LZMA compression.
LZMA is default and general compression method of 7z format
in 7-Zip compression program (www.7-zip.org). LZMA provides high
compression ratio and very fast decompression.
LZMA is an improved version of famous LZ77 compression algorithm.
It was improved in way of maximum increasing of compression ratio,
keeping high decompression speed and low memory requirements for
decompressing.
LICENSE
-------
LZMA SDK is written and placed in the public domain by Igor Pavlov.
Some code in LZMA SDK is based on public domain code from another developers:
1) PPMd var.H (2001): Dmitry Shkarin
2) SHA-256: Wei Dai (Crypto++ library)
LZMA SDK Contents
-----------------
LZMA SDK includes:
- ANSI-C/C++/C#/Java source code for LZMA compressing and decompressing
- Compiled file->file LZMA compressing/decompressing program for Windows system
UNIX/Linux version
------------------
To compile C++ version of file->file LZMA encoding, go to directory
CPP/7zip/Bundles/LzmaCon
and call make to recompile it:
make -f makefile.gcc clean all
In some UNIX/Linux versions you must compile LZMA with static libraries.
To compile with static libraries, you can use
LIB = -lm -static
Files
---------------------
lzma.txt - LZMA SDK description (this file)
7zFormat.txt - 7z Format description
7zC.txt - 7z ANSI-C Decoder description
methods.txt - Compression method IDs for .7z
lzma.exe - Compiled file->file LZMA encoder/decoder for Windows
7zr.exe - 7-Zip with 7z/lzma/xz support.
history.txt - history of the LZMA SDK
Source code structure
---------------------
C/ - C files
7zCrc*.* - CRC code
Alloc.* - Memory allocation functions
Bra*.* - Filters for x86, IA-64, ARM, ARM-Thumb, PowerPC and SPARC code
LzFind.* - Match finder for LZ (LZMA) encoders
LzFindMt.* - Match finder for LZ (LZMA) encoders for multithreading encoding
LzHash.h - Additional file for LZ match finder
LzmaDec.* - LZMA decoding
LzmaEnc.* - LZMA encoding
LzmaLib.* - LZMA Library for DLL calling
Types.h - Basic types for another .c files
Threads.* - The code for multithreading.
LzmaLib - LZMA Library (.DLL for Windows)
LzmaUtil - LZMA Utility (file->file LZMA encoder/decoder).
Archive - files related to archiving
7z - 7z ANSI-C Decoder
CPP/ -- CPP files
Common - common files for C++ projects
Windows - common files for Windows related code
7zip - files related to 7-Zip Project
Common - common files for 7-Zip
Compress - files related to compression/decompression
Archive - files related to archiving
Common - common files for archive handling
7z - 7z C++ Encoder/Decoder
Bundles - Modules that are bundles of other modules
Alone7z - 7zr.exe: Standalone version of 7z.exe that supports only 7z/LZMA/BCJ/BCJ2
LzmaCon - lzma.exe: LZMA compression/decompression
Format7zR - 7zr.dll: Reduced version of 7za.dll: extracting/compressing to 7z/LZMA/BCJ/BCJ2
Format7zExtractR - 7zxr.dll: Reduced version of 7zxa.dll: extracting from 7z/LZMA/BCJ/BCJ2.
UI - User Interface files
Client7z - Test application for 7za.dll, 7zr.dll, 7zxr.dll
Common - Common UI files
Console - Code for console archiver
CS/ - C# files
7zip
Common - some common files for 7-Zip
Compress - files related to compression/decompression
LZ - files related to LZ (Lempel-Ziv) compression algorithm
LZMA - LZMA compression/decompression
LzmaAlone - file->file LZMA compression/decompression
RangeCoder - Range Coder (special code of compression/decompression)
Java/ - Java files
SevenZip
Compression - files related to compression/decompression
LZ - files related to LZ (Lempel-Ziv) compression algorithm
LZMA - LZMA compression/decompression
RangeCoder - Range Coder (special code of compression/decompression)
C/C++ source code of LZMA SDK is part of 7-Zip project.
7-Zip source code can be downloaded from 7-Zip's SourceForge page:
http://sourceforge.net/projects/sevenzip/
LZMA features
-------------
- Variable dictionary size (up to 1 GB)
- Estimated compressing speed: about 2 MB/s on 2 GHz CPU
- Estimated decompressing speed:
- 20-30 MB/s on 2 GHz Core 2 or AMD Athlon 64
- 1-2 MB/s on 200 MHz ARM, MIPS, PowerPC or other simple RISC
- Small memory requirements for decompressing (16 KB + DictionarySize)
- Small code size for decompressing: 5-8 KB
LZMA decoder uses only integer operations and can be
implemented in any modern 32-bit CPU (or on 16-bit CPU with some conditions).
Some critical operations that affect the speed of LZMA decompression:
1) 32*16 bit integer multiply
2) Misspredicted branches (penalty mostly depends from pipeline length)
3) 32-bit shift and arithmetic operations
The speed of LZMA decompressing mostly depends from CPU speed.
Memory speed has no big meaning. But if your CPU has small data cache,
overall weight of memory speed will slightly increase.
How To Use
----------
Using LZMA encoder/decoder executable
--------------------------------------
Usage: LZMA <e|d> inputFile outputFile [<switches>...]
e: encode file
d: decode file
b: Benchmark. There are two tests: compressing and decompressing
with LZMA method. Benchmark shows rating in MIPS (million
instructions per second). Rating value is calculated from
measured speed and it is normalized with Intel's Core 2 results.
Also Benchmark checks possible hardware errors (RAM
errors in most cases). Benchmark uses these settings:
(-a1, -d21, -fb32, -mfbt4). You can change only -d parameter.
Also you can change the number of iterations. Example for 30 iterations:
LZMA b 30
Default number of iterations is 10.
<Switches>
-a{N}: set compression mode 0 = fast, 1 = normal
default: 1 (normal)
d{N}: Sets Dictionary size - [0, 30], default: 23 (8MB)
The maximum value for dictionary size is 1 GB = 2^30 bytes.
Dictionary size is calculated as DictionarySize = 2^N bytes.
For decompressing file compressed by LZMA method with dictionary
size D = 2^N you need about D bytes of memory (RAM).
-fb{N}: set number of fast bytes - [5, 273], default: 128
Usually big number gives a little bit better compression ratio
and slower compression process.
-lc{N}: set number of literal context bits - [0, 8], default: 3
Sometimes lc=4 gives gain for big files.
-lp{N}: set number of literal pos bits - [0, 4], default: 0
lp switch is intended for periodical data when period is
equal 2^N. For example, for 32-bit (4 bytes)
periodical data you can use lp=2. Often it's better to set lc0,
if you change lp switch.
-pb{N}: set number of pos bits - [0, 4], default: 2
pb switch is intended for periodical data
when period is equal 2^N.
-mf{MF_ID}: set Match Finder. Default: bt4.
Algorithms from hc* group doesn't provide good compression
ratio, but they often works pretty fast in combination with
fast mode (-a0).
Memory requirements depend from dictionary size
(parameter "d" in table below).
MF_ID Memory Description
bt2 d * 9.5 + 4
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
用vs2013实现duilib和cef3结合的demo,代码可直接运行。最简单的demo样例! 代码模块包括duilib库,cef库,duilibCefDemo样例程序。 注意:debug模式下的libcef.dll太大了,没在资源包中加入,大家可以在别的地方下载。
资源推荐
资源详情
资源评论
收起资源包目录
vs2013实现duilib结合cef的demo (1223个子文件)
Makefile.am 949B
cefclient.aps 107KB
AesOpt.asm 4KB
7zCrcOpt.asm 3KB
7zCrcOpt.asm 1KB
7zAsm.asm 1KB
stb_image.c 150KB
LzmaEnc.c 63KB
7zIn.c 35KB
LzmaDec.c 28KB
LzFindMt.c 22KB
XzDec.c 22KB
LzFind.c 20KB
Ppmd7.c 17KB
SfxSetup.c 14KB
XzEnc.c 13KB
7zDec.c 13KB
7zMain.c 13KB
Lzma2Enc.c 12KB
Lzma2Dec.c 10KB
XzIn.c 9KB
MtCoder.c 8KB
7zFile.c 7KB
LzmaUtil.c 6KB
Sha256.c 5KB
Ppmd7Dec.c 5KB
Ppmd7Enc.c 4KB
7zStream.c 4KB
CpuArch.c 3KB
Bcj2.c 3KB
Bra.c 3KB
Lzma86Enc.c 3KB
Alloc.c 3KB
Threads.c 3KB
Bra86.c 2KB
Xz.c 2KB
7zCrc.c 2KB
BraIA64.c 2KB
LzmaLib.c 1KB
7zAlloc.c 1KB
Lzma86Dec.c 1KB
Delta.c 1KB
7zCrcOpt.c 957B
7zBuf2.c 882B
XzCrc64.c 779B
7zBuf.c 537B
LzmaLibExports.c 301B
v8value_ctocpp.cc 21KB
libcef_dll_wrapper.cc 21KB
menu_model_ctocpp.cc 20KB
browser_host_ctocpp.cc 13KB
xml_reader_ctocpp.cc 13KB
dictionary_value_ctocpp.cc 13KB
cef_xml_object.cc 12KB
request_handler_cpptoc.cc 11KB
domnode_ctocpp.cc 11KB
list_value_ctocpp.cc 11KB
command_line_ctocpp.cc 10KB
render_process_handler_cpptoc.cc 10KB
client_cpptoc.cc 9KB
browser_ctocpp.cc 9KB
render_handler_cpptoc.cc 8KB
frame_ctocpp.cc 8KB
request_ctocpp.cc 8KB
domdocument_ctocpp.cc 7KB
context_menu_params_ctocpp.cc 6KB
life_span_handler_cpptoc.cc 6KB
download_item_ctocpp.cc 6KB
v8context_ctocpp.cc 6KB
resource_handler_cpptoc.cc 6KB
response_ctocpp.cc 5KB
cookie_manager_ctocpp.cc 5KB
zip_reader_ctocpp.cc 5KB
drag_data_ctocpp.cc 5KB
jsdialog_handler_cpptoc.cc 5KB
urlrequest_client_cpptoc.cc 4KB
display_handler_cpptoc.cc 4KB
cef_zip_archive.cc 4KB
post_data_ctocpp.cc 4KB
context_menu_handler_cpptoc.cc 4KB
app_cpptoc.cc 4KB
load_handler_cpptoc.cc 4KB
post_data_element_ctocpp.cc 4KB
task_runner_ctocpp.cc 3KB
urlrequest_ctocpp.cc 3KB
stream_reader_ctocpp.cc 3KB
v8accessor_cpptoc.cc 3KB
domevent_ctocpp.cc 3KB
v8stack_frame_ctocpp.cc 3KB
v8exception_ctocpp.cc 3KB
keyboard_handler_cpptoc.cc 3KB
download_handler_cpptoc.cc 3KB
stream_writer_ctocpp.cc 3KB
v8handler_cpptoc.cc 3KB
process_message_ctocpp.cc 3KB
geolocation_handler_cpptoc.cc 3KB
binary_value_ctocpp.cc 3KB
request_context_ctocpp.cc 3KB
resource_bundle_handler_cpptoc.cc 3KB
browser_process_handler_cpptoc.cc 3KB
共 1223 条
- 1
- 2
- 3
- 4
- 5
- 6
- 13
aaa3712
- 粉丝: 1
- 资源: 6
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
- 3
- 4
- 5
- 6
前往页