Khiêu chuyển đáo nội dung

LZMA

本页使用了标题或全文手工转换
Duy cơ bách khoa, tự do đích bách khoa toàn thư

LZMA( anh ngữ:Lempel–Ziv–Markov chain algorithm) thị 2001 niên dĩ lai đắc đáo phát triển đích nhất cáSổ cư áp súcToán pháp, tha dụng vu7-ZipQuy đương công cụ trung đích7zCách thức hòaUnix-likeHạ đíchxzCách thức. Tha sử dụng loại tự vuLZ77ĐíchTự điển biên mã(Anh ngữ:Dictionary coder)Cơ chế, tại nhất bàn đích tình huống hạ áp súc suất bỉbzip2Vi cao, dụng ô áp súc đích tự điển đương án đại tiểu khả đạt 4GB.

C++Ngữ ngôn tả thành đích LZMAKhai phóng nguyên mãÁp súc khố sử dụng liễuKhu gian biên mãChi trì đíchLZ77Cải tiến áp súc toán pháp dĩ cập đặc thù đích dụng vu nhị tiến chế đích dự xử lý trình tự. LZMA đối sổ cư lưu, trọng phục tự liệt đại tiểu dĩ cập trọng tục tự liệt vị trí đan độc tiến hành liễu áp súc. LZMA chi trì kỉ chủngTán liệt liênBiến thể,Nhị xoa thụDĩ cậpCơ sổ thụTác vi tha đích tự điển tra trảo toán pháp cơ sở.

Đặc tính

[Biên tập]

BCJ / BCJ2 nhị tiến chế văn kiện áp súc

[Biên tập]

BCJ / BCJ2 áp súc công cụ sở phụ đái đích LZMA SDK bao quát: TạiX86,ARM,PowerPC,IA-64Dĩ cậpARM ThumbXử lý khí thượng tại áp súc chi tiền khiêu chuyển mục tiêu tiến hành quy nhất hóa xử lý. Đối vu x86 bình đài lai thuyết, giá thị nhất cá cận khiêu chuyển, cận điều dụng dĩ cập cận điều kiện khiêu chuyển nhu yếu tòng “Hướng hậu khiêu 1665 tự tiết” giá dạng đích cơ khí ngữ ngôn quy nhất hóa đáo “Khiêu chuyển đáo 5554” giá dạng đích cách thức, đãn thị đoản khiêu chuyển cập đoản điều kiện khiêu chuyển bất nhu yếu tiến hành giá dạng đích xử lý.

BCJ dữ BCJ2 chi gian đích khu biệt tại vu tiền giả chỉ tương cận khiêu chuyển cập cận điều dụng mục tiêu địa chỉ chuyển hoán đáo quy nhất hóa đích hình thức, nhi BCJ2 chỉ tương x86 bình đài hạ đích cận khiêu chuyển, cận điều dụng cập điều kiện cận khiêu chuyển mục tiêu phân biệt tiến hành áp súc.

Thật hiện hòa khả di thực tính

[Biên tập]

Nhất taWindows tác nghiệp hệ thốngChuyên hữu đích đặc tính thâm thâm khảm nhập tại nguyên thủy trình tự trung, sử đắc tối sơ ngận nan sinh thành nhất cá dữUnixĐẳng hệ thống kiêm dung đích bản bổn. Nhiên nhi, LZMA do vu kỳKhai phóng nguyên mãĐặc tính, nhưng nhiên tối chung hoạch đắc liễu các chủng bình đài đích thật hiện:

7-Zip/p7zip tham khảo thật hiện

[Biên tập]

TạiGNU thông dụng công cộng hứa khả chứngHạ phát bố đích 7-zip tham khảo bản bổn hữu dĩ hạ kỉ cá đặc điểm:

  • Cao áp súc bỉ
  • Giải áp súc trình thức mã giác tiểu: Ước 5 KB
  • Giải áp súc thời cận nhu thiếu lượng ký ức thể ( thủ quyết ô tự điển đại tiểu )
  • Giải áp súc tốc độ: Tại nhất bộ 2GHz đích xử lý khí thượng vận hành, ước khả đạt 10-20MB mỗi miểu đích tốc độ.
  • Chi viện tạiĐa hạch tâmHệ thống thượngĐa chấp hành tựVận hành ( bao quátSiêu chấp hành tự).

