カレンダー

2022/01
      
242526272829
3031     

広告

Twitter

記事検索

ランダムボタン

ミニマムサイズ

by 唐草 [2019/11/15]



 コンピュータの世界というと0と1しかない白黒がはっきりした世界を想像する人が多いだろう。その一方で、コンピュータを使っているとよく分からない現象に出くわすこともある。理屈上は0と1しか存在しないのだが、それはあくまで理論上の話。ハードウェア、つまり部品レベルでは物理的なアナログなものでしかない。いくら頑張ってデジタルな振る舞いをさせようとしても、熱や電圧の変化などのアナログな影響をゼロにすることはできない。こういう物理現象が、不可解な動作を生み出す一端になっている。
 とは言え、不可解な要素を引き起こす最大の要因は熱でも電気でもない。コンピュータを使っている人間が最大の要因である。人間が使っていることを考えれば、熱や電気の話など無視しても差し支えない微々たる問題でしか無い。
 ぼくらは毎日同じようにコンピュータを使っているつもりでも、それは人の感覚による判断でしか無い。機械の側からすれば、同じ操作なんて2度と無いだろう。それでも同じ操作で同じ結果が帰ってきているのは、人間の操作の曖昧さを機械の側が吸収してくれているからに他ならない。ぼくたちは、ついついこのことを忘れがちである。
 ぼくのようにPCサポート的な仕事をしていると、ときに奇妙なデータに出くわすことになる。それらの多くは、不確かな人の操作が生み出した摩訶不思議なデータなのである。だから、大抵の場合は操作する人の姿を想像すれば問題解決に至ることができる。
 ところが、今回ばかりは完全にお手上げとなってしまった。
 ぼくの手元に届いたのは、解凍できないZipファイルだった。解凍できないZipファイルなんてものは、別に珍しくもない。圧縮のエラーやファイルの文字コードなどの影響を受けて解凍できなくなることは少なくない。ひどい場合は、パスワードを忘れたなんてこともある。
 でも、今回のZipファイルは特別だった。なんと、ファイルサイズが22byteしかなかったのである。これが圧縮してできたものなら驚異の圧縮率である。某タイムスリップSFゲームのタイムマシンで送信可能なサイズであるとさえ言える。
 ファイルをバイナリで確認したら確かにZipファイルの形式になっていた。だが、特筆すべきは、Zipの中に圧縮したファイルのリストが存在していなかったということに尽きる。nullファイル、つまりサイズ0byteで名前のないファイルを圧縮したZipファイルと呼ぶべき状態になっていた。
 いったいこの手品のようなZipファイルはどうやって作られたのだろう?さっぱり見当がつかない。本当に不思議である。