トップ «前の日記(2007-03-31(Sat)) 最新 次の日記(2007-04-02(Mon))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2007-04-01(Sun) ふかつ

LHAとbzip2

NT版のunix-like tools0.14 をダウンロード (ついでにオリジナルもゲット)し、 解凍(LH形式だった)し、tar + bzip2 で圧縮してみる。

unix-like$ cd ntuxtl014
unix-like/ntuxtl014$ tar cfj ../ntuxtl014.tar.bz2 *
(ry
 
unix-like$ ls -l
合計 3180
drwxr-xr-x  7 USER GROUP    4096 2007-04-01 13:43 ntuxtl014
-rw-r--r--  1 USER GROUP 1675664 2007-01-02 16:25 ntuxtl014.lzh
-rw-r--r--  1 USER GROUP  756451 2007-04-01 13:48 ntuxtl014.tar.bz2
-rw-r--r--  1 USER GROUP  802096 2006-10-22 21:11 uxtl412h.tgz

FAQ[A-7]の通りである。
以下引用。
[A2-7]
LHaで全体を圧縮し直してみて下さい。一次配布元で配布している、tar+gzip によるアーカイブに比べて、サイズが何と約1.8倍、tar+bzip2によるものに比べ ると実に2倍以上にもなってしまいます。そればかりか、ソースとマニュアルの ソースを全部省いてLHa圧縮しても、一次配布元でのフルセットのtar+gzipアー カイブよりずっと大きくなってしまうのです。
これはなぜでしょうか。圧縮アルゴリズムの差のせいではありません。実際、 最近のLHaのlh6形式は、圧縮率自体はgzipと同程度です。問題はもっと他のとこ ろにあります。
圧縮も行うアーカイバには、(1)個々のファイルを圧縮してからくっつける方 法と、逆に(2)くっつけてから全体をまとめて圧縮する、という大きく分けて2通 りの方式が考えられます。LHaは(1)ですが、この方式は、似たような内容のファ イルが複数あっても1つずつを圧縮するので、圧縮率が落ちるのです。toolsは同 じライブラリをリンクした実行ファイルが多数あったり、ソースやドキュメント にも似たような記述があちこち現れたりしますので、その影響をもろに受けてし まいます。それに、圧縮アルゴリズムだけを改良してもこの欠点はそれと関係な く残ってしまうのです。
(ry

ちなみに、オリジナル版は現在、 ftp://hayabusa.ics.nara-wu.ac.jp/pub/nide/dosutil に移動している。w3mにメールアドレスを入れてみたら入れた。
firefoxではダイアログが出てきた。


リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。