読者です 読者をやめる 読者になる 読者になる

IT (情報技術) 学習記録

主に情報処理技術者試験、ORACLE MASTER、Linux技術者認定試験(LPIC)、等の、IT系の学習記録を中心に。(たまに読書記録や世の中も)

ファイルの圧縮技術をざっくり言うと…。

技術要素 独自解説

ファイルの圧縮技術をざっくり言うと…。


  最近の tar コマンドは、アーカイブと同時にcompress(圧縮)できる。そして更には、これは案外知らない人も多いが、展開時に圧縮オプションを指定し忘れても、正しく展開してくれる。

    これは、圧縮ファイルのヘッダー部分に、自分がどんな形式で圧縮されたのかが書かれているから、簡単に判別できる。

    もしも、このヘッダー情報が書かれていなかったら、どうだろうか。そもそも、何故、このようなヘッダー情報が必要なのだろうか。

 


  情報の圧縮というものを、きわめて『ざっくり』言うと、『規則性のある情報を見つけ出して、それを不規則になるまで圧縮する』という事である。

    例えば、空白文字が20回繰り返された『規則性』を発見したなら、それを『20回の空白』を意味する別の情報に書き換える。


  圧縮された後のファイルは、その意味ではとても似通っている。あまりにも『規則性が無い』という意味では…。

    だから、もしもヘッダー情報が無かったなら、ビット列から判定する必要が出てくるが、それはとても難しいロジックになってくる。

    何故ならば、圧縮された情報は、上述のように、皆不規則に似通っているからだ。

    また、同じ理由から、『圧縮の重ねがけ』は、効果が薄くなってくる。一度『不規則に圧縮』してしまった後では、圧縮する余地が無くなってしまうからである。

 


    以上、あくまでも『ざっくり』な『独自解説』でした。