Giá cá đặc điểm sử đắc giá cá giá cá toán pháp đích giải áp quá trình phi thường thích hợp vuKhảm nhập thức hệ thốngỨng dụng đích tràng hợp. p7zip vi7-zipĐích POSIX hệ thống di thực.

xz hòa LZMA Unix Port

[Biên tập]

LZMA Unix Port thị nhất cá chỉ di thực liễu 7-zip trung LZMA áp súc đại mã đích bản bổn, nội hàm mệnh lệnh hành tham sổ loại tự vugzipĐích cơ vu sổ cư lưu đích áp súc công cụ. Tha bất thị nhất cá quy đương công cụ, nhi chỉ thị nhất cá phổ thông đích áp súc công cụ, tịnh thả do vu tha tại một hữu sổ cư đầu trung một hữu vị áp súc văn kiện đại tiểu đích UInt64 biến lượng, sở dĩ tha dữ 7-zip sinh thành đích LZMA sổ cư lưu trung bất đồng.7-zipSử dụng nhất chủng canh gia linh hoạt đích quy đương cách thức7z,Nhân thử bất năng do thử công cụ giải áp.

Hậu lai loại tự đích xz thế đại liễu LZMA Unix Port, đề cung liễu canh hảo đích áp súc công năng, tịnh tối chung dĩ kỳ ưu dị đích tính năng hòa áp súc bỉ[1]Thành vi liễu bất thiếu khai nguyên nhuyễn kiện ( lệ nhưLinuxNội hạch nguyên mã,Debiandeb[2]HòaFedorarpm ) đích áp súc phương thức chi nhất, thậm chí thị mặc nhận áp súc phương thức. xz mệnh lệnh hành trình tự tằng hữu quá nhất cá danh vi pxz đích phân chi, đề cung đa tuyến trình áp súc công năng, hậu lai xz tại 5.2 thời bổn thân tựu trực tiếp đề cung đa tuyến trình liễu.

Lzip thị lánh nhất cáUnix-likeHệ thống hạ đích LZMA áp súc cách thức, kỳ chủ yếu mục đích chi nhất tựu thị hòa xz cạnh tranh. Dữ xz tương bỉ, tha đích tối đại lượng điểm tại vu đề cung canh giản đan đích văn kiện cách thức hòa nhân thử đắc lai đích canh phương tiện đích sổ cư khôi phục[3][4].Lzip đích cách thức như thử giản đan dĩ chí vu kỳ văn đương trung tựu tồn tại nhất cá giải áp khí thật hiện, vu thị vị lai đích sổ cư khảo cổ học gia tức sử tạiLượng tử kế toán cơSử đắc LZMA vô dụng đa thời chi hậu chỉ kháo văn đương dã năng thành công giải áp văn kiện.

Ứng dụng

[Biên tập]

Sử dụng hoặc giả chi trì LZMA đích nhuyễn kiện hữu:

Áp súc cách thức biểu kỳ

[Biên tập]

LZMA đích áp súc thâu xuất lưu thị nhất cá bỉ đặc lưu, thải dụng tự thích ứng nhị tiến chế hành trình biên mã khí ( adaptive binary range coder ). Bỉ đặc lưu hoa phân vi bao ( packet ), mỗi cá bao hoặc giả biểu kỳ nhất cá tự tiết đích thụ áp súc sổ cư, hoặc giả như đồng LZ77 đích áp súc thâu xuất tự liệt na dạng đích trường độ dữ cự ly đích đối ( pair ). Mỗi cá bao đắc mỗi cá bộ phân tác vi độc lập đích thượng hạ văn ( context ), tòng nhi đối mỗi cá bỉ đặc đích khái suất dự trắc cận tương quan vu tiền nhất cá bao đích đồng loại hình bỉ đặc trị.

Hữu 7 loại bao:[5]

