人形の家

 先日、前回のエッセイ(哀愁のパラレルインターフェース)で紹介したTEA BAR KANDYでドールハウスというものを初めて目にした。
 ドールハウスとは直訳すると「人形の家」という意味になるが、実際は精巧に作られたミニチュアの家屋である。私が見たのはKANDYを模したドールハウスであった。現実のKANDYはテナントを借りているので外装は作者のオリジナルだったが、内装についてはカウンタやフロアの高い質感、細かく作り込まれた備品や装飾など、非常にリアルな作品であった。
 私自身、学生時代に模型づくりに没頭していたこともあり、懐かしさも手伝ってか、そのドールハウスにしばらくの間、見とれていた。
 その後、作者であるOrange Frogの石崎友希子女史に作品の感想や意見を電子メールで伝えたところ、後日KANDYでお会いすることになり、その場では様々な話題について話し合うことができた(もっとも、彼女自身にとってどれほど有益な話題であったかは、いささか疑問である。すべては、はしゃいでいた私の責任である)。
 石崎女史は注文に応じて様々なドールハウスを制作しているそうだが、その注文の大部分は想い出の家をドールハウスとして記念に残しておきたいというものなのだそうだ。依頼者が想い出として残したい理由は、引っ越しや建て替えなど様々である。ドールハウスを見ては、かつてのわが家に思いを馳せるのだろう。
 ところで、しつこいようだがドールハウスとは「人形の家」という意味である。なのに彼女の制作したドールハウスに人形は入っていない。これについて何故かと質問してみると、「人形も作る制作者もいるが、自分はやらない」という答えが返ってきた。ほとんどのドールハウスは想い出のわが家であるため、その想い出の持ち主まで作るわけにはいかないのだそうだ。確かにドールハウスの主役は、忘れ得ぬ想い出を持つ依頼者達なのだから、ドールハウスに対する想いや接し方は様々なものがあるのだろう(それに自分に似た人形など、ちょっと気色悪いかもしれない)。
 依頼者たちにとってのドールハウスとは、彼ら自身がそれぞれに持つ、想い出という記憶情報にアクセスするために必要な媒体、手にとって触れられる「仮想化されたかつてのわが家」、そういったものなのではないだろうか。
 さて、仮想化された概念を利用して、実体のない情報を記録したり管理する技術は、なにもドールハウスだけに認められた特権ではない。まさに(毎度のことではあるが)コンピュータの世界ではこの「仮想」という言葉があふれているのである。
 コンピュータを学び始めた者が、必ずといってよいほど理解に苦しむ概念のひとつが「ファイル」である(私も経験者だ)。特にMacintoshやWindows9x(Windows95とWindows98の総称)が普及してからというもの、ファイルをアイコンという小さな絵で表すようになったため、ただでさえ理解しにくい概念であるのに、さらに混乱に拍車をかけることとなった。
 コンピュータの扱うデータは最終的にすべて2進数で表される。さらに、以前のエッセイでコンピュータの主記憶装置(メモリ)についても説明した(1ビットのシクラメンを参照)。問題はこの主記憶装置は電源を切ると記憶も全て失われてしまうところにある。毎度、この調子で全ての記憶を失っていては、ユーザにストレスが溜まって病気になってしまうのは時間の問題であるので、なんらかの形で記憶を「固定」し失われないようにするための仕組みが必要になる。この記憶を固定するための装置を学術的には補助記憶装置と呼んでいる。補助記憶装置によってユーザは必要な記憶を保存でき、それらを好きなときに読み出すことができる。これで、コンピュータ上での作業に持続性が生まれるわけである。
 補助記憶装置、と一口に言っても実際の装置には様々なタイプがある。私が初めて所有したパソコンはNEC PC-6001mkUという8ビットCPUを搭載した初期の頃のパソコンである(しかもパピコンなどといういささか情けない愛称まで付けられていた)。このパソコンで利用していた補助記憶装置はデータレコーダという、音楽用のカセットテープを利用した非常に扱いにくい装置であった。このデータレコーダという代物は主記憶装置上の記憶をカセットテープに記録したり、また主記憶装置へ読み出したりすることができるのだが、動作速度が非常に遅く(読み出しに10分ほどかかったりした)しかもテープの先頭から順に読み出さなければならないため、必要な箇所だけすばやく読み出すことは不可能だった(おまけにたまたま壊れたりもするのだ)。これは、ちょうどカセットテープやビデオテープではCDのように聴きたい曲や見たい箇所にすばやく移動できず、早送りや巻き戻しをしなければならないのと同じ理屈である。このため1本のカセットテープで何本かのソフトウェアが記録できたにもかかわらず、通常はカセットテープ1本につきソフトウェア1本だけ記録するような使い方が多かった。
 次に手にしたパソコンはNEC PC-8801MkUFAという、やはり8ビットタイプの機種だったが、これにはフロッピーディスクという(当時の私にとっては)非常に画期的な補助記憶装置が搭載されていた。これは表面に磁性体を塗布したプラスチックの円盤上に磁気で情報を記録する装置であった。このフロッピーディスクの利点は、ディスク上の好きなところをすぐ読み書きできるという点にあった。
 この特性によって、データレコーダでは事実上無理であった、主記憶装置の容量以上のサイズのソフトウェアが利用可能になった。つまり、ソフトウェアを全て主記憶装置上に読み出すのではなく、利用したい所だけそのつど読み出すというわけだ。
 必要な情報を必要な時に必要なだけ扱うということは、情報を小分けにして扱うということに他ならない。小分けにする以上、どれが何の情報なのかを区別できなければならない。区別できるようにするということは、例えばそれぞれに名前を付けて違いが分かるようにするということである。
 プログラムもデータも、最終的にはそれぞれがある目的に応じて一定の規則に沿って集められた2進数の集まりである。こうした集まりに区別するための名前を付けて、補助記憶装置に蓄えておくのだが、ここで「ファイル」という考え方が登場する。
 ファイルというと、紙のファイルを連想する向きもあるだろうが、コンピュータでのファイルも同じような考え方にもとづいている。まず、2進数の数値を「文字」と見立てる。「文字」がある目的と規則に従って紙の上に並ぶとそれは「文書」となる。「文書」に名前を付けて管理すると「ファイル」と呼ばれる、という具合に現実の事務処理になぞらえて管理しようとする仕組みである。さらに、ファイルが少ないうちはバラバラでもいいが、多数のファイルを扱うようになると、同じ種類のファイル同士を集めて分類しようとするはずだ。そして、その分類を書棚のあちこちに割り当てていくようになる。この分類用の割り当てスペースに名前を付けたものを「ディレクトリ」または「フォルダ」と呼んでいる。そして、書棚全体を指して、「ドライブ」と呼ぶこともある。1台のパソコンには複数の「ドライブ」が存在することもある。
 また、ディレクトリやフォルダには「階層」という考え方もある。これは、ディレクトリの下にさらにディレクトリを置けるようにすることである。これは、書棚の棚(ディレクトリ)のひとつをさらにブックエンドなどを利用してもっと小さな分類に分けるようなものである(公務員時代には主な仕事のひとつだった)。これをサブディレクトリともいう。
 加えて、ファイルの名前(ファイル名)には命名規則というものがあり、好き勝手な名前は付けられないようになっている。システムで利用しているいくつかの記号は利用できないし、同じ場所でのファイル名の重複もできない。こうした、ファイル管理の仕組み全体を「ファイルシステム」と呼ぶ。
 フロッピーディスクを画期的だと賞賛していた太古(のような気がする)の時代はともかく、今日では様々な補助記憶装置が存在する。もっとも代表的な装置はハードディスクだろう。これは、コンピュータ内部に固定された取り外し不可能な装置であるが、その代わりフロッピーディスクの数千倍に達する記憶容量と数百倍のアクセス速度を誇っている。現在ではどんなパソコンでも必ず1台はこれを内蔵しており、補助記憶装置の中心的な役割を担っている。また、読み出し専用で取り外し可能なCD-ROMという補助記憶装置も重要で、大容量のソフトウェアの配布に利用されている。さらには、光磁気ディスク(MO)やzip、DVDといった様々な補助記憶装置が利用されている。これら各種の補助記憶装置は物理的には互いになんの互換性もない(フロッピーディスクですらサイズ的に3種類ある)。しかし、ソフトウェアから利用する分にはどれも単に「ドライブ」として扱える。つまり、それぞれ性能の異なるドライブとして扱い、どのドライブでも同じ「ファイル」を読み書きできるのである。このようにどんな補助記憶装置でも、ファイルシステム上では全て抽象化されたドライブとして表現される。これも、書棚の色や形、大きさなどの違いは問題とせず、単に書棚に付けられた名前だけで管理している仕組みと同じである。
 こういったファイルシステムのように、何か別の物や事象に例えて何かを表現し操作させる方法を学術的にはメタファという。パソコンでの一般的なメタファは仮想化された事務机もしくはオフィスである。このため、あらゆるファイル操作が仮想化オフィスでの何らかの動作に関連づけられている。例えば、不要になったファイルは普通、ゴミ箱かシュレッダー行きである。やはり、パソコンでもファイル削除には仮想化ゴミ箱や仮想化シュレッダーを用いたりするし、そもそも、基本画面そのものを「デスクトップ」と呼んでいるあたりがまさに仮想化オフィスである。
 コンピュータの世界では「仮想化」という考え方がいたるところに存在し、ファイルシステムもそういった仮想化思想のなかのひとつの要素技術に過ぎない。様々な要素技術を織り込み、進化を続ける現在のコンピュータシステムは、その中に膨大な2進数を素材とした仮想化された世界の構築を目指しているかのようである。だが、どれほど精巧に、どれほど巨大に作られた仮想世界であろうとも、それが表現しようとしている世界は、実体としての我々人間が主人公となるべく形作られた「実在する」世界なのである。