パスワードを忘れた? アカウント作成
115798 journal

Claybirdの日記: .xz/.lzma

日記 by Claybird

ここしばらくTar32.DLLに関して作業中である(作者氏には連絡済み)。

最近GNU TarがLZMA方式の圧縮に対応したらしいので調べてみた。
どうやらフォーマットとして.lzmaと.xzがあるらしい。しかも.xzは.lzmaの後継だとか。
よく知らないけど、.lzmaってそんなにメジャーだったのかな。

間違ってるところとかあれば突っ込みをお願いします。コメント等もご遠慮なくどうぞ。

---
tukaani.orgはXZ UtilsとLZMA Utilsを作っている
    - XZ Utilsは.xzを吐く
    - LZMA Utilsは.lzmaを吐く

・.lzmaを吐くコードにはLZMA Utils以外に本家LZMA SDK(7-zip.org)がある

・LZMA UtilsはXZ Utilsに移行した

・XZ Utilsは2009/7/1現在 ベータ版
    - .xzフォーマット自体はほぼ安定状態(非ベータの意味か)にあるらしい(http://tukaani.org/xz/xz-file-format.txt)
    - このフォーマットの仕様書は2009/01/29に公開された

・XZ Utilsは最初に安定版を出すときにコードをPublic Domainにする予定
    - 現状はLGPL

・.lzmaは.xzとは違う形式
    - 仕様書を見る限り、少なくともヘッダは違う

http://www.gnu.org/software/tar/tar.html#releasesによると
    - GNU Tarは1.20から.lzmaをサポートしていた
    - GNU Tarは1.22から.xzをサポートした
    - 1.21でショートカットとしてオプション"-J"に.lzmaを割り当て
    - 1.22で"-J"は.xzに割り当て変更

・今後.xzを(.lzmaの置き換えとして)主流にする予定
    - これから作成するときは.lzmaよりは.xzにした方がいいのか?(疑問)

・「LZMA方式(もしくはその派生)」は.lzmaと.xzの両方で使われている圧縮アルゴリズム
    - .7zでも使われる
    - .lzma/.xzにとっての「LZMA方式」は、.zip/.gzにとっての「Deflate方式」と同じような位置づけか?(確証無し)

・Cygwin上で試したところ、ツールの「xz」は.lzmaを展開できるようだ
    - 置き換えを狙う以上、互換性は保ったということか?(確証無し)

---
.xz/.lzmaのファイル自体がまだそれほど出回っていない上に、.xz自体登場してまだ間もない形式なので、様子見になりそうな感じ。
こちらのコードで書くならXZ Utilsのベータが取れるのを待つ感じになるかもしれない。うまくいけばXZ Utilsが.lzma/.xzの両方をサポートしてくれるかもしれない。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

「科学者は100%安全だと保証できないものは動かしてはならない」、科学者「えっ」、プログラマ「えっ」

読み込み中...