Bao đích bỉ đặc tự liệt Bao danh Miêu thuật
0 + byteCode LIT Đan cá tự tiết, thải dụng tự thích ứng nhị tiến chế hành trình biên mã khí.
1+0 + len + dist MATCH Nhất cá điển hình đích LZ77 tự liệt sử dụng trường độ dữ cự ly.
1+1+0+0 SHORTREP Đan cá tự tiết đích LZ77 tự liệt. Cự ly đẳng vu thượng cá LZ77 bao sử dụng đích cự ly.
1+1+0+1 + len LONGREP[0] Đan cá LZ77 tự liệt. Cự ly đẳng vu thượng cá LZ77 bao sử dụng đích cự ly.
1+1+1+0 + len LONGREP[1] Đan cá LZ77 tự liệt. Cự ly đẳng vu đảo sổ đệ nhị cá LZ77 bao sử dụng đích cự ly.
1+1+1+1+0 + len LONGREP[2] Đan cá LZ77 tự liệt. Cự ly đẳng vu đảo sổ đệ tam cá LZ77 bao sử dụng đích cự ly.
1+1+1+1+1 + len LONGREP[3] Đan cá LZ77 tự liệt. Cự ly đẳng vu đảo sổ đệ tứ cá LZ77 bao sử dụng đích cự ly.

LONGREP[*] biểu kỳ LONGREP[0-3] tứ chủng bao, *REP chỉ xưng LONGREP dữ SHORTREP, *MATCH chỉ xưng MATCH hoặc *REP.

LONGREP[n] bao san trừ liễu đối cự ly đích trực tiếp biểu kỳ, nhi thị sử dụng bao tự liệt tối cận tứ cá cự ly.


Bao đích trường độ bộ phân biểu kỳ như hạ:

Trường độ bỉ đặc tự liệt Miêu thuật
0+ 3 bits Trường độ dụng 3 bỉ đặc biên mã, biểu kỳ 2 đáo 9.
1+0+ 3 bits Trường độ dụng 3 bỉ đặc biên mã, biểu kỳ 10 đáo 17.
1+1+ 8 bits Trường độ dụng 8 bỉ đặc biên mã, biểu kỳ 18 đáo 273.

Như đồng LZ77, trường độ bất nhất định yếu tiểu vu cự ly.

Cự ly tại la tập thượng thị 32 bỉ đặc, cự ly 0 biểu kỳ tối cận tăng gia đáo từ điển đích na cá tự tiết.

Cự ly đích biên mã dĩ 6 bỉ đặc "distance slot" khai thủy, do thử khả tri hậu diện cân trứ đa thiếu bỉ đặc lai bổ toàn. Giá thị khả biến trường biên mã. Cự ly giải mã hậu vi bỉ đặc lưu, tòng tối hiển trứ vị đáo tối bất hiển trứ vị. distance slots 0−3 trực tiếp biên mã liễu 0−3.

6-bit distance slot Highest 2 bits Fixed 0.5 probability bits Cân tùy đích bỉ đặc vị sổ
0 00 0 0
1 01 0 0
2 10 0 0
3 11 0 0
4 10 0 1
5 11 0 1
6 10 0 2
7 11 0 2
8 10 0 3
9 11 0 3
10 10 0 4
11 11 0 4
12 10 0 5
13 11 0 5
14–62 (even) 10 ((slot / 2) − 5) 4
15–63 (odd) 11 (((slot − 1) / 2) − 5) 4

Giải áp súc toán pháp miêu thuật

[Biên tập]

Y cư khảm nhập đáo Linux kernel đíchXZGiải mã toán pháp nguyên văn kiện[6].

Tham khảo tư liêu

[Biên tập]
  1. ^Lasse Collin.A Quick Benchmark: Gzip vs. Bzip2 vs. LZMA.2005-05-31[2015-10-21].(Nguyên thủy nội dungTồn đương vu 2020-11-12 ).
  2. ^Guillem Jover.Accepted dpkg 1.17.0 (source amd64 all).Debian Package QA.[2015-10-21].(Nguyên thủy nội dungTồn đương vu 2017-07-06 ).
  3. ^Diaz, Diaz.Lzip Benchmarks.LZIP (nongnu).[2015-10-21].(Nguyên thủy nội dungTồn đương vu 2020-06-07 ).
  4. ^Antonio Diaz Diaz.lziprecover.[2015-10-21].(Nguyên thủy nội dungTồn đương vu 2020-06-27 ).
  5. ^the source of LZMA SDK.[2016-08-04].(Nguyên thủy nội dungTồn đương vu 2014-06-09 ).
  6. ^Collin, Lasse; Pavlov, Igor.lib/xz/xz_dec_lzma2.c.[2013-06-16].(Nguyên thủy nội dungTồn đương vu 2019-10-18 ).

Ngoại bộ liên tiếp

[Biên tập]