ZOO (ファイルフォーマット)

ZOOは、Rahul Deshiが1980年代半ばに開発したデータ圧縮プログラムおよびフォーマットである。LZW圧縮アルゴリズムを元にしたフォーマットであり、.zooの拡張子が使用されている。ZOOは現状ではほとんど使用されることはない。

zoo
拡張子.zoo
MIMEタイプapplication/x-zoo
種別データ圧縮

プログラムソースコードはUsenetの comp.sources.miscニュースグループで最初に公開され、多くのUnix系OSで動作した。実行形式は、MS-DOSユーザ・コミュニティにも公開された。解凍の機能だけを提供するboozという名前の補助的なプログラムも開発された。

ZOOファイルフォーマットは、ディジタル・イクイップメント・コーポレーション(現在のヒューレット・パッカード)のVAXコンピュータで動作するOpenVMSオペレーティングシステムでよく使用された。コモドールAmigaのコミュニティでも、ある期間使用された。

技術的仕様 編集

.zoo アーカイブは、以下のような34バイトのヘッダで始まる。
オフセット
10進数
オフセット
16進数
サイズ
(バイト)
説明
000-019 000-013
20
アーカイブヘッダ文字列、NULL詰め、^Zで終端
020-023 014-017
4
16進数 A7DCFDC4
024-027 018-01B
4
アーカイブ中の最初のファイルオフセット
028-031 01C-019
4
アーカイブ中の最初のファイルオフセット - 1
032 020
1
このアーカイブを作成したZOOのバージョン
033 021
1
このアーカイブからファイルを取り出すのに必要な、(最低の)ZOOのバージョン


格納されているそれぞれのファイルは、以下のようなヘッダを持つ。
オフセット
10進数
オフセット
16進数
サイズ
(バイト)
説明
000-003 000-003
4
16進数 A7DCFDC4
004 004
1
ディレクトリエントリの形式
005 005
1
圧縮形式; 0 - 非圧縮格納; 1 - 圧縮 (LZW)
006-009 006-009
4
次のディレクトリエントリへのオフセット
010-013 00A-00C
4
次のヘッダへのオフセット
014-016 00D-011
2
オリジナルファイルの作成日時
017-018 012-013
2
ファイルのCRC-16値
019-022 014-017
4
非圧縮でのファイルサイズ
023-026 018-01B
4
圧縮後のファイルサイズ
027 01C
1
このファイルを圧縮したZOOのバージョン
028 01D
1
このファイルを解凍するのに必要な(最低の)ZOOのバージョン
029 01E
1
削除フラグ: 0-ファイルは存在する; 1-ファイルが削除されたことのしるし
030 01F-022
4
ファイルコメントへのオフセット。0の場合はコメント無し。
031-032 023-024
2
コメントフィールドの長さ
033+ 025+ 可変 ファイル名。パス名を含むこともある。NULLで終端

他での拡張子の利用 編集

ファイル拡張子の.zooマイクロソフトのゲームである、ズー タイクーンの保存データとしても使用される。

外部リンク 編集