MS―DOS戦略的入門

プロローグ


 新しい世界像
 今、世界が新しい。全てのもの、空や鳥、花や虫までがわたしたちに語りかけてくる。自然は偉大であることを再認識するに至る道である。
 それでも疑問は深まっていく。そこで我々は、コンピューターへ挑戦することにした。謎は氷解しつつある。世界は、古来わたしたちが漠然と空想していた通りであった。
 限りなき情報圏(Info-sphere)。この世界像こそ、わたしが求めてやまなかった硬軟一体の世界観に迫ろうとするものである。科学技術が、枝も大地へと垂れなんとするばかりに、大いなる結実をもたらそうとしている。
   ◇
 わたしは今、MS―DOSマシンとマッキントッシュ(Macintosh)の二種類のコンピューターを使っている。MS―DOSマシンには文字情報を、マッキントッシュには画像情報をそれぞれストックしている。
 おそらく一般の人が「コンピューターを操っている」と実感できる、最初にして最後のOS(基本ソフト)がMS―DOSではないか、そのように思っている。優れたものは、例外なく支持されてきた。人の目に触れるチャンスが与えられなかったとしても、「偶然」という名の存在に後押しされ、運命に翻弄されながら、必ず人の知るところとなる。
 MS―DOSもまた、CP/Mという強力なライバルに圧倒されかかったが、偶然のいたずらによって、しぶとく生き延びた。いまやMS―DOSは、名実共にパソコンのシンボルとして君臨し続けている。
 近ごろのMS―DOSがUNIXやOS/2に追撃されているとはいえ、MS―DOSが滅びるという人はいない。UNIX、OS/2は、ユーザー自身が使いこなすには重すぎる。明らかにこの2つのOSは、プロのためのOSである。
 一方、米国アップル社は、マッキントッシュの一部機種について、その価格を戦略的に引き下げる一方、パソコンとしては超高速マシンに属する某機種の販売に力を入れ始めた。時を同じくして、ソフトウエア資産も質量ともに充実する。
 それまでマッキントッシュの長所を知りながら傍観していた日本の職業人たちが、この愛らしいリンゴのマークのコンピューターに注目している。
 しかしマッキントッシュのOSであるSystem(日本語版は漢字Talk)は、個人の世界観を変革するコンピューター環境ではあり得ない。それは当然のことだ。いかにユーザーにOSを意識させないでパソコンを使わせるかを優先させ、使いやすい使用環境を至上命令として設計されたOSだからだ。
 MS―DOSは、非常に分かりやすい形で自分の姿(構造)を明示する。これは、思いがけない衝撃を我々に与えた。エンジニアではない我々に副産物をもたらした、と言い換えてもいい。
 機械がもたらした情報圏は、人によっては何かしら異物感があるという。触れたがらない人さえいる。ところがMS―DOSを通じて広く一般に知られることになったコンピューターは、いっこうに不気味なものではなかった。それどころかコンピューターが管理するアーティフィシャルな情報圏の構造は、なぜか我々人類の有する温かな情報圏と、どこかしら似通ったところがあることを、かくも知らしむるところともなった。
 我々の知性がいったいどこから来るのかに思いを駆せる時、比較するものがあるというのは幸せだ。子を初めて持った若い親の心境に相通じるものがある。
 これについてはMS―DOSの貢献度、大なり、である。とりわけ、パソコンを普及させた功績は大きい。パソコンが繁栄をもたらした実例を、わたしは多数知っている。
 わたしは仕事の資料をMS―DOSマシンとマッキントッシュで管理しているが、MS―DOSが実に巧みにテキスト情報を管理することの凄さに常々驚かされている。それにマッキントッシュが、画像処理というシーンにおいては革命的なシステムであることも承知している。
 ズシリ重いが片手に乗るサイズのボックスに、1億文字以上もの情報を電子化して詰め込む装置が商品化された。パソコンも、巨大な情報を記憶するまでになったものだ。
 コンピューターが安くなった。パソコンの小宇宙的スケールの情報圏は、我々のものである。パソコンシステムをセルフメイドで設計することに興奮しない人はいない。とりわけ、無限の記憶領域に接し始めると、人間が持っている創造欲が限りなく広がる、そのように魅力を語る人もいる。
 コンピューターの世界は、なぜかくも我々を魅了してやまないのだろうか。この強烈なカルチャーショックは、どこから来たり、そしてどこへ赴こうというのか。人の自我を揺すぶって離さないものは、いったい何ものなのだろう?
 本書では、世界で最もポピュラーなパソコンOS、MS―DOSの姿を伝えながらコンピューターの魅力について言及する。思えば、二十世紀生まれの我々は、大変な時代に生を受けてた唯一無二の世代であるのかもしれない。時代を解く鍵は、案外、コンピューターの進歩の中に隠されているのかもしれない。空想の翼はとめどなく広がってゆく。
 そうしたヒントは、本書の各章に書きおいたつもりなので、パソコンの学習と合わせて大いに役立てて頂ければ、これに勝る幸いはない。二十一世紀、すべての科学は知能のメカニズムの解明に向かうであろうが、読者の中から一人でもこうした研究を目指す若者が現われれば、なおのこと幸いである。
    一九九〇年十一月二十五日          堤 大介

 テクニカル・ガイダンス
 本書では、バージョンは、日本電気のMS―DOS Version3・30Cを使用した。異なるOSの代表として、マッキントッシュの漢字Talk6・0・4について主に言及した。



目 次


1章 OSの生い立ち

        小宇宙の創造
        神のごときOS
        異母兄弟のMS―DOSとPC―DOS
        歴史の必然
        初めに言語があった
        世界の標準
        OSの未来
        時間は環境である
        OSの2つの顔
        CPUの離陸
        64ビットパソコンと家庭用ロボット
        パソコンの未来動向
        OSが提供する情報圏
        主体の逆転
        スーパーユーザー

2章 支配力

        情報管理の体系
        銀河宇宙の模倣
        器の中の器
        ファイルの互換性
        システム思考
        柔軟な機動性
        パソコンのシステムの設計図

3章 対話シーン

        MS―DOSのコマンドモード
        ファイルの破壊事故
        自己破壊の危険
        外部コマンドと内部コマンド
        MS―DOSシステムの構造
        ランダムの戦略

4章 ファイルの実像と幻想

        情報の2つの系
        自分自身を知るデータ
        人工言語と自然言語
        人間と機械の接点で

5章 限りない記憶空間
        持ち運べる記憶空間
        膨張し続ける記憶空間
        伸縮自在の記憶領域
        情報の座標軸
        ディレクトリー構造の俯瞰

6章 表現するコンピューター

        MS―DOSが認識する装置
        時代の花形、DTP
        プリンターの潮流
        品位という美の尺度
        国産プリンターの標準
        MS―DOSマシンのビジュアル表現力の限界
       

7章 世界の標準テキスト

        世界の標準テキスト、ASCIIファイル
        異アプリケーション間の連鎖


8章 コミュニケーションの支援体制

        過去を記憶するテンプレート
        二重の権力構造
        内包と外包を併せ持つ命令系統
        システムの制御
        フィルターとパイプ

終わりに―遥かなる未知の情報圏



1章 OSの生い立ち


    小宇宙の創造

 ひとしきり指先をキーボードに遊ばせただけで、OSはコンピューターのCPUに1億余の回数の論理演算を命令する。だからOSのデザインを宇宙の創造になぞらえたとしても、神への冒涜ということはできない。
 OS(Operating System)は、コンピューターで動くソフトウエアの礎(いしずえ)ともいうべき基本ソフトである。ソフトウエアのためのソフトウエア、とでも表現しようか。
 OSは、そのソフトウエアがそのOSの中で動いている限りにおいて、あらゆる支援を惜しまない。と同時に、そのソフトウエアの性格を決定づける。礎とはそういうものである。
 MS―DOSは、MicroSoft Disk Operating System が略された。
 一九八一年、IBM PCのDOSとして登場したMS―DOSは、IBM社がPC―DOSと呼び、IBM PCの標準OSとして採用された時から数奇な運命をたどる。しかし最初の1・1版は、既存のCP/M―86互換OSをベースにしたもので、特に独創性に富んでいたというわけではなかった。
 機を見るに敏なのは、独りMS―DOSだけではない。CP/Mもまた時代の波に洗われ、必死に頂きへと上り詰めようとしたOSであった。
 CP/M(Conrol Program for Microcomputers=シーピーエム)は、パソコン草創期の8ビット機の時代に一世を風靡したOSである。このOSは8ビットCPU、i8080のために米国デジタル・リサーチ社が開発した。日本でもPC―8801シリーズ機などで広く普及したので、親しみを覚える人々が少なくないはずである。
 米国インテル社のi8080の地位もまた安泰ではありえない。米国のCPUメーカー、ザイログ社は、i8080の演算機能などを改良した8ビットCPU、Z80(ゼット・ハチマルまたはズィ・エイティ)を一九七五年に発表する。
 Z80は一時、8ビットパソコンの主流CPUとなり、日本では一九七九年にPC―8001(日本電気)へ搭載、またシャープもMZ―80Kで最初に搭載した。その後もPC―8801、X1、MSXなど数多くの8ビットパソコンに搭載された。
 しかし結局はZ80も16ビット時代の波には乗れず、再びインテル社のi8086系CPUへと覇権を明け渡すのである。
 話はOSに戻る。8ビット機を制覇したCP/Mは、CP/M―86の名で16ビットCPUでも使えるよう、OS構造を改造した。ついには16ビットCPU、i8086/8088にも適合するよう改良を重ねたが、勝負は時の運、MS―DOSに主流の座を譲るのは時間の問題であった。
 OSとCPUが、まるで互いに相手を呑み込もうとする双頭のヘビのように絡み合い、しかし今後も決して離れることのできぬ運命であることは明々白々である。
 この戦場に、アプリケーションの興亡が決定的に関わって来る。野心家のソフトハウスが世界制覇を目論むとしたら、ソフトウエアを設計する前に、まず性能が優れたCPUを選択しなければならない。次いで、そのCPUを支配するOSに従ってソフトウエアをデザインするであろう。
 アプリケーションとは、コンピューターを実務的な機械として変貌させるソフトウエアである。大型コンピューターは、官庁や軍、企業が、大掛かりなシステムとして使うため、たとえばワードプロセッサーといったまともな用途に対しては、現実的ではない。個人の夢には縁も無い。
 だからこそアプリケーションの花々が百花繚乱と咲き誇ったのは、パソコンの枝の上であった。パソコンが開拓した分野は、ワードプロセシング、表計算、データベース、図形(コンピューター・グラフィックス)処理、通信、といった考え得る全てのものである。

    百億ドル市場

 パソコンソフト一本で世界の市場を相手に大暴れすることは不可能ではない。なにしろ、MS―DOSマシンの市場だけで世界に2000万台ともそれ以上ともいわれる。表計算ソフトのLotus1―2―3を開発した米国ロータス社(Lotus=本社・米国ボストン)を思い起こすが良い。
 Lotus1―2―3は、アメリカ本土でビジネスパソコンの普及に多大な貢献を成し遂げたベストセラーソフトである。ビジネスマンは営業の集計や顧客管理に広く活用し、日本でもこの分野で名実ともにトップである。
 かつてはトップランナーだったマルチプラン(Multiplan)も、Lotus1―2―3の前ではシェアの後退を余儀なくされている。開発元のロータス社は、このソフトで一躍、世界屈指のソフトウエア企業に成長している。全世界の累積売上本数は500万本を超したともいう。
 そのロータス社が、米国ボストンを足場にうかがったのは、やはり世界各国に広がるMS―DOSマシンの百億ドル市場だった。
 しかしパソコン界の華やかなアメリカン・ドリームは、ずっと後になってからである。成熟した現在のパソコン市場はともかく、草創期の現実は逆であった。
 初期のパソコンCPUは、動きが鈍い。OSの担当であるメモリー管理能力もお粗末だった。ソフトウエアには選択の自由はなかった。身を削るようにプログラムサイズを節約し、CPUが全能力を発揮できるよう、自らを鍛えに鍛えてから世に出た。パソコン言語のBASICもまた、このようにして時と所を得た。
 苦労は早目に済ますのが良い。ハードウエアの限界に挑戦したプログラム、そして挑戦のさ中にエンジニアたちが得たノウハウは、一九八〇年代半ばに、一気に開花する。
 しかし皮肉なことに、苦労はハードウエアへの愛着となってエンジニアたちの心に染みつき、愛着が特定コンピューターの機種のユーザーへまで広がるに至っては「宗教」とまで皮肉られることとなった。マッキントッシュがその好例である。
 ハードウエア依存の体質は、現在にまで根深く尾を引き続けた。たとえば、一九九〇年に日本国内でマッキントッシュ向けに発表されたP……というフォト処理ソフトは、リアルタイムでカラー写真の色調やコントラスト、特殊効果を確認できる。数秒で画面の一部を切り貼りするのも自由だ。原画の質を下げることもほとんどない。
 写真家やデザイナーなら、誰でも欲しがるソフトウエアでありながら、マッキントッシュを持たない人々には垂涎の的以外の何ものでもない。これは各パソコンメーカーの排他的な商魂の責任ではない。
 こうした優れたソフトウエアがMS―DOSマシンでも使えるよう、MS―WINDOWSという準OSの助けを借りながら移植が進められている。だが、いかんせんソフトの移植の段階で基本性能が劣ってしまう例が多すぎる。
 ところで、MS―DOSの販売元は、あのパソコン向けBASICの開発者として有名なビル・ゲイツ(一九五五年〜)率いる米国マイクロソフト社である。米国シアトルに陣取るビル・ゲイツは、パソコンに、BASICという親しみやすい人工言語を与え、続いてMS―DOSという大ホームランを打ち上げた。
 BASICは一九六三年、米国ダートマス大学で文化系学生の電算機教育用に開発された。一九七四年、Altairというパソコン向けにビル・ゲイツがコンパクトにまとめ、移植した。かつてパソコンとBASICの関係は、恋人同士のように親密だった。
 MS―DOS全盛の今、MS―DOSをベースにして使われる人工言語の主流はC言語である。Cは、米国ベル研究所のUNIX(ユニックス)の記述言語として開発された。
 Cは関数形式のプログラミング言語だが、使いやすく、他機種への移植がしやすいのが流行の一因とされる。BASICで作られたソフトに比べCで作られたソフトウエアは処理速度が驚異的に速く、Cを好むプログラマーが少なくない。処理をスムースにするため直接マシン語(機械語)で書かれたプログラムも無くはないが、あの流行ソフトもC、某著名ソフトもC、といったふうに、Cには風もなびくという。
 独占的ではないが、Cもまた米国マイクロソフト社の販売する言語(MS―C)である。同社は、わずか七、八年でOS、言語、アプリケーション・ソフトを手中にした。いってみればパソコン界のチャンピオンに上り詰めたアメリカンドリームのヒーローである。パソコン本体のメーカーが群雄割拠する中、CPUは米国インテル社、ソフトウエアは米国マイクロソフト社が、それぞれ突出し、事実上のルールメーカーであり続けた。
 有名なエピソードだが、初めにMS―DOSを開発したのはマイクロソフト社ではない。「シアトル・コンピューター・プロダクツ」というベンチャー企業(ソフトハウス)が開発したプログラムの権利と開発者を丸ごと引き取り、多少CP/Mライクに手直しして世に出した、というのが真相である。
 開発者がヒーローとならずに無名で終わり、別のソフトウエアの開発者として名を上げた男が販売者として名を高めるというのも皮肉である。情報システムもまた資本のシステム内で地位を勝ち取らねばならなかった。貨幣経済の洗礼とは奇妙なものだ。
 パソコンOSが天下分け目の時を迎えようとしていたその時、ビル・ゲイツの最大のライバルであるデジタル・リサーチ社の創業者、ゲイリー・キルドール(一九四二年〜)は、事業と同じくらいに自家用機の操縦に夢中だったという。曲技用複葉機、ランボルギーニ・カウンタック、ロールスロイス。これが当時のキルドールの精神的な糧であった。
 少なくとも自社の製品を、巨人IBMに譲る商談が大切でないわけはあるまいが、ゲイリーはIBM社幹部との交渉を失念したらしい。
 ビル急拵えのOSは、IBMパソコンという大いなる翼に乗り、MS―DOSの名前で世界を駆け巡る。ほぼ同一の製品にMS―DOSという別の名前を付けて別の企業にも売る権利を確保したとは、ビルも大変なネゴシエーターである。
 もっとも一九八一年当時はIBMも初めてのパソコン市場参入であり、まさかMS―DOSが2000万台ものマーケットを獲得するとは夢想だにしなかったはずである。
 IBMの参入は大成功を収める。しかし後に、その最大の敵がIBM互換機メーカーの急追となることも、当時は誰一人知るよしもない。それにIBM PCが、同互換機に追い回されたことが、5年を経ずしてMS―DOS後継OSと目されるOS/2とそのメインマシンのPS/2を産む原動力ともなっていく。
 しかもMS―DOSが大活躍した土台がIBM PCの互換機マーケットだったのだから、ビジネスは人生同様、不可解ではある。
 MS―DOSの翼は、米国インテル社のi8086系CPUというエンジンを得て、i8086系CPUのためのOSとしてパソコンの歴史に大きな足跡を残し続けている。
 MS―DOS1・1版(一九八一年)は、その後、国際版の1・25版(一九八二年発表)として世界の晴れ舞台へデビューする。翌一九八三年にバージョンアップしたMS―DOS2・0版は、ライバルCP/Mの色を捨て、新しい顔をしていた。それは、かのUNIXを思わせるものであった。

    神のごときOS

 MS―DOSは、ビジネスパソコンの主流OS(基本ソフト)である。パソコンユーザーが使うアプリケーション・ソフトは、その大半がMS―DOSをベースに作動するように開発されてきた。MS―DOSは、現在も16ビットパソコンの大半、それに32ビットパソコンの多くにとって欠くべからざる基本ソフトである。
 MS―DOSには、かつてはCP/MというライバルOSもあったが、CP/Mは滅びてしまった。コンピューター界は苛酷な戦場だ。DISK―BASICも一世を風靡したが、ファイル管理上の欠点が多く、あえなく駆逐されてしまった。MS―DOSで動くBASICが登場したものの、BASICの役目は、教育的な役割を除けば、今はゲームソフトだけだ。
 PC―9801RAシリーズ機といった32ビットパソコンでさえも、多くはMS―DOSを頼りにしているのが現実で、32ビットのワークステーションがUNIXとOS/2とに二分されているのと比べると、MS―DOSによるガリバー的な独占状態にあることは特記すべき現象である。野心家が参入しないはずはない。

    異母兄弟のMS―DOSとPC―DOS

 IBMパソコンはPC―DOSを採用しているが、PC―DOSもまた実はMS―DOSである。一九八一年、8ビットパソコンIBM PC向けに開発された最初のDOS(Disk Operating System)がPC―DOSだった。
 この優れたOSをIBM PC以外のパソコンでも使えるようにと、開発元の米国マイクロソフト社はPC―DOSを汎用化する。一九八二年、これをMS―DOS1・25(もちろん英語バージョン)として公開した。
 英語文化圏のプログラムを日本語対応に移植するのは簡単ではない。特にMS―DOS本体とMS―DOSアプリケーション・ソフトの日本語化は難しい。単純にメッセージを英語から日本語へ書き換えて済むものではない。
 たとえばマッキントッシュのOSは、グラフィック・ベースである。マッキントッシュでは、グラフィックス(画像系データ)もキャラクター(文字系データ)も、最終的には同一のグラフィックスとして混ぜてデータ処理する。モニターへの表示も同様である。
 反対に、MS―DOSはキャラクター・ベースのOSとして誕生した。これは特殊事情である。つまり、キャラクターとグラフィックスを分けてデータ処理し、モニターへの表示も別々の画面で表示する。キャラクターとグラフィックスの両方を表示したい時は、複数の画面を重ね合わせ、人の目にはあたかも1画面と見せる。
 このテクニックは、キャラクター重視のアーキテクチャーに基づいている。コンピューターが初めてビジネスに応用された時、色彩感覚や絵画的表現に関する美意識をコンピューターへ持ち込むことは少なかったらしい。少なくともそんな余裕は無かった。とにかく数値計算と文字情報の処理に忙しかった。
 それに当時のパソコンは、記憶量も処理速度も限界があり(現在も褒められたものではないが)、小さな絵でさえ描画し終わるのに30分も掛かるグラフィックスは置いといて、キャラクターだけを扱っている分には、世間が実用性を認めてくれる。
 現在のコンピューターが進歩したとはいえ、現実をリアルに描写する映像情報には太刀打ちならない。
 たとえば家庭用テレビの画面には、少なく見積もっても25万画素(ピクセル)の情報が映し出されている。このカラー画像情報を分析し、コンピューターが自分の内部にデータとして再現するまでに30分から1時間を要する。待つ身はつらい。
 100分の1秒ならば現実的な描画速度と言えようが、これを実現するには、ざっと考えても1画素1CPUを配置しなければならない勘定になる。これこそ未来型の並列コンピューターの構想なのだが、25万個のCPUを搭載したパソコンというのはいかがなものか。
 むしろ「フルカラー1画面100分の1秒描画」を実現したパソコンが世に現われることのほうが、わたしには恐ろしい。
 幸か不幸か、人間は文字と言葉の支援だけで複雑な情緒表現までも伝達できる生物である。突然ライオンが襲いかかってくる生活環境ならば画像処理に全力を投じるべきなのだろうが、都会ではその能力が鈍るほどに安全である。コンピューターがライオンに変身する可能性もない。
 生体工学の分野では、原始人類は一種の画像処理マシンだったのだろうと見なし始めた。現人類も原始人類と似たような情報処理を行なっているが、画像処理に加え、「ことば」による言語処理が重要な意味を持っている。
 コンピューター・グラフィックス(CG)に対して、ある種の人々は熱烈な情熱を寄せる。画像処理に深い関心を寄せるのは当然すぎるほど当然であろう。人類は昔、動物を捕えて食糧としつつ、天敵から身を守ることに全精力を費やしていた。そういう時代には、我々の祖先は大半の情報エネルギーを目から得て生存を図っていた。画像が本能に深く立脚しているのは、人類進化の必然らしい。
 とはいえ、今のところは軍事目的以外にフルカラーのリアルタイム動画をコンピューターに認識させる急ぎの動機も見当たらない。また、そんな危険な動機が存続するうちは、エンジニアの腕前も鈍るであろう。
 繰り返すが、コンピューターにとって、文字データの処理は、画像処理に比べれば、はるかに軽い負担である。なぜなのかと問えば、それは現在のコンピューターがノイマン型であり、逐次処理システムであり、数値演算という遠回しな方法で情報を識別しているからに他ならない。これまたコンピューター開発史における、偶然と必然のなせるわざである。
 初めにコンピューターが画像処理マシンとして開発されていたら、20世紀後半の歴史はずいぶんと変わっていたかもしれない。
 なぜコンピューターは計算処理の用途からスタートしたのだろうか。

    歴史の必然

 一九四六年にアメリカが開発した世界初のコンピューター、エニアック(ENIAC)は、当時は真空管式だった。重さは30トンもあった。
 電源を入れるとビルの灯りが一斉に暗くなるほど電力をたくさん食い、それでいて10桁の10進数だけしか計算できない計算機だった。今なら数センチ四方のLSIの、顕微鏡でなければ見えないミクロの回路に代行させることも造作ない。あるいはプログラム電卓である。
 東西の冷戦が始まろうとしていた当時は、ミサイルの弾道計算という軍事利用が優先課題だったということで、最初のコンピューターが計算処理の単機能マシンだったことは必然だったのかも知れない。
 国家と科学者、技術者たちの狙いは見事に当たり、コンピューター搭載の軍事システムは、大陸間の遠距離の彼方にある目標へ、数十メートルの誤差の範囲内で命中させる精度を持つに至った。この驚異的なミサイル制御システムは、核先制攻撃などの戦略をも決定し、一九四七年〜一九九〇年の43年間に及ぶ東西冷戦構造を決定づけた。
 コンピューター制御の大陸間弾道ミサイルが使われたためしはないから、現時点では必ずしも当時のコンピューターエンジニアがこの件で罪悪を為したとは言い難い。
 かくしてコンピューターは、画像処理のへたくそな機械として生まれたわけである。
 それに英語の国では、文字はせいぜいAからZと0から9のせいぜい36文字、それに記号しか存在しない。日本のように漢字にひらがな、カタカナまでが混在する文化圏に比べ、遥かにデータ処理が楽である。
 英語国のアメリカでコンピューターが発明されたという歴史、これは単なる偶然だろうか。もし漢字圏の国が真っ先にコンピューター開発に着手したとすると、漢字処理に膨大な労力を要したはずだ。巡り合わせの妙に感嘆する。
 大型コンピューターは、その系譜をたどれば、真空管の怪物であるエニアック(ENIAC)に端を発している。
 一方パソコンは、大型コンピューターの本流とはおよそ無縁なテクノロジーがきっかけとなって誕生した。生まれついての異端児というわけだ。発端は、電卓の技術である。それも日本のメーカーが深く関わっていた。
 今はないが、日本にビジコンという電卓メーカーがあった。ビジコン社は電卓回路を簡素化するため、米国インテル社(本社アメリカ・カルフォルニア州シリコンバレー)にIC回路の開発を依頼する。
 そして一九七一年、完成したのがi4004であった。i4004は、4ビット構成ながら、世界初のマイクロプロセッサー、つまりパソコンCPUの第1号としてコンピューター開発史に記録が刻まれている。
 その後インテルは、この金の卵を大切に守り育て、

 8008 8080 8085 8086 8088 80186 80286 80386 80486 80586

……へと連綿と流れる大河に変えた。これがi80系CPU、それにi8086系CPUである。
 ことのほか32ビットCPU、i80386が軍事と民生の用途を問わず世界で爆発的に売れた。日本でもPC98シリーズ32ビット機に搭載されている。
 独特なアーキテクチャー(設計思想)のインテルCPUは、技術者からは難解だといわれて煙たがられながらも、常にトップシェアを確保してきた。

    初めに言語があった

 コンピューター言語は人工言語である。人間にとって、かつて神が人類に言葉と愛を与えたように、全く新しい言語体系の創造であったから、その基礎もまた人間が逐一決めなければならなかった。話し言葉をそのまま機械に理解させようというのは無謀である。
 そこで、自然言語を1文字ずつ数字で表現できるよう、符号(コード)によって体系化し、コンピューターに登録することが企画された。
 コンピューターごとに文字のコードが異なるのでは、のちのち混乱する。そこで別のコンピューターともデータを交換しやすいよう定めたのがコンピューター用の標準コードだった。人類の、ここ三〇〇〇年の歴史を、米国の技術者たちは3年で機械に再現してのけたのだった。
 コンピューターのコード体系として最も普及しているのが、アスキー(ASCII)コードである。
 ASCIIは、American Standard Code for Information Interchange(情報交換用米国標準コード)の略だ。7ビットの情報本体と、誤りを発見する1ビットのパリティチェック情報から成立し、英数字・記号に制御系コードを加えて128種類を表現する。
 これほどパソコンの文字コードが広範に普及する一方、メインフレーム(汎用コンピューター)を製造するメーカー(メインフレーマー)は、パソコンとは別の路線を歩んだ。
 IBMは自社路線、そして非IBMのメインフレーマーたちは寄らば大樹の陰、IBM路線である。
 米国の企業でありながら世界の企業でもあるという自負からか、IBMは自社の汎用コンピューターに独自のコード体系によるEBCDIC(エビシディック)を用いた。
 EBCDICは Extended Binary Coded Decimal Interchange Code の略である。拡張2進化10進コードと訳されている。IBMが開発した。英数字と記号を8ビットのコードとして表現する。
 2進化10進コードとは、10進数の数字(0〜9)を2進数で表現したものである。たとえば10進数の9は2進数で表わせば1001になる。10進数の各桁は2進数では4ビット以内で表現できる。この4ビットに4ビットを追加して8ビットコードとした。
 非IBMメーカーの汎用コンピューターも、大半はEBCDICを使っている。ASCIIコードを採用したMS―DOSとは、汎用コンピューター側のコンバーターという小さなソフトウエアでデータを変換している。

    世界の標準

 IBMのEBCDICも世界的標準なら、MS―DOSも世界的標準である。MS―DOSマシンはなりこそ小さいが、台数は1千万台を超す。MS―DOS側でなく、IBMコンピューター側がコンバーターを用意せざるを得ないところが面白い。大衆が非大衆を従えた、などとかちどきをあげても、別にIBM社やアップル社に迷惑は掛かるまい。
 また、高価なだけに驚異的な画像処理能力のあるマッキントッシュも、マッキントッシュ側でコンバーターを備えている。MS―DOS側で用意している標準コンバーターは、MS―DOS↑↓BASICだけ、というのも商魂のたくましさを感じる。
 ASCIIコードはアメリカのコード基準だから、日本語特有の漢字、ひらがな、カタカナは扱わない。そこで日本は、JISコードを制定してアスキーコードに漢字などを加えた。最大の特徴は、英語にはない全角文字(英数字の半角文字の横2倍の大きさ)を体系に組み入れ、漢字1字ごとに2バイトのコードを割り当てた点である。これは大変な苦労を伴った。
 一般文書中心のJIS第1水準だけで2965字、固有名詞や旧漢字を補足するJIS第2水準が3388字と、なんと6000文字以上ものコードで構成する。記号を除けば36文字強の英語文化圏と比べると、いかにハンディが大きいか。
 かてて加えて、JISコードには、新JIS(一九八三年以降のデータ通信のための標準的な文字コード)、旧JIS(一九七八年から一九八三年に用いられ、今も一部で使用)、それにシフトJIS(パソコン通信で用いている漢字コードのほとんどがシフトJIS)、NEC―JIS(日本電気のパソコン内部で使用するが、日本電気製MS―DOSではシフトJISに変換される)が混在している。
 シフトJISコードは、JISコードとは似て非なるものである。MS―DOSを国産パソコンに移植する時に考案された漢字コードで、MS漢字コードと呼ばれることもある。
 雑然としたコード体系のみならず、全角文字がこれほど多いため、日本語処理は重い処理とならざるを得ない。そこで、日本語ワープロ専用機でもそうだが、MS―DOSマシンを初めとする国産パソコンは、日本語処理を高速に行なうため漢字ROMを本体に装備する。漢字データをディスクで管理すると、それだけで堪え難いほど待ち時間が多くなるからである。
 マッキントッシュは米国製だからクーリエ、ヘルベチカ、タイムスなど各種の英語フォントをディスクに備えている。他に、日本向けには明朝、ゴシックなどの書体と併せ9ポ、12ポ、24ポなどといった膨大なフォントをディスクで管理しなくてはならない。
 これはこれで画面でフォントの形と大きさを確かめながらのWYSIWYG(What You See Is What You Get=画面を見たまま印刷できる)が実現するから、大きな長所であろうが、CPUとディスクの性能を問われることにもなりかねない。
 英数字と記号だけの英語文化圏版MS―DOSは、MS―DOS1・1として日本へも輸入されたが、この頃は日本語表現ができなかった。まだ限られた国際ビジネスマンや研究者、プログラマーだけのOSだった。
 その後、半角のカナを表現でき、かつハードディスク対応のVer1・25が現われたが、これも一般のビジネスマンには手が届かない。
 日本人待望の日本語対応MS―DOS Ver・2、特にMS―DOS2・11がデビューすると、時代は16ビットパソコンとの合流により、MS―DOSの全盛時代へ入る。一九八五年前後のことだった。
 プログラマーの間では、ソフト開発にWord Mastarというエディターが、貿易ビジネスには英文ワープロソフトWordStarが、ビジネス用表計算ソフトはMultiplan、データベースはdBASEΠ.といったパソコンの実戦配備が進んでいた。
 ビジネス戦略は、大小のコンピューターを基礎に展開したのである。この事実を認めない管理職、コンピューターに親しめない人々、そういったアレルギーがあまりにも大きかったので、コンピューターをコンピューターと呼ばずに「マシン(機械)」と呼ぶことを申し合せる企業さえあった。
 近年のMS―DOSは、家計簿や日記にしかパソコンを使わないであろうと思われるユーザーにも高級機のターゲットを広げようといわんばかりに、MS―DOSは末端部分の高機能化を進め続ける。
 ハードディスクや光磁気ディスクなどの周辺装置を接続できるインターフェース規格であるSCSI、あるいはメインメモリーの制約を解放するEMS拡張メモリー、などに対応したVer・3へと機能アップが進んでいる(アメリカではVersion・4)。Ver・5の登場も時間の問題である。
 無料、またはせいぜい2万円足らずのこの基本ソフトが前提としている記憶装置は、いずれも、つい近年まで大型コンピューターだけが独占する排他的装置であった。

    OSの未来

 32ビット機でOS/2またはUNIXが普及するとの予測もあるが、ユーザーが自分で設計できないほどの難しいOSではパソコンの名に価いしない。ワークステーションではOS/2またはUNIXが、パソコンOSの天下はMS―DOSで当面はゆるぎのないところだといわれている。
 とはいえ革命の起きない天下は絶無だから、ある日突然、新しいOSが彗星のようにデビューしないという可能性を、無しとしない。MS―DOSは、人々からいつ捨てられ、どんなOSが代わりを務めるのだろうか。

    時間は環境である

 MS―DOSは、シングルユーザー、シングルタスクのOSである。このことは、MS―DOSに過剰の期待を寄せるのを防ぐために事前に了解しておかなくてはならない。
 つまりMS―DOSの環境では「一人のユーザーがコンピューターを使っている間は、他の人間が同じコンピューターを使用することができない」というシングルユーザーとしての限界である。
 ちなみにUNIXはマルチユーザーOSだから、一台のコンピューターを同時に複数の人間が利用できるように作られている。
 不思議かも知れないが、これはタイムシェアリングという技術により極短時間で1台のCPUを切り替えているため、人間の時間感覚では同時に別々の人が使用しているかのように感じられるに過ぎない。
 げに時間とは環境なり、である。空間を有効に使うため、時間は存在するのだろうか。寛大なことに、コンピューターとソフトウエアには、時を遊ぶ機能を与えられたのである。
 ただUNIXマシンは高価で、しかもマルチユーザー環境を構築するのはネットワーク化(LANなど)が必要だから、人数分と同じ台数だけMS―DOSマシンを配置したほうが効率的なこともあるだろう。一概にMS―DOSマシンだけが不利とばかりはいえない。
 しかもマルチユーザーOSのマシン群で複数の人が使用を始めたとたん、コンピューターの処理スピードがてきめんに遅くなってしまいがちなので、どちらが妥当かの単純比較はできない。
 MS―DOSはシングルタスクOSなので、1台のコンピューターが同時に複数の仕事を処理することはできない。例外として疑似的マルチタスクが可能である。この場合、未使用領域のメモリーを利用して複数のアプリケーション・ソフトを起動し、相互に切り替える程度のことしか期待できない。
 一方、OS/2やUNIXは、マルチタスクの能力を持つマルチタスクOSである。たとえばデータベースを利用中に、通信回線をオープンにしておき、着信に合わせて通信を行なう、といった芸当が可能である。

    OSの2つの顔

 OSは2つの顔を使い分けなければならない。OSは、アプリケーションにサービスを提供する一方、CPUを支配すべき運命の星の下に生まれついた存在である。エンジニアたちも、天地の双方を睨んだ構えでMS―DOS開発に当たったに違いない。
 CPUは、Central Processing Unit を略して命名された。コンピューターのCPUは、人間では頭脳に相当する中枢回路である。ライアル・ワトソンら、ニューサイエンスの旗手たちは「人間の頭脳はハードウエアなのか、それともソフトウエアなのか」を問い始めた。コンピューターのCPUを理解することが、こうしたテーマの考察にヒントを与えるようである、ということも着目されて久しい。
 そもそも人工知能(AI)研究は、AIシステムを完成させることよりも、むしろ人間の知性の神秘を解き明かすことにあった。
   ◇
 CPUが担当する役割は、主に2つある。それは、演算と制御の2つの機能である。
 演算は、文字通り足し算などを実行する。現代のコンピューターは、初期のコンピューターと大いに違う。もちろん計算はする。しかし演算の働きは、それ以上である。コード化された情報そのもの、すなわち文字や、パターン化された画像を管理する、といったほうが的を射ているだろう。
 たとえば半角の?マークは、JISのコード体系で<293F>というコードに割り振られている。
 たとえ高度に芸術的なカラーグラフィックスであっても、コンピューターは仮想の画面をLSIのメモリー内部に展開し、これを関数計算などの手法で描画しているので、それがガマガエルの顔であろうがエリザベス・テーラーの顔であろうが、

    10011110010110001……

といった数字の羅列にしか過ぎない。
 ところがいったんCPUのフィルターを通ったとたん、それは一瞬にしてあなたの心に感動を呼び起こす。コンピューターは美の真の価値の足元にも及ばないが、それでも価値を表現するものである。
 CPUは、制御機能を与えられているから、ディスクやディスプレイ、キーボードといった装置の支配権を握っている。ただしソフトウエアが無ければ、CPUというハードウエア単独では全く無力である。CPUが制御権をもつと見るのか、あるいはOSがヘゲモニーを握ると解釈するのかは、自由だ。
 近年、CPU回路は激しいスピードで集積化が進み、新しい機種ではCPUの機能を超LSIに搭載している。処理速度のスピードアップもさることながら、超LSIに関する同じテクノロジーはメモリー回路にも同時進行する。
 終着点は、恐るべき存在の誕生であろう、という予感を禁じ得ない。図り知れない規模の人工記憶、そして記憶をコントロールする超高速制御マシン。人間の知性をいずれ光のように追い越し、追い越した瞬間から無限に成長し続けるであろうと、想像をただ逞しくするのみだ。
 パソコンのCPUをマイクロプロセッサー(microprocessor)ということもある。マイクロプロセッサーは時にMPU(MicroProcessing Unit=超小型演算処理装置)と略されるが、現実的には、モトローラ社系のCPUメーカーがCPUのことを「MPU」と呼び、その他のチップメーカーではCPUと呼ぶのが一般的のようである。
 MS―DOSはi8086というCPUのためのOSとして誕生した(元を正せばi8088)。i8086は、i80286、i80386へと性能アップを実現してきた。これらのCPUをi8086系CPUと呼んでいる。どちらかというと86系CPUといったほうがポピュラーかもしれない。

    インテルのi8086
 i8086系CPU(米国インテル社)のマシンは、OA市場に強い。ビジネスパソコンの分野では早くからi8086系CPUが主流派を占めてきた。なおビジネスパソコンの主流OSはMS―DOSだ、というが、ビジネスパソコンは「ゲーム機以外のパソコン」という意味合いなので、アカデミックな用途にもビジネスパソコンは使われているというのが常識である。
 ちなみにMS―DOSは、初代9801に搭載されたことで有名なi8086の前身であるi8088のためのOSであった。MS―DOSを日本国内にかくも広めたのはIBMでもシャープでもなく、実にPC―9801ただ一機種の功績である。
 日本電気のPC―9801が一九八二年にデビューした当時、日本電気はIBMパソコンにならってMS―DOSの採用に踏み切った。富士通と三菱はIBMの力を侮っていた。両社は、自社のパソコンにCP/M―86を採用してスタートを切ったのである。
 86系CPUの進歩の歴史は、徹底して過去にこだわり続けた歴史である。旧バージョンのソフトウエア資産が使えないのでは、ユーザーが企業であると個人であるとを問わず、困惑するばかりである。データに互換性がある、といわれても、アプリケーション・ソフト(俗称アプリ、パッケージ・ソフトなどの業務別ソフトウエアのこと)が使えなくなるのはなんとしても困る。ソフトウエアを販売するシステムハウスも、腰を落ち着けて優秀なプログラムを開発しにくい。
 コンピューター業界の頂点に立つに至った86系CPUの開発元、米国インテル社は、単にチップの性能を向上することに目を奪われるだけではなかった。徹底して、あえて過去のソフトウエア資産にこだわり続けた。

    モトローラの68系MPU(非MS―DOS系CPU)
 汎用コンピューターの技術者たちの一部が中心となり、LSIでコンピューターを小型化しようと考案、開発したのが68系MPUファミリーだった。8ビットの6800から始まり、現在は68030が現役バリバリで活躍中である。MS―DOSと道連れのi8086系CPUを好敵手とする。
 たとえば米国アップル社のマッキントッシュPlusと同SE、シャープの個性派パソコンX68000(基本ソフトはOS―9を採用)、ビデオゲームの「メガドライブ」などは、68系MPUの68000を搭載している。
 68000はモトローラ社が一九七九年に発表した16ビットMPUで、6万8000個のトランジスターを集積している。
 68系MPUは、性能をレベルアップするたび、旧MPUに蓄積されたソフトウエア資産を捨てる潔さでパワーを向上させてきた。人間は輪廻転生を繰り返すが、同時に過去と決別して新しく生まれ変わる、との人生観に立った釈迦、イエス・キリストを踏襲したかのようだ。
 68系MPUを搭載するマシンは、概して個性が強いのが特徴である。たとえば68030を搭載したマッキントッシュПciは、スピーディなCPUと数値演算コプロセッサーを力任せに用いてGUI(グラフィカル・ユーザー・インターフェース)のフルグラフィックス画面を運用する。
 RISCチップに演算処理を任せて1677万色の24ビット・フルカラーを表示すると、その美しさに衝撃を受ける。マウスという手の平大の装置で、芸術作品にメスを入れるように画像を切り貼りできると分かると、ショックは倍増する。もちろんMS―DOSマシンでも1677万色のフルカラーCGを描画できるので、ぜひ試されたい。
 半面、マッキントッシュが管理するファイルはグラフィカルなだけに互換性に乏しく、マッキントッシュ・ファミリーの中だけで孤高を保っているという印象は否めない。せいぜい文字列のみをテキスト形式のファイルに変換して、PC―DOS(IBM系MS―DOS)やMS―DOSと糸のように細い交流を持つなどである。
 この点、PC―9801を初めとするi8086系列下のMS―DOSファミリーは、ASCIIコードがパソコン間の水平的な互換性を保ち、EBCDIC(エビシディック)がIBM機と非IBM機を問わず垂直的(パソコンと大型コンピューター間)な互換性を保ち続けていることも手伝って、大いなる市場を形成してきた。
 このことは、MS―DOSが最初、IBM PCのOSであるPC―DOS(MS―DOSと内容は同じ)として市場にデビューしたのと無関係ではない。
 このデータの汎用性というメリットは、思いのほか強力な武器となっている。考えても欲しい。パソコンのデータが孤立したら、情報をどうやって広めたら良いのだろう。鳥の群れが一斉に羽ばたく光景は感動的だが、鳥たちのあの神秘的なコミュニケーションが失われたら鳥は鳥でなくなってしまう。あくまでもコンピューターは情報処理マシンだ。
 もちろん異機種間でLANなどのネットワークを構築することはできる。しかし費用、技術、メンテナンスなどの理由で、データ統合の困難が伴うことだけは、あらかじめ承知しておかなければならないだろう。
 68系列の32ビットMPUとしては68020や68030がある。マッキントッシュΠfxやスティーブン・P・ジョブスのEWS「NeXT」が搭載した68030は、メモリー管理機能を内蔵する高性能CPUだ。
 EWS(エンジニアリング・ワークステーション)では、ほとんどの機種が68系CPUとUNIX(マルチユーザー・マルチタスクのOS)のコンビネーションを採用しているが、一般のビジネスパソコンはi80286/i80386とMS―DOSを採用していて、鮮やかな対比をなす。
 68系MPUは、DECコンピューターを核として、OSはUNIX、プログラミング言語はC、というコンビネーションを産んだ。UNIXが68系MPUと密接なのは、決して偶然ではない。
 なおページプリンターのドライバーや、ディスクドライブの制御装置に68000ファミリーが多く使われているのは興味深い。いわば役割分担的共存といえよう。
 68系のMPUは、主流であり続けようとするMS―DOSとのコンビネーションが芳しくないため、ライバルである米国インテル社のi8086系CPUにヘゲモニーを奪われてしまった。とはいえマニアックな愛好家の支持は厚いのはなぜなのだろう。

    MS―WINDOWSにかける期待
 MS―DOSの欠点であるメインメモリーの制限(640KBが限界)をEMSという拡張メモリーに解消させ、GUIに関してはMS―WINDOWSに期待を寄せるのが最近のMS―DOSファミリーの傾向だが、ことMS―WINDOWSに関しては屋上屋を重ねる感が強いといえるだろう。
 MS―WINDOWSの動作の遅さをマシンの性能向上(32ビット機でないと実用性が薄い)で補うなどの改善が施されているが、どうにもマッキントッシュの二番煎じとの評価は抑え難いようだ。
 ところが一九九〇年代後半、動作速度が25MHz、33MHzといった高速CPUマシンが大衆化するに至って、事態は変わった。
 ちなみにMS―WINDOWSは、MS―DOSの環境下に重ねるようにしてセットし、さらにMS―WINDOWS環境下にアプリケーション・ソフトをセットするという3段ロケット形式で実行する。
 これでは動作が鈍くなるのはもっともで、16MHzの32ビット機でさえモタモタしてしまう。
 またMS―WINDOWSにハードディスクが必須だというのはご時世だとしても、2MB以上のRAM(拡張メモリーの一種:オプションのメモリー)も組み合わせなければならず、これらの装置群をユーザー自身にインストールさせるというのは酷だ。
 最近は使い勝手の良いインストール・プログラムの支援で、簡単にMS―WINDOWSを組み込めるが、やはり多少はおっくうである。
 メーカーや販売元に、インストール後の出荷を要求するのは、筋違いであることも承知しておかねばならない。MS―DOSのシステムアップは独力でやるものだ。ユーザー自身(法人ユーザーであっても構わない)が設計するのでなければ、MS―DOSのシステムは、手の届かないところへ消えてしまう。
 とはいえ、それでもMS―WINDOWSがジワリと浸透するのを見聞きすると、ある種の凄みを感じるのだ。
 パソコンのCPUは、次の、2本の大河のような流れに分岐して発展してきた。
68系MPU(開発メーカーはモトローラ社)
 6800     8ビット
 6809     8ビット(FM―77)
 68000   16ビット(MacPlus)    …1979年発表
 68020   32ビット(MacП)
 68030   32ビット(NEWS、MacПci)

i8086系CPU(開発元はインテル、ザイログ、日本電気)
 i8080    8ビット…1974年
 i8085    8ビット
 Z80      8ビット(PC―8001、MSX)…1976年発表
 i8088   16ビット(IBM PC)
 i8086   16ビット(初代PC―9801)  …1978年発表
 V30     16ビット(PC―98VM)
 i80286  16ビット(PC98RX、IBM PC/AT)
                           …1982年発表
 i80386  32ビット(PC98RAなど)   …1985年発表
 i80486  32ビット(京セラ、HP)
             ∧i:インテル社、Z:ザイログ、V:日本電気∨
    パソコンのCPUの働き
 MPUは、狭い意味ではCPUの主要な部分を一チップに納めたものをいう。パソコンのCPUは、MPU一個とその周辺LSIで構成されているのがふつうである。顕微鏡下に広がるLSIの広大な電子回路にデジタル信号が飛び交う光景を想像するのが、わたしは好きだ。
 CPUは、主として演算回路と制御回路とからなり、新しいものはメモリー管理や浮動小数点演算の機能も内蔵している。
 CPUは、IC、LSI、超LSIへと狂ったようなスピードで集積化が進み、同時に小型化し続ける。
 米国インテル社が一九七四年に発表したi8080(8ビットCPU)は、集積トランジスターの数が4800個だった。だが一九七八年発表のi8086(16ビットCPU、国産機では初代PC―9801が有名)で一躍29000個を数え、PC―9801RXやIBM PC/ATのi80286では13万個、32ビットCPUのi80386は27万5000個という顕微鏡的な集積度を誇るに至っている。

    CPUの離陸

 ワードプロセッサーや小規模の表計算(スプレッドシート)としての使途ならば、当面のビジネス応用は16ビットマシンで満足できた。
 16ビットCPUは、日本電気のV30、米国インテル社のi80286、米国モトローラ社の68000が有名である。国産パソコンをビジネスに使おうと決めた時の選択肢は、これらのCPUで構成されるマシン、ということになる。
 たとえばdBASEШPlusなどのRDB(リレーショナル・データベース)で10,000件以上の大規模なデータベースを構築する場合、あるいはカラーグラフィックスで画像をたくさん処理したい場合、などのシステムを想定すると、唯一の選択肢は32ビットマシン、ということになる。
 手際良く仕事をこなしたければ、ワードプロセッサー用途といえども、32ビットマシンを選択しなければならないこともある。32ビットマシンの価格帯は、既に個人の手に届くところにあり、操作法は16ビットマシンのそれとなんら変わるところはない。ただソフトウエアが見違えるようにスムースに走り出すだけの話だ。
 ものの見方を変えれば、10万件程度までの大規模データベースを構築する企業、あるいはカラーグラフィックスでイラストやロゴを描くデザイン事務所、20ページ以内のページ建ての日刊紙、300ページ以内の単行本か薄手の週刊誌の出版社、こういったユースならば、マシンは上位機種の32ビットパソコンで十分なのである。
 このことは、メインフレームを導入して来た企業には意外かもしれない。また同じ32ビット機を採用するなら、ワークステーションとUNIXが賢い選択ではないか、とも思われるかもしれない。この話題を喜びそうなのはハードウエア・メーカーとシステムハウスだけのようなので、別の機会に触れることにしたい。
 CPUの高性能化は、周辺機器の発展をも促した。コンビネーションを誤るとバランスを欠いてしまい、システムを歪ませる結果になりかねない。
 32ビットパソコンに限らないのだが、たとえば記憶装置や画像読み取り装置とのコネクションにはSCSI(スカジィ)という新規格のインターフェースがふさわしい。SCSIインターフェースはデータのハイスピード転送を約束してくれるだけでなく、巨大な記憶空間の提供などの特権がユーザーに与えられる。
 それにしても頭脳はジェネレーターなのだろうか、それとも単なる記憶装置なのだろうか。あるいはオブジェクト的なソフトウエアなのだろうか? 二十一世紀の科学技術研究は、こうした疑問を解明するために存続する。
 演算が膨大に必要な業務だったり、A6判以上の大きさのカラー画像データを頻繁に扱う仕事の場合、CPUの演算を助ける数値演算コプロセッサー(ニューメリック・データ・コプロセッサー:コプロ、NDPとも)が必要になる。
 コプロはCPUの数値演算処理だけを肩代わりするチップ(Chip)である。CPUと一体になって動作し、演算処理が高速かつ高精度に機能アップする。チップ内に計算用のレジスターを持ち、CPUが単独で倍精度型計算を行なう時に起こる「丸め誤差」が大幅に改善される。
 コプロセッサーを使うと性能向上が期待できる業務には、CAD/CAM、C/FORTRAN/BASICなどのプログラミング言語の一部処理、技術計算、統計計算、関数計算を多用する表計算などがある。
 アプリケーション・ソフトならば、表計算ソフトの某(ただしニューバージョン)、CADソフトの某などがコプロの恩恵に預かることができる。
 コプロセッサーを使うと性能が向上する言語に、C、FORTRAN、LISP、BASIC、PASCAL、C++、MIND、Prologなどがある
 8087(80287、80387)は、それぞれ8086(80286、80386)の数値演算プロセッサーである。コプロとCPUには強い親子関係があり、非常に排他的である。
 コプロセッサーが受け持つ演算処理は、四則演算、三角関数・対数関数など基本関数、円周率などの定数がある。I/O処理を受け持つコプロセッサーもあり、I/Oプロセッサーと呼ばれている。
 適切にコプロを搭載したパソコンは、まるでスーパーチャージャー搭載のスポーツカーのようにダッシュし始めるだろう。
 さらに高速なマシンを望むなら、次に説明するRISCという新しいタイプのCPUを搭載したパソコン/ワークステーションが適している。1677万色のフルカラーをモニター上で高速表示する意図のもとにRISCを搭載したビデオボードがパソコン向けに発表され、話題を呼んでもいる。
 ただし、RISCマシンでもMS―DOSが支配力を維持できるかどうかは、疑問が残る。逆に、RISC万能の世論は、案外とその筋の振りまいた幻想かも知れない。あるいはMS―DOSとそのユーザーが変わるべき時なのだろうか。
 パソコンの処理速度は、そのパソコンが搭載するCPUのクロック周波数(単位はMHz)にほぼ比例する。ちょうど人間のIQのようである。この数値が大きいほどマシンの動作スピードが速い。
 ただし、2つのマシンの性能をクロック周波数で比較する時は、同じCPUでないと、正しい判断にならない。たとえば同じ10MHzのV30マシンと286マシンは、286マシンのほうがずっと高速である。16MHzのi80386(32ビットCPU)と、16MHzのi80286(16ビット)を比べれば、i80386がはるかに速い。
 現在、16ビット機は12〜16MHz、32ビット機は16〜33MHzのクロック・スピードが主流だが、マッキントッシュПfxのような40MHzマシンの話題が沸騰する時世である。なぜそんなにスピードを追究するのかと聞くと、判で押したように「画像です」という答えが返って来る。
 一九九五年ころには100MHz機が実現するだろうといわれている。しかしこれも当てにならない。わたしはもっと早く32ビットの100MHz機が普及すると思っている。
 これは猛烈なスピードである。さらに64ビットの小型マシンが大衆化され、これ以上の性能を持つに至った時代に、我々はこの力を何に使うか、人生の設計を何一つ得ていないことに気付く。社会の構成員の相当数が、決してコンピューターに対する恐怖心を捨て切れていない。わたし自身、そろそろ一戦を交えてもいいような気もするが、もう少し時間が必要のようだ。
 パソコンの高速化は、決して大企業向け大容量データ処理だけに威力を発揮するのではなく、画像と音響を含む大衆向けのマルチメディアへと結実すると見られている。メディアの革新は、いやおうなく人々の意識をも変えることに注目しなければならない。この間、多くのビジネスチャンスを産み、あらゆる産業に繁栄をもたらすだろう。
 こうして高性能化へ突進するコンピューターだが、UNIXのようなマルチユーザーOSは汎用パソコンへ、MS―DOSは専用パソコン(たとえば通信パソコン、ワードプロセッサー、表計算マシンなど)へと分化するという巷の予測には、全面的には賛成しかねる。利用者側の願望は、とどのつまりはコンパクトな情報統合マシンであることに思いを致さなければならないだろう。

    64ビットパソコンと家庭用ロボット

 64ビットパソコンは、一九九五年以降に実現されるとの予測下にある夢のパソコンである。構想段階だとはいうものの、米国のCPUメーカーであるインテル社が、内部処理64ビットの次代CPU、i80586を開発している。
 ただし、64ビットCPUのみならず、64ビットバス、マシンのスピードに見合った新世代のOSが必要である。周辺機器やアプリケーション・ソフトの開発も並行して進められなければ、実りは少ない。未来を読む人たちは、むしろOSを含むソフトウエアの動く気配に敏感であらねばならない。
 技術的、経済的な理由から、今まではハードウエア、ソフトウエア、それぞれの分野の足並がそろわなかった。どちらかといえばCPUが先に走り、OSは二歩も三歩も遅れて歩いていた。アプリケーション・ソフトは、といえば、ひたすら忍の一字で待つだけであった。
 ある日突然、コンピューター産業が離陸する可能性がある。それは家庭用ロボットの分野に他ならない。ロボットだからといって人間を模したスタイルだとは限らないので、あらかじめ断わっておきたい。
 FA(Factory Automation / Flexible Automation=ファクトリー・オートメーション)とパソコンの関係に付いては、興味が尽きない。次の意見は、傾聴の価値がある。
 「コンピューターの支援のもとに工場を自動化するFAの技術が、パソコンのテクノロジーとドッキングして初めて家庭用ロボットは実現する」
 工場の産業ロボット(これもちっとも人間に似ていない)やNC(Numerical Control=数値制御)工作機器は、使途が広い。素人が思う以上に汎用性に富んでいる。
 これは、専用マシンでは工場経営の採算がとれないという経済的理由から実現したものである。欧米では「ソフトウエアの変更により柔軟性に富む自動化」というニュアンスでFAをと呼ぶくらいである。
 FAには、CAD/CAMによる設計という精密な図形処理テクノロジー、工業材料の運搬という交通技術、工作機械のNCや工業ロボットによる細かい手仕事、製品検査というチェック機能など、全工程にわたって百科事典的先端技術が総動員されてきた。
 コンピューター・コントロールによって、省力化どころか、徹底した無人化システムが現実のものになっているのである。

    スーパーパソコン
 i586単独の処理速度を見ると、30MIPS以上という大型コンピューター並みの性能(一九九〇年現在)をクリアする。IBMがパソコン市場に参入した年の一九八一年当時、クレイ社のスーパーコンピューターの性能は約100MIPSだったから、i586がいかなる性能かは理解できると思う。こうした高性能パソコンが文明をどう変革するか。
 世界規模のコンピューター情報化社会、工場とオフィスの全自動化、知的活動のコンピューター全面支援、といった未来志向は、ある時点での全面見直しの必要性をなしとしない。監視的、管理的、政治的なコンピューター支配は悪夢である。悪夢も改革も、ある日突然訪れる。

    パソコンの未来動向

 RISC(Reduced Instruction Set Computer=リスク)という新技術がある。CPUに対する基本的な命令を減らして身軽にし、処理スピードを飛躍的に向上させたCPUをRISC(縮小命令セット・コンピューター)という。
 技術的にはRISCチップのスピードアップを図る上での壁はなく、毎年2倍もの性能向上も夢ではないとされている。RISCのコストパフォーマンスを向上させる努力も順調に進みつつあり、今後の価格低下は衝撃的ですらあるようだ。
 一九八九年半ばからRISCマシンが市場に登場、68040だと20MIPS近い処理速度を実現してる。
 先陣を切って日本市場にデビューした東芝のRISCマシン、SPARC LTは、LT(ラップトップ)ながら13・2MIPSの性能を誇る。スタンドアローンのパソコンとしても使えるが、大型コンピューターとリンクし、メインフレーム端末として活用するのも悪くはない。
 このマシンはUNIXの環境で動くが、MS―DOSもCPUの超高速化に合わせて変わるべきなのかもしれない。MS―DOSがいつまで生き残るかも分からない。
 RISCが新型チップなら、CISC(Complex Instruction Set Computer=シスク)「従来型のCPU」である。i80286/i80386、68020/68030などのCPUは、そのメカニズムから、複雑命令セット・コンピューターと呼ばれている。
 CISCマシンの強みはソフトウエア資産が大量に形成されていることである。いかに高性能でも、優秀なソフトウエアがなければ実地に使うことができない。

    OSが提供する情報圏

 情報は、蓄積されて大きな価値を産む。コンピューターでは、生データをディスクという記憶装置に蓄える仕組みになっている。生データは、アプリケーション・ソフトで加工されて情報となる。
 コンピューターは自分で情報を生産する動機がないので、コンピューターの外部からデータ入力されなければならない。最もポピュラーな入力装置はキーボードである。
 人間がキーボードから指でタイプインしたデータは、電気信号となってMS―DOSのシステムがキャッチするところとなり、いったんメモリーが記憶する。
 データを入力する存在は人だけとは限らない。装置類(デバイス)のことも多い。キーボードの他の入力装置として、通信ポート(パソコンではRS―232Cという統一規格が圧倒的)、画像データを機械で読み取るイメージスキャナーなどがあることを忘れてはならない。
 コンピューターは常識を超えている。脱常識をもたらしもする。コンピューターの普及とは、とりあえずは意識革命なのである。
 情報は、外部へ出力されなければ人間が利用できないので、無意味である。そこでコンピューターでは出力という機能が備わっている。
 典型的な出力装置はディスプレイ(モニターともいう)である。もちろんこれを見るのは人間だが、ディスプレイ端末と同じポート(窓=コンセントの一種)を利用してペーパーやフィルムに出力することも可能だ。これがビデオプロセッサー(画面に写った映像をプリントアウトする)などと呼ばれるDTP(デスクトップ・パブリッシング)の花形装置である。
 同様に、プリンターも出力装置の一種だ。印刷用紙に文字や映像をプリントアウトするのが役目で、例外的に映像データや音声データをプリントアウトのポートから入出力することもある。
 ちなみに、優れたアイデアは、入出力の方向をねじって交差させるところから生じるという。「名案は交点である」という次第である。

    主体の逆転

 出力/入力(入出力=input and output=I/Oと略す)は、情報の流れる向きが逆だが、装置によっては入出力の両方(たとえばRS―232Cを介した通信モデム)を担当したり、または本来は出力装置のはずのプリンターがイメージスキャナーとしてデータ入力を引き受けることもある。
 入力/出力は、あくまでも人間から見た方向なので、気を付けなくてはならない。誰にでも起こり得ることだが、時にはユーザーの主体感覚がパソコンに転移してしまって、入出力関係の認識が逆転することもある。ちょうど、自他の区別が付かなくなってしまうようなものだ。
 この逆転現象は異常なことでも病的なことでもなく、だれにでも起こり得ることである。すぐに間違いに気付くだろうし、またすぐに元に戻るだろう。
 パソコン通信ネットワークで「売ります」「買います」という電子掲示板コーナーがあるが、もしあなたが中古パソコンを誰かから譲ってもらいたいのなら「売ります」のボードを開かなくてはならないし、中古パソコンを処分したいのなら「買います」のボードへあなたのメッセージを登録する必要がある。
 このように情報の性質は単純ななかにも、とんだ落とし穴が待っている。情報の流れをビジュアルに把握しながらパソコンを使わなければならない。抽象思考を心の中で画像(イメージ)に展開する能力は、独りでに芽生えるものなので、意識して努力する必要も他人に習う必要も、全くない。
 OSは上位レベルの基本ソフトである。OSは(当然MS―DOSも)マシンに強く帰属するが、アプリケーション・ソフトに対しては上位性を保っている。OSの頭越しにマシンに直接に依存する設計のアプリケーション・ソフトもないわけではないが、互換性に乏しくなる。
 OSに対して主体的に上位性を持てるのは、開発者でありユーザーである人間をおいて他にない。MS―DOSではユーザーは常にシステム管理者である。

    スーパーユーザー

 なおUNIXシステムには、スーパーユーザー(super user)という概念が用意されていて、興味を引く。これは排他的管理体制といって良かろう。
 UNIXシステムはマルチユーザー/マルチタスクを実現しているが、だからこそUNIXの設計者はファイルの保護を中心とした独自のセキュリティシステムも含めておいた。しかし、必然的に、システム上でこのセキュリティシステムを無視できる1人のユーザーがいなければシステム管理が行なえない。
 スーパーユーザーはシステム管理を行なう必要性から設けられたもので、システム上のファイルやディレクトリーなど、いかなる生成、いかなる消滅をも自由に行なえるという特権をスーパーユーザーは握っている。
 rootとも呼ばれ、#のプロンプトがUNIXシステムのディスプレイに表示されていれば、それはスーパーユーザーであることを示す。ネットワーク参加者は知っておかないと困るはずである。
 シングルユーザーOSであるMS―DOSでは、ユーザーはいかなる場合においてもスーパーユーザーである。MS―DOSコマンドは万人向けに設計されているので、あなたは必要な装置を十分に制御することができる。
 ワープロソフトや表計算ソフトなどのアプリケーション・ソフトのレベルへと降りるならば、それぞれの実務に専念できる代わりに、細やかなシステム管理が犠牲になることを痛感させられるだろう。これは専門特化の代償ともいうべき犠牲である。
 逆にあなたが、簡素にして深遠なMS―DOSコマンドモードに陣取っているならば、ディスクの初期化やファイルの再配置などは自由自在のはずだ。しかし表計算はおろか、足し算、掛け算の1つでさえ思うに任せない。OSにしてみれば「良きに計らえ」とでも言わんばかりの風情である。
 このあたりアプリケーション・ソフトが責任を取って、システムの仕事をアプリケーション側から実行できるようなメニューを設けていることもある。
 これでは隔靴掻痒だと、MS―DOSへ直行できる機能をもたせたワープロソフトもある。ファンクション・キーに「システム」という項目を割り振っているのはこのことだ。要はMS―DOSコマンドモードへ直行することである。
 システムからアプリケーションへ戻れないのでは自殺行為(せっかくアプリケーション上で作成したファイルがご破算になってしまう)なので、その配慮がなされているのは常識だ。

    上位/下位の概念
 こうした方向性から、「ならばアプリケーション・ソフトが上位であり、下位なのはOSのほうではないか」と疑問を抱かれる向きもあろうかと思う。それは違う。コンピューターにとってはシステム的に原始的な、秘められた仕事が上位であって、より具体的な仕事の実行は下位に属する、人間にはそういった印象を与えるものだ。
 こうした価値の逆転は、MS―DOS特有の情報管理体系であるディレクトリー構造(Tree構造とも)についても同様の逆転劇が明らかになるので、あなた自身の世界観、あなたの属する組織のありようなどとも絡めながら思考すると、面白い結果が得られるのかもしれない。
 またコンピューター言語に関しても、価値の逆転現象を垣間見ることができる。人間が文字と言葉として使う言語を自然言語といい、コンピューターが理解できる言語を人工言語(プログラミング言語)というが、人工言語の中で最も自然言語に近い(つまり最も人間に近い)プログラミング言語が高級言語(high level language)なのだ。
 人間が最も理解しやすいプログラミング言語が高級言語であると言い換えることもできる。
 とかく「BASICは簡単にマスターできるから高級言語ではない」「高等テクニックを要するアセンブラーは高級言語である」と発想しがちだが、これはいずれも錯覚である。BASICはティピカルな高級言語であり、コンピューターが唯一理解できる0と1の2進数と、人間が理解しやすい自然な言葉(RUN、LISTなど)との間を翻訳している。
 南米のある地方には、コンピューター言語としか思えない言語が現存し、先住民が使っているが、謎めいているので空想の翼はとめどなく広がってゆく。







2章 支配力


    情報管理の体系

 MS―DOSはデータ蓄積装置であるディスクを巧みに管理する基本ソフトであり、フレキシブルな情報管理システムである。情報をファイルという分かりやすい単位でディスクに記憶する。かくして我々ユーザーは、セクターやクラスターなどというデータ管理上の難解な技術的問題に悩まされることなく、ファイルというワンクッションをおいて、まるで書類ファイルの感覚でエレクトロニックな情報に接することができる。
 ここで念頭に置かねばならないことは、ファイル化されて保存されているデータは、MS―DOSがディスクから読み込んだ段階で、いったんメモリーにプールされ、しかるべき後に利用に供されるというプロセスを踏む、というシステムである。
 入門者がしばしば誤解することは、メモリーとディスクの違いである。コンピューターのメモリーは、非常に動的(ダイナミック)に絶え間なく活動しながら、あたかも情報そのもの、あるいは生物体であるかのように振舞う。またメモリーの電源を切ると、メモリーの内容は瞬時に消える。
 例外的に、ROM(Read Only Memory)は、工場出荷時に、記憶内容が生産者の手で焼き付けられるため、電源を失っても記憶内容が消えることはない。その代わりユーザーは、ROMライターという持ちつけない道具で手を加えない限り、記憶内容を変更することができない。たとえばROM―DOSは、ROMが記憶するMS―DOSである。
 MS―DOSはフロッピーディスクにファイルを記録して一般ユーザーへ提供されてきた。しかし最近、ROM―DOSが業界に注目されている。国内出荷は一九八九年十月から。小型のノートパソコンやワードプロセッサー、家電製品、自動販売機などに応用されている。ミニ頭脳というわけだ。最近の軽量ノートパソコンは、例外なくROM―DOSを搭載していると思って間違いない。
 一方、合成樹脂やアルミニウムの円盤(ディスク)を記憶媒体として作られているディスク装置は、これを情報体として観察すると、セラミックスでできているメモリーのチップに比べ、極めて静的(スタティック)な存在であることに気付く。
 ディスク装置に蓄えられている情報は、読み込みが行なわれるまでは変化というものを知らない。意図ある書き込みが実行されるまでは、一切の変化を拒む。
 同じ記憶装置がこれほどまでに違いを見せる理由はただ一つ。メモリーが記憶する情報は、絶えず制御系の直接のコントロール下にあるという事実である。これに対し、ディスク装置に蓄えられている情報が制御系の支配を受ける時は、実に単純なことに、ディスクの読み書き(read & write)に関する命令が実行された時だけだ。
 だからなのだろう、コンピューターを発明した国の母国語である英語(正確には米語)で表現すると、ディスク装置はstorage(貯蔵装置)であって記録の意味合いが強く、メモリーはmemory(記憶装置)である。
 もっとも、かたやICチップとしてコンピューター本体に内蔵されるメモリーを内部記憶装置(internal storage)と呼び、一方でコンピューター本体の外に置かれることの多いディスク装置を外部記憶装置(external storage)と呼ぶ分類もポピュラーだ。
 なぜ内外の区別が付けられたか、コンピューターの筐体の内と外で記憶の本質がどう変わるのかについては、あまり触れられたことが無い。また、ここでは動と静の性質が無視されているので、正しい呼称とは言い難い。
 フロッピーディスクやハードディスク、光磁気ディスクがパソコン本体の内部に格納されることはあっても、メインメモリーがパソコン本体の外にケーブルでつながれている姿を想像するのは滑稽ですらあるから、よほどのパソコン革命でも発生しない限りは外部/内部の分類が幅を利かせそうである。
 もっともメモリーは、MS―DOSが管理できる640KBの容量のメインメモリーと、メインメモリーを拡大するEMSメモリー、それとディスク代わりに使うRAM(Random Acess Memory)、それにROMがあるので、正しく区別しなければ誤解を招く。
 ちなみに大容量のRAMボードをパソコンの拡張ポートに差し込み、RAMディスクと称してディスク装置の代用品として利用する技法が流行している。
 またハードディスク互換RAMディスクと称し、ハードディスク同然に扱えるRAMボードがバックアップバッテリー付きで市販されている。シリコンディスクという商品名で呼ぶサードパーティーもあるようだ。ここではメモリーとディスク装置との違いは無いといって良いだろう。
 なおRAMディスクが廃れないのは、その高速アクセス環境にある。欠点は、価格、それに電源のバックアップ体制にある。電源を切れば、記憶されていたデータは一瞬にして「蒸発」してしまうのである。
 MS―DOSがファイルという情報パッケージを管理するやり方は、決して平板な体系ではない。観念的には、むしろ3次元的な立体構造で行なわれていると考えたほうが明快だろう。時には時系列(という環境)をファイル管理の道具として利用することもしばしばなので、4次元的な情報システムと考えても構わないのかもしれない。
 こうしたMS―DOSのファイル管理体系を階層構造といい、MS―DOS用語では「Tree構造」という。つまり樹木の枝葉のような分岐でファイルを分類し、階層的に保管するわけである。
 パソコンにもいつしか ∧士農工商∨のような序列ができてしまったが、MS―DOSはデータに「序列」の上下を設けることができる。奥深いディレクトリーにしまわれているファイルは、アクセスしにくい代わりに安全に保護されるであろう。

    ディレクトリーの概念

 階層は、ディレクトリー(directory)によって体系化される。ディスクの中に作られるファイルの「登録簿」をディレクトリーといい、この中にファイルを格納できる他、ディレクトリー内部にさらに別のディレクトリーを作成することも当たり前のごとく行なわれている。器の中の器、劇中劇、といった風情だ。
 この管理体系は、自然界の大いなる構造を模倣したかの印象を受ける。優れたシステムは自然界に学べ、との思いを新たにするべきなのだろうが。

    銀河宇宙の模倣

 こうした印象を理解するには、フラクタル理論(fractal theory)を知ることも一つの方法だろう。この理論は、実験的数学の「怪物」と呼ばれている。「フラクタル理論」の命名者は、米国IBMトーマス・J・ワトソン研究所のベノイト・マンデルブロー(マンドルブロットとも)である。一九七五年、提唱した。
 フラクタル理論とは、たとえば海岸線や入道雲のようにどこまでも凹凸が繰り返される自然界の複雑な形は、ミクロ部分にマクロ部分と酷似する不規則な形が現われる―という観点に立って複雑な図形を表現する幾何学理論である。
 自然界にある不規則かつ複雑な形(模様)は、原子の構造と太陽系の構造の関係で分かるように、ミクロ部分とマクロ部分が同じ形をしている。この性質が自然界の一般法則である事実は早くから知られ、「自己相似性」と呼ばれてきた。
 「全体が部分を包括する」、という常識も、考えてみれば深遠な真理であるが、大胆にも「部分が全体を包括する」との新しい視点は、幾何学以外にも広く応用され、哲学や思想にも採用されている。しかも部分と全体は連動するのであるから、神秘的な現象といわざるを得ない。
 ベールに包まれた未知の世界も、ひょんなことで幕を開いてくれるものである。
 フラクタル理論はCG(コンピューターグラフィックス)の新しいテーマとなっているから、研究して見るのも悪くないかも知れない。コンピューターのスクリーンに、全く自然な山や木や雲の風景を描くことができるのは、フラクタル理論の実地応用以外のなにものでもない。
 ミクロとマクロとの神秘的な関係をMS―DOSの構造に追究し続けて見よう。
 MS―DOSのシステムは(つまりコンピューターは)ファイルとディレクトリーの違いを無視しているように見える。MS―DOSによって両者がほぼ同様に扱われていることは、ディレクトリー内部やFAT(File Alocation Table=ファイル配置情報一覧表)を見物すればすぐにでも分かることだが、これは奇妙な印象を受ける。

    器の中の器

 なんとなればファイルは情報のエッセンス本体だし、ディレクトリーは器のはずである。便箋に恋文を書き切れず、封筒に愛の言葉を書き連ねることとは次元が違うことのように思われないだろうか?
 コンピューターのOSが、このようなアーキテクチャー(設計思想)のもとに設計され、効果的に機能していることは、開発者の知性に敬意を表するものだが、とりも直さず情報の器(メディア)は、それ自体が情報であるという事実を実証していることになる。
 こうした不思議さを称して「情報の本質はエネルギーである」と定義する物理学者もいる。たとえば我々が何かを観測すれば、我々の目は、その対象からエネルギーを受け取る。観測する前になかったなんらかの知識を観測対象に関して得るわけだ。
 観測前にはなかった知識を、観測後に得ること(情報というエネルギーを得ること)は、人間だけでなくコンピューターにもできることだ。人間にもコンピューターにも情報蓄積装置があることはアプリオリに自明だが、では、情報を得たことを知る「意識」とは一体何なのだろう。
 パソコンに2つのCPUを持たせ、片方が情報を得た後にもう片方のCPUへその内容を知らせることにすれば、それで意識が生じたことになるのだろうか。だとすれば、なぜ情報系はこんな2度手間を必要とするのだろう。
 人間と機械は、全く異質である。しかし、人間という知的存在を機械を模してモデル化したとたん、案外と永年の疑問が晴れることは事実である。真理と呼ばれる全てのものは相対的であって、空しい。ただ独り美しいのは、万物の調和だけだった。いま哲学と思想が問われている。

    FATは旗手である

 FAT(File Alocation Table)は、セクターの位置、セクターの連結状態などの情報を持っている。FATは記憶媒体(フロッピーディスク、メモリー)を管理するための管理情報のテーブルである。ファイル名を頼りに、実際のデータ記憶位置(アドレス)を見つけるために存在する。つまり情報に立てた旗(これも情報)ということだ。
 FATはディスクの記録媒体そのものに書き込まれており、ファイルの内容を書き換えたり、新しくファイルを作成したりすると、即座に書き換えられる。これはMS―DOSの仕事だ。
 もしFATが破壊されると、ファイル同士が意味もなくつながったり途切れたりするほか、データのつじつまが合わなくなるので、ディスク装置は致命的な損害を被る。
 FATが破壊される原因としては、ハード的なエラーの他、実行させたソフトウエアのバグや暴走などにより、メモリー上に複写されたFAT情報が破壊され、その事実を知らないOSが、破壊されたFATをディスク装置に書き戻すことによる場合が多いようだ。この破壊事故を防ぐ手立てはない。事後、人間のサイドで修復することは非常な困難を伴う。
 ディスク媒体には、FATのほか、ファイル本体の内容を記録するデータ領域があるが、これらの領域は、ディスクの論理フォーマットを実行した時にしか作成されない。
 ディスクの磁気配列を整える物理フォーマットと論理フォーマットの2つを合わせて「初期化」という。
 物理フォーマットと論理フォーマットは、初期化の一連の処理の一環だから、自動的に引き続いて行なわれ、ユーザーは意識しないままMS―DOSの処理が終わるのを待つだけである。
 対象ディスクが自分でシステムを立ち上げる機能を持たせるために行なう処理を「システム転送」という。この処理も初期化の一環だ。データだけを記録するデータディスクを作成する時には、システム転送を回避すべきだろう。記録容量を無駄使いせずに済むというのがその理由である。
 なお、後ほどシステム転送を行なうこともできる。SYS・EXEが実行するSYSコマンドである。
◆◇
 ディレクトリーは、ルートディレクトリーと、その下位のサブディレクトリーで構成する。
 視覚で理解しようとして図解すると、Tree構造におけるサブディレクトリーは、天へ天へとどこまでも伸ばして行くイメージしか描けない。
 しかし実際にMS―DOSでサブディレクトリーを作成してデータ管理を始めると、どうしても我々の想像力は、サブディレクトリーが下へ下へとしか進まないことに気付くだろう。人によってはまれに右へ右へとイメージするらしい。スクリーンの奥へイメージ展開する人もいるようだ。
 人は自己中心的な存在なので、コンピューターを使って管理する情報の体系は、知らず知らずの間に意識の下位へ降りて行く。これに対して自然界のシステムは、枝葉を上へ上へと伸び行くことのほうがフィットしやすい。自然界の摂理と機械に教わりながら、これも一つのシステム思考、と考えるのも悪くはない。
 ルートディレクトリーは、ディスクを初期化した時に自動的にただ1つ作成される領域である。
 ルートディレクトリーを数多く持ちたいなら、フロッピーディスクを数の分だけ初期化する。ハードディスクなら、1台を望む数だけ論理分割しなくてはならない。ただしMS―DOS標準フォーマットでは不可能である。拡張フォーマットならば最大8個のルートディレクトリーを持てるが、うち4個をスリープ状態にせざるを得ない。これで十分だとは思うが、これで足りなければハードディスクの台数を増やすべきだ。
 一方、我々がファイルを分類し、分割してディスクに格納するためのディレクトリーをサブディレクトリーといい、ユーザー自身が作ることになる。
 世界に例えると、地球がルートディレクトリー、国家が筆頭のサブディレクトリー、州や都道府県が下位のサブディレクトリー、1人1人の人間がファイル、ということになる。
 サブディレクトリーを多くすれば、管理上の弊害を生じる。かといってサブディレクトリーなし、とすると、支障をきたす。痛し痒しである。
 サブディレクトリーは、ファイルの名前と同様にディレクトリー名を付けなければならない。たとえば文書ファイルを保管するためのディレクトリーには「TEXT」といったようなネーミングを行なうと分かりやすくなる。
 ただしルートディレクトリーだけは、あらかじめMS―DOSのシステムのルールに従って、¥と命名されている(JISコードを採用している日本のパソコンの場合)。IBMパソコンなどでは、¥記号の代わりに、\(バックスラッシュ)という記号がルートディレクトリーの名前になっている。
 MS―DOS用語で「ディレクトリーを取る」というと、ディスクが保管しているファイルの一覧を見ることをいう。コマンド名はDIRだ。

    ファイルの互換性

 ソフトウエア(プログラム)そのものは、本来、OS以外に依存すべきではないが、開発者が効率優先に凝りがちなので、どうしても機種に依存する。この理由などから、どんなソフトウエアも異機種のMS―DOSとの互換性に乏しくなるのだが、データ、とくにMS―DOSの標準テキストファイルは、異機種間であってもコンバージョン(変換処理)無しでほぼ完全な互換性を保つ。
 この互換性(コンパチビリティ)は、仕事とコンピューターの連携において最も重要なテーマの1つに挙げられるだろう。
 企業のオフィスで、マシンが1つのメーカーで統一されていることは、むしろ稀だと想像する。たとえば日本電気のPC―98ノートパソコンが社員1人1人のデスクに置かれている一方で、日立のMS―DOSマシンのデスクトップ型パソコンがスプレッドシート(表計算ソフト)で経理データの演算を続けているかもしれない。
 こうしたマルチベンダー(複数メーカー機の混在)環境においては、MS―DOSで書かれたテキストファイルならばFMR機でもPC―98機でも読むことができるという統一性は有利だ。
 1枚のフロッピーディスクを封筒に詰め、ビルの谷間をデジタル情報が往来できるのだ。お金の掛かるコンピューターネットワークにも勝るとも劣らない時もある。
 出版社では、DTP(デスクトップ・パブリッシング)をマッキントッシュで、原稿はPC―98からのフロッピー入稿で受領、といったシーンを見る。
 マッキントッシュはSystem(英語版)、それに日本市場向けに漢字Talk(日本語版)という独自のOSを使っている。MS―DOSとは互換性がない。この場合は、マッキントッシュ側でコンバーター(データ変換ソフト)を使ってファイルをやり取りする。データの相互乗り入れはフロッピーディスク、または通信である。

    システム思考

 MS―DOSはパソコンのOSだから、機動力が無ければユーザーが困る。メーカーのエンジニアを介さずに、ユーザー自身(企業内エンジニアでも良い)がシステム設計を行ない、直ちに立ち上げられる体制でなければ、パソコンシステムの妙味が全く感じられないだろう。
 MS―DOSでは、起動時に、デバイスドライバーをMS―DOSのシステムに組み込んで、プリンターやマウス、RAMディスク、日本語入力FEPなどの入出力装置を制御する。これをコンフィギュレーション(要素を配置する、という意味)と呼んでいる。
 コンフィギュレーションはそもそも、限られたパソコンのメインメモリーの記憶空間を効率的に使うための工夫だった。システムに組み込む装置を、その時にそのシステムに必要な装置だけに絞り込むことによって、少ないメインメモリーでも十分な装置群をMS―DOSが統率できるのがメリットである。
 貧乏は罪悪だということもあるが、ここでは節約は美徳である。贅肉を落としたシステムは動きが軽い。
 このシステム設計思想(アーキテクチャー)は、省メモリーであると同時に、フレキシブルな機動力としても役立っている。コンフィギュレーションの考え方は、だれもがMS―DOSの専売特許的独壇場のように思い込んでいたため、当初はこのアーキテクチャーをアプリケーション・ソフトへ応用しようとの発想には及ばなかった。あるいは怠慢だった。我々の能力が貧弱だったので、開発者が軽んじたのかもしらぬ。
 ところが昨今は、MIFESやVz Editor、新松、dBXLなどのアプリケーション・ソフトがカスタマイズ(ユーザー好みにソフトの使い勝手を決める)機能を載せ、MS―DOSのCONFIG・SYSよろしくアプリケーションの起動時に、機能群をユーザーの思うがまま設定することができるのだ。
 この場合、 .def、.K3、.XL といったファイル名の定義ファイルに定義項目を書き込む。アプリケーションは、起動時にこの定義ファイルを参照し、自分自身の機能を決定づける。ユーザーが関与するのは、コンフィギュレーションを記述するまでの段階である。途中で介入できなくもないが、それはADDDRVコマンド、DELDRVコマンドなど、ごく一部のコマンド体系として定められているにすぎない。
 自分自身の機能を決定づける存在を外部に置く、というシステムは、道理である。重かったものも、軽くなる。

    柔軟な機動性

 コンフィギュレーションは、CONFIG・SYSというファイルの中で必要な機能だけを記述してMS―DOSのシステムを立ち上げる仕組みになっている。気に入らなければCONFIG・SYSを書き直し、簡単に立ち上げ直すことが可能だ。コンフィギュレーション・ファイルは、つまりパソコンシステムの書き換え可能な設計図として機能しているわけである。
 設計図が随時変更でき、設計変更後は、直ちに起動して、その働きぶりを確認することができるというのは、重要である。実行結果と言う現実をリトマス試験紙としてシミュレーションを行なっているようなものだからだ。プログラマーが、開発途中のプログラムを実行させ、欠点や間違いがあれば直ちに修正するやり方に似ている。
 なお、プログラムのミスをバグ(BUG=虫)と呼ぶ。ソフトウエアは、バグという名の星屑をちりばめた夜空であり、バグの無いアプリケーションをわたしは知らない。宇宙と人間に、正しいものと正しくないものが混じり合っているように、コンピュータープログラムも清濁を併せ呑む。
 コンフィギュレーションに付いてさらに述べれば、単に過ちを正す目的だけでなく、たとえば、好みのFEPをいくつかディスクに用意しておいて、パソコン利用者の好みに応じて切り替える、といった柔軟なシステム変更にも使える。まるでバイリンガルである。

CONFIG・SYSの例
BUFFERS=30
FILES=20
DEVICE = A:\OS\RAMDISK.SYS 1024 1024 192
device = a:\MATU\MTTK2.DRV G:\
device = a:\os\print.sys
device = a:\matu\mousek.dRV


    パソコンのシステムの設計図

 入出力装置のチェンジは、いとも簡単である。たとえばファイルの本質である情報の内容をモニターへ表示する代わりに、コマンド(命令文)の後ろに>記号を用いるだけで、プリンターへ出力して印刷することができる。これをリダイレクトという。たとえば、

   A>TYPE CONFIG.SYS

とコマンドを実行すると、CONFIG・SYSというファイルの記述内容がディスプレイに表示されるが、

   A>TYPE CONFIG.SYS >PRN

とキー入力すると、ファイルが持つ情報はディスプレイに出力されずに、プリンターへと出力される。
 なお、

  A>■

の行に命令を入力した時は、必ず命令の最後でリターンキーを押そう。リターンキーを押すと同時に、命令は実行される。とたんにディスクやプリンターがウナリ音を立てるので、これが本当のスイッチ感覚である。


3章 対話シーン


 なぜMS―DOSのコマンド体系は絶大な支持を得るに至ったか、を空想する。マウスを動かすだけでファイルをコピーしたり、ソフトウエアの起動ができるマッキントッシュが、なぜ少数派に甘んじなければならないのか?
 恐らく人々は、コンピューターを操っているという実感を得たいのだ、そう考えた技術者は賢明であった。コンピューターの雰囲気をふんだんに漂わせたMS―DOSが、実際に勝者であったのだから。
 MS―DOSのコマンドモードは、パソコンと直接対話できるマンマシン(人と機械)のコミュニケーションの場である。こうした刺激的な場に立ち合えたのは、第2次世界大戦前は皆無、同大戦直後は、幸運なほんの数人だけであった。
 周知のようにMS―DOSはディスク・オペレーティング・システムだ。我々ユーザーがMS―DOSに何を求めるかは明白である。それは記憶装置の直接操作と、その支援に尽きる。
 MS―DOSは、ディスプレイを通じてあらゆるメッセージを送り出し、一斉にあなたのオペレーションを支援しようとする。これは大いに助かる。これ以上メッセージの数を増やしたら、人工知能と間違えてしまうくらいお節介すぎる時もある。
 新しいバージョンのMS―DOSは、2つのモードを持っている。それは、

   (1)コマンドモード
   (2)メニューモード

だ。国内流通のMS―DOSの新バージョンでは、メニューモードの1つにコマンドメニューという機能を備え、コマンドいらずのMS―DOS操作ができるようになっている。しかしコマンドメニューは上達を妨げるだけでなく、細やかなオペレーションは不可能だから、メニューモードでMS―DOSを操作する人は、あまりいない。

    MS―DOSのコマンドモード

 MS―DOSコマンドは、コマンドモードで実行する。コマンドモードでは、コマンド(命令)を、書式(フォーマット)にのっとって記述しなければならない。1文字でも入力ミスをすると、エラーとなる。
 厳密だが、恐るるに及ばない。一九八〇年以前の大型コンピューターは、大学のアカデミック・システムでさえ、研究者が統計データの演算を依頼して2週間後に恐る恐る結果を受け取ると、たった一言「エラー」の回答が舞い戻る時代だったのである。MS―DOSマシンは、やり直しが簡単だ。
 たとえば、ファイルを複製するCOPYコマンドは、次の書式で入力している。

 A>COPY A B

 これは、Aというファイルと同じ内容のファイルをBというファイル名でコピーせよ、という命令である。COPYとAの間には空白を1文字分だけ開けるが、これはCOPYAというコマンドが実際に存在するので、空白が必要なのだ。
 AとBの間にも空白が欲しい。これは、コンピューターがA、B、という2つのファイルを、ABという1個のファイル名と混同しないためである。
 エンジニアは、人間不信のもとプログラムを開発する。初心者は、赤ん坊のように何も知らないから、考え得る全ての過ちを冒す。これでソフトウエアを壊されたりデータを消滅されたのでは困る。
 全てのことを想定してシステムは作られたのだ、ということを実感するのは、パソコン歴1年を過ぎた頃からであろう。

 A>COPY A B

というのは、なかなかできた書式だと思われないだろうか。英国人ロックグループのビートルズのナンバーに、

   Let it be.

というナンバーがある。おそらく「それは存在してる」という意味なのであろうが、

   A>COPY A B

も「AをBたらしめよ」と味をかみしめることもできる。

 A>COPY A TO B

の書式にしなかったのは、空白を含め、つごう3文字のキー入力を惜しんだからのようだ。
 親しみやすい構文は、MS―DOSコマンド体系の随所に垣間見ることができる。まずは習うより、慣れろである。
 パソコンに電源を灯し、MS―DOSのシステムディスクをフロッピーディスクに入れてみよう。もしコマンドメニューが表示されたら、STOPキーを押す。スクリーンには、簡素なMS―DOSのコマンドモードが現われる。
 この状態が、MS―DOSのコマンドモードと呼ばれるコマンド実行画面である。ここで我々はコンピューターと対話する。


MS―DOSが支援するサポート体制

(1)プロンプト   A>■
 Aはドライブ名、不等号の>はプロンプトという飾り、■はカーソル(キーインした文字の位置を表示するマーク)である。

※ドライブ名とはディスクの装置番号のこと。
※プロンプト(prompt)は入力促進記号ともいう。
※カーソル(cursor)はディスプレイ上で点滅し、ユーザーがコマンドや  文字を入力する位置を案内する。

(2)テンプレート
 画面の下端に白黒反転で表現されている十個のボックスはファンクション・キーの機能を表示している。キーボードから打ち込んだコマンドの内容を記憶し、あとで再現するために用意されている。テンプレートという機能である。

    ファイルの破壊事故
 データファイルとプログラムファイルの破壊事故が我々の身に降り掛からないという保証は何一つない。事故は、天災以外では、次の原因で発生する。

  (1)危険なコマンドを安易に実行した結果起こるもの。
  (2)ハードウエアの故障によるもの。
  (3)プログラムのバグ(ソフト開発者のミス)によるもの。

 危険なMS―DOSコマンドを、その破壊度の激しさから順番に列挙すると、FORMATコマンド、DISKCOPYコマンド、DELコマンド、COPYコマンド、の順序である。
 FORMATコマンドは、誤って用いれば、ディスク全体のファイルを消滅させてしまう。DISKCOPYコマンドも同様である。DELコマンドでディスクから削除したファイルは、時にはプログラマーにも修復が難しいだろう。
 COPYコマンドは、重ね書きが危ない。データ本体だけでなく、FATまで完全に書き換えてしまうので、むしろDELコマンドよりも危険である。
 こうした事故を防ぐため、予備のフロッピーディスクをユーザーが自ら作成し、これを実行用ディスクとして使う必要がある。オリジナルのMS―DOSディスクは保管し、実戦に使ってはいけない。
 さて、あなたのパソコンがNECのPC―9801シリーズで、MS―DOSのバージョンが3・30/B/C(これはメーカーお勧めの最新バージョン)ならば、起動直後のパソコンのモニターにコマンドメニューが表示されるから、STOPキーを押してMS―DOSのコマンドモードへ移動して欲しい。
 もしMS―DOS2・11なら、起動直後に日時と時刻の入力を要求されるだろうから、このメッセージに対してはリターンキーを2回押せば、MS―DOSコマンドモードへ移動できる。
 まずDIRコマンドを用いて、ディスクドライブの内容を参照して見よう。

   A>DIR

 画面は流しソウメンのように下から上へとスクロールし、0・5〜2秒後には次のようになる。

DIRコマンドの結果

ドライブ A: のディスクのボリュームラベルはありません.
ディレクトリは A:\

COMMAND COM 24931 88-07-13 0:00
ATTRIB EXE 9154 88-07-13 0:00
APPEND COM 2052 88-07-13 0:00
CHKDSK EXE 10384 88-07-13 0:00
DISKCOPY EXE 19604 88-07-13 0:00
DUMP EXE 40668 88-07-13 0:00
EDLIN EXE 7922 88-07-13 0:00
FORMAT EXE 97766 88-07-13 0:00

……

CONFIG SYS 136 89-11-04 10:02
35 個のファイルがあります.
26624 バイトが使用可能です.



    ファイル名

 画面最後のファイル、README・DOC を説明する。READMEがファイル名、・(ピリオド)はファイル名と拡張子を接続するセパレーター、DOC は拡張子である。
 名は体を現わすと言って、ファイル名にはそのファイルの情報内容を端的に表わすような命名がなされている。拡張子はそのファイルの性質を表現するように命名されている。
 ちなみに README.DOC は電子マニュアルである。「私を読んで( README )」「DOCument(文書)」という印象を受けることだろう。あなたはいずれファイルを読む側からファイルを書き込む立場に回るのだから、情報発信者としての立場からもファイルの名前を考える必要に迫られるわけだ。

 10211 というのは、README.DOCのファイルサイズである。単位はバイト(byte)。バイトは情報量を表わす単位で、8ビットが1バイトに相当する。
 コンピューターは、1か0かの2進数(ハードウエアのレベルでは電流がオンかオフか)で演算を行ない、一本の電気回路で一個の2進数が表現できる。これが1ビットの量の情報だ。1バイトは1ビットが八つ集まったデータ量の単位で、英数字・記号などの半角文字は1文字が1バイトで表現されている。表現というのはコンピューター独特の言い回しで、たとえば

    <10010110>

といったコードでおのおのの文字がメモリーに記録されているということである。
 MS―DOSでコンピューターに指示を与える時、コマンドに用いる文字は半角文字である。全角文字は、半角文字の横2倍の大きさとなっている。
 README・DOCは約1万バイトだから、漢字換算で約5000文字相当の分量のテキストであると計算する。
    自己破壊の危険

 FORMATコマンドでフロッピーディスクを初期化してみよう。FORMATコマンドはディスクに対して物理フォーマットと論理フォーマットを実行し、機械がデータを読み取れる形に記録体を整備する。
 必要なら、起動用のシステム(MSDOS.SYSとIO.SYS、それにCOMMAND.COMの3つのファイルをシステムという)をディスクにコピーすることもできる。これをシステム転送という。

    A>FORMAT B:

 ここで絶対に B: の記述を省いてはならない。 B: を省略すると、MS―DOSは自分自身を初期化してしまう。これは自殺行為だ。つまり、Aドライブに入れたシステムディスク自体が初期化の対象とされてしまうことになる。
 初期化という行為はシステム側が行なうものだが、ディスクにとっては、もしそれが生きたデータならば全滅を意味する。この事態はユーザーにとって多大な損失であり、DELコマンドで1つのファイルを失うのとは様相を全く異にする。

    A>DEL *.*

という命令は、存在する全てのファイルを削除せよということだが、こんな破壊的な命令でさえFORMATコマンドに比べれば破壊度は小さいといわなければならない。
 なぜなら DEL *.* はカーレントディレクトリーに存在するファイルの削除だけを目的とし、同じディスクドライブにある他のディレクトリーに存在するファイルまでも対象とはしない。
 それにDELコマンドはFATまで消し去るわけではないので、万一の時は、有能なディスクユーティリティがあれば、エントリーユーザーでも削除したファイルを取り戻すことができる。
 中級以上のMS―DOSユーザーなら、ユーティリティがなくてもSYMDEB(シンボルデバッガー)を使ってチョイチョイと削除ファイルを回復できるだろう。
 とはいえいずれにしても削除後にディスクを使い込んだ後では、問題のセクターに新しいファイルが重ね書きされていないとも限らず、幸運を祈るだけのことしかできないのだが。
 FORMATコマンドの実行に際し「コマンドまたはファイル名が違います・」というエラーが出たら、それはFORMAT・EXEという外部コマンドファイルがAドライブに無い可能性がある。
 FORMAT・EXEは外部コマンドである。一方、DIRコマンドは内部コマンドだ。コマンドにはこの2つの種類があることは、最低限知っておかなければならない。

    外部コマンドと内部コマンド
 外部コマンド(external command)はMS―DOSのシステム(主たる実体はCOMMAND.COMである)に組み込まれているコマンドではなく、別に独立した実行型プログラム(たとえば初期化はFORMAT.EXE)が肩代わりするコマンドだ。外部コマンドの拡張子は、.EXEまたは.COMに統一されている。
 .BATの拡張子で作られたプログラムファイルも独立して走る(プログラムが自ら機能を発揮することを走ると呼ぶ)が、これは外部コマンドとはいわず、バッチファイルという。
 反対に、MS―DOSのシステムに、その機能が組み込まれているコマンドを、内部コマンド(たとえばDIR)という。使用頻度が高いコマンドは、たいがい内部コマンドのはずだ。

    MS―DOSシステムの構造

 例えれば、 COMMAND.COM はジェット機を操縦するパイロット、外部コマンドファイルは副パイロット、ということになるだろう。空港の中央管制官の役割を果たす MSDOS.SYS、そして税関係官を担当する IO.SYS はDIRコマンドでも見ることのできない不可視ファイルである。
◆◇
 FORMATコマンドを実行すると、システム側が用意した安全機構が少しずつ扉を開けるのを実感できるはずだ。初めての人には、スリリングな体験に違いない。FORMATコマンドに限らず、危険なコマンドは多かれ少なかれ、安全弁が機能するように考えられている。

FORMATコマンドが安全機構のドアを開く様子
A>FORMAT B:
Format Version 4.30
新しいディスクをドライブ B: に挿入し
どれかキーを押してください
ディスクのタイプは 1 : 640(KB) 2 : 1(MB) = ■

※危険なコマンドの実行時、メッセージの都度あなたは「待てよ」と実行を慎重に構えるように自己訓練に励む。

 「どれかキーを押してください」のメッセージには、ふつうリターンキーを押す。SPACEキーを押す人もいる。まれにSキーを押す人がいるが、おそらくゲーム世代のコンピューター・キッズだろう。
 STOPキーやCOPYキーといった非常識なキー以外ならどのキーでも構わない。STOPキーでは処理が中断してしまうし、COPYキーだと画面がそっくりプリンターへ印刷されてしまう。

  ディスクのタイプは 1 : 640(KB) 2 : 1(MB) = ■

との問い掛けには、2HDユーザーは2を入力してからリターンキーを押さなくてはならない。処理終了後、「別のディスクをフォーマットしますか(Y/N)」という質問にはNを入力してからリターンキーを押す必要がある。
 速いマシンなら、初期化は25秒で終わる。16ビットの標準マシンなら40秒を要する作業だ。これでデータファイルを管理する為のデータディスクが完成した。ラベルに「MS―DOSデータディスク」と記入し、貼って欲しい。

    フォーマットの実行(システムディスクの複製)
 次に、テスト用のシステムディスクを複製することにする。マスターディスクと全く同じディスクを作成しよう。まずシステムフォーマットを行なうことにしよう。

    A>FORMAT B: /S

 /Sなどの記述をコマンドオプションという。単にオプションという人もいる。パラメーターと呼ばれることもある。
 /Sはシステム転送を行なうオプションである。ちなみに/Pオプションを

    A>FORMAT B: /S /P

と添えると、安全機構の鍵は1つだけ外れ、いきなり

  ディスクのタイプは 1 : 640(KB) 2 : 1(MB) = ■

のステップへ進んでしまう。自信家の急進派にはピッタリではないだろうか。/Sオプション付きのフォーマットは、物理フォーマットと論理フォーマットを行なった後、自動的に次の3つのシステムファイルを新しいディスクにコピーする。

  COMMAND.COM
  MSDOS.SYS
  IO.SYS

 なお、これら3つの処理は全自動で行なわれ、何が行なわれているかについては、ユーザーは知る必要がない。
 システム転送付きのフォーマットが終わったら、2枚のディスクをディスク装置の窓に入れたまま、

    A>COPY A:*.* B:

とタイプインしよう。これでAドライブに入っているマスターディスクのファイルは、全部Bドライブのディスクへコピーされたはず。

     物理フォーマットと論理フォーマット

 フロッピーディスクやハードディスクは音楽テープと多少は似たメカニズムで情報を記録するが、ディスクはテープと異なり、ディスクを使えるようにするための初期化(initialize)が必須である。
 テープは、情報を順序良く(シーケンシャルに)記録するだけだが、コンピューターのディスクでは、必要な情報を任意に(アトランダムに)読み書きしたいので、このように事前に初期化が必要となる。
 ちなみにコンピューターでは、データを順序良く探していくことを「シーケンシャル・アクセス」という。逆に、目的のデータ位置へ一気に飛ぶことをランダム・アクセスと呼んで区別している。

    ランダムの戦略

 人の目的意識は、どちらかといえばシーケンシャルな働きをする。たとえば海洋汚染の論文を書きたいとき、まず書店へ行き、環境問題のコーナーを探し、幾つかの専門書籍を見つけ、といった順序で探索を行なう。
 しかしこれも個人差があり、人によってはアトランダムなやり方で仕事をこなす。同じ本を探すにしても、犬も歩けば棒に当たる式に文芸書コーナーを渉猟したかと思えば、ふらり哲学・宗教コーナーを歩く。これで海洋汚染の資料が広範囲に発見できるから不思議である。
 ランダム人間の仕事は、こうである。計画は戦略的だ。この時、仕事の順序をあらかじめ決めない。具体的な行動を行なう段階に入ったら細部を直観に委ね、やるべき時が来たと感じたらすかさず実行に移す。現在進行形の仕事が終わっていなくても、一瞬で別の仕事へと切り替える。ものごとが成功するかどうかは、全て順番が正しかったかどうかにかかっている。
 コンピューターでは、ディスクに対して読み書きをアトランダムに行なうが、実は細部を見ると、ジョブが正確無比な順番で繰り返されていることが分かる。我々は、結果だけに注目すればよい。
 初期化は、次の2形式のフォーマットを総合した処理である。2つの作業は、MS―DOSが自動的に連続して行なう。ユーザーは FORMAT コマンドを実行するだけで足りる。

*物理フォーマット(physical format)=ディスクのサイズ(3・5インチや5インチ)、2DDや2HD(記録密度)など、そのディスク固有の方式に従って行なう磁気的な前処理。

*論理フォーマット(logical format)=ディスクにFAT(ファット:ファイル配置情報のこと)やルートディレクトリーを書き込み、ディスクにMS―DOS形式のファイルを記録できるようにする前処理。

    ザ・ジョーカー

 自作したテスト用ディスクをAドライブに入れ、パソコンを立ち上げ直してみよう。
 立ち上げ方は、(1)リセットする(リセットボタンを押す)(2)電源を入れ直す―の2通りがある。
 リセットをホットスタート(hot start)とかホットリセット、ウォームブート、ウォームスタート、と呼ぶことがある。コンピューターの電源を切らず、暖まったまま起動することから由来しているようだ。
 一方、電源を入れてコンピューターを立ち上げることをコールドスタート(cold start)とかコールドブート、コールドリセットと呼ぶ。
 コンピューターの俗語である「立ち上がる」を転用して「ニュービジネスが立ち上がった」と表現するが、含蓄の深い言葉だと思う。

   A>■

と画面に表示されたらパソコンとコミュニケーションが取れるから、さっそく意思を伝えよう。

   A>DIR *.EXE

くどいようだが、命令をタイプインし終わったら、リターンキーを押すのを忘れてはならない。

こんなにたくさんファイルが表示された
ドライブ A: のディスクのボリュームラベルは MS―DOS #1
ディレクトリは A:\

ADDDRV EXE 18384 90―07―12 0:00
CUSTOM EXE 64024 90―07―12 0:00
DELDRV EXE 9842 90―07―12 0:00
DISKCOPY EXE 25871 90―07―12 0:00
EDLIN EXE 7922 90―07―12 0:00
FORMAT EXE 104847 90―07―12 0:00
MENUED EXE 34706 90―07―12 0:00
PRINT EXE 8920 90―07―12 0:00
REPLACE EXE 5210 90―07―12 0:00
SYS EXE 25496 90―07―12 0:00
XCOPY EXE 5768 90―07―12 0:00
CHKFIL EXE 2174 90―07―12 0:00
SETUP EXE 45680 90―07―12 0:00
SETUP2 EXE 27032 90―07―12 0:00
14 個のファイルがあります.
155648 バイトが使用可能です.

 DIR *.EXE を実行したら、なぜ拡張子が .EXE のファイルだけが表示されたのだろうか。これは、*記号がMS―DOSでは「任意の枚数の伏せ札」として扱われるためであって、指定条件である<*.EXE>にヒット(合致)したファイルだけがモニターに表示される。
 *記号を、MS―DOSではワイルドカードと呼び、頻繁に使用できる域に達しなければ、巧みな情報管理はできない。達人とは、抽象概念を現実に適用するのが上手な人のことである。
 同様なワイルドカードに?記号がある。*記号が「任意の枚数の伏せ札」として扱われるのに対し、?記号は「1枚の伏せ札」として扱われる。たとえば、

   A>DIR ???.EXE

と命令を打ち込むと、

   SYS EXE 25496 90―07―12 0:00

とパソコンは回答して来る。






4章 ファイルの実像と幻想


    命令者

 他のOSでも似たようなものだが、MS―DOSは情報をファイルという単位で管理している。ファイルには必ず名前を付けなくてはならない。ある情報のかたまりについての見出しがファイル名と考えても良いだろう。
 ではMS―DOSの開発者たちは、ファイルにどのような名前を付けたのだろうか。MS―DOSのシステムディスクを見ることにしよう。ファイル一覧を見る時は、DIRコマンドが使える。

   A>DIR

筆頭に次のファイル、「コマンド・コム」があるはず。

     COMMAND COM 24931 90-07-12 0:00

 COMMANDとは「命令」「制御力」「展望」「司令部」という意味がある。拡張子のCOMも同様である。MS―DOSの世界では、KING OF KINGSであり、CPUに対する主要な命令(コマンド)を担当している。

     FORMAT EXE 104847 90-07-12 0:00

は、ディスクの初期化(FORMAT)を実行する(EXEcute)する。

     README DOC 2843 90-07-12 0:00

は「私はドキュメント、私を読んで」である。対象物に主体性を与える米国人的な発想なので、カルチュアの違いを感じて面白い。日本人なら「必読」といったところだろうか。西洋人は最終的な主体性を外部に置く。日本人は内に置く。この違いが東西融合の究極の目標である。

     AUTOEXEC BAT 7 90-10-24 15:43

は AUTOEXECute BATch fileを省略した。オートエグゼック・バットと読み、自動実行する一群(BATch)のコマンドを束ねたファイルである。

     CONFIG SYS 89 90-10-24 15:43

がコンフィギュレーション・ファイルであることは既に述べた。
 ファイル名は、人間が認識するだけではない。コンピューターもファイル名を識別する。MS―DOSでパソコンを使うに当たって、人間とコンピューターが意思を通い合わせるための言葉は、制御するためのコマンド(DIRなど)と併せて、しばしばデータとしてのファイル(情報)が必要である。

    情報の2つの系

 困ったことに、情報には(1)制御系と(2)データ系……の2種類があって、情報の本質を理解する上でしばしば混乱の元になっている。これはコンピューターが対話型の情報マシンであることからくる難解さ、ということもあるが、実は人間の情報処理系もまた制御系とデータ系の2種類を扱って機能していることを認識しておかなければならない。
 たとえばMS―DOSで、

   A>DIR

とコマンドを打ち込むと、コンピューターはDIRという文字列を命令として解釈し、ディスクに保管されているファイルを表示しようと試みる。DIRを、決してDIRという文字列データとしては認識しない。したとしたら怠慢であり、命令系統に偽りあり、である。
 ところが、もしディスクにDIRというファイルがあったとすると、

   A>DIR DIR

とのコマンド実行によって、コンピューターはつぎのような答えを返す。

   DIR 6 90-10-28 11:56
    1 個のファイルがあります.
    154624 バイトが使用可能です.

 これは、あらかじめMS―DOSが命令文の書式を記憶させられているために、最初のDIRはコマンド、続く文字列をファイル名として解釈するのである。
 人間は「こい」と命令口調で言われれば、そちらへ行くかもしれないが、「こい」という言葉だけを淡泊に聞いて男女の慕情を連想する人もいる。前者は制御系の情報、後者はデータ系の情報として無意識に使い分けている。
 制御系の情報とデータ系の情報を、意識して同時に認識することもできる。幼児は5という数字を指を折って数えるが、これも「指を5回折る」という制御を頭脳が手に与えつつ5という数字(データ)を認識しているわけだ。
 この場合、制御を「手続き」と言い換えることができよう。
 しかし人間の思考は単純ではない。与えられた情報(データ)が変われば計画(プログラム)は必然的に変わる。これは人間が動機に生きる生物だからにほかならない。同じことはコンピューターについてもいえるが、コンピューターに動機を与えるのは、人間が作ったプログラムである。

    自分自身を知るデータ

 コンピューターには、オブジェクト(object)という概念がある。データ自身と手続き(メソッド)とを一体化し、自分自身に関する操作を知るに至ったデータをオブジェクトと呼んでいる。
 この概念を応用した人工言語がある。オブジェクト指向言語(object oriented language)である。
 オブジェクト指向言語は、データとプログラムを一緒に定義したオブジェクトが、メッセージを送り合って処理を行なうプログラミング言語だとされる。Smalltalk、LISP、Objective―c 、c++などが代表的である。
 オブジェクトの概念を応用したMS―DOSアプリケーションが市販されているので、試して見ると面白いだろう。
 たとえばワープロソフトの一太郎の文書ファイルをマウスでダブルクリックすると、自動的に一太郎を立ち上げ、同時にが一太郎に読み込まれるという面白いディスクユーティリティが市販されている。。
 マッキントッシュに添付されているソフトウエア、ハイパーカードもオブジェクト思考で設計されていることは有名だ。米国アップル社のこのパソコンは、システム全体にわたってこうしたアーキテクチャーを採用している。
 コンピューターでは、一般的に制御系のファイルをプログラムと呼び、データ系のファイルを単にデータファイルと呼んでいる。この限りでは、コンピューターの2つの情報系は明快に区別できる。
 ただ面白いのはバッチファイルである。試みに AUTOEXEC.BATの内容を見よう。

   A>TYPE AUTOEXEC.BAT

表示結果は MENU だったろうか。別のMS―DOSバージョンならば別の内容かも知れないが、いずれにしても何等かのコマンドが記述されているだろう。
 これで分かったように、バッチファイルは、制御系の情報をテキスト(一見するとデータ情報)として持っている。
 つまり、制御系の情報はデータ情報として存在し得るし、反対にデータ情報は制御系の情報としても変わり得る。
 英語では、動詞であり名詞であるという言葉がたくさんある。COMMANDは「命令する」の動詞であると同時に「命令」という名詞でもある。コンピューターも人間同様、似た判断を行なうようデザインされていることになる。
 ちょうど過去の記憶が単純に思い出であったり、あるいは記憶の断片が強力な動機づけとなって行動を促すようなものである。

    人工言語と自然言語

 人間が話し読み書きする言語のことを、コンピューターが理解する人工言語(コンピューター言語またはプログラミング言語)と対比して、自然言語(natural language)と呼ぶ。
 人間は、言語に気持(情緒)を織り込みながらコミュニケーションを取るので、たとえば「それは正しい」と言いつつ本音は逆だったりする。特に日本人には、本音と建前を巧みに使い分ける。
 コンピューターには情緒が与えられていない。ファジィ理論に基づくものなどを除いては、あいまいさも許さない。純粋な論理回路で情報を処理する。
 この違いが自然言語と人工言語を区別するものである。
 ところがマシンと人間とのコミュニケーションで自然言語を使う場合もある。自然言語インターフェース(natural language interface)といって、たとえばLotus1―2―3のHAL、R: BASEのcloutなどを使うと分かるように、ユーザーが命令語(コマンド)の決定権を持たされる。
 HALやcloutでは、ユーザーが好みの命令語を登録すると、そのユーザーだけの命令言語体系が構築され、登録した命令を入力すると、これをソフトウエアが翻訳してコンピューターは処理を行なう。
 マシンと人間とのインターフェース(相互接続部)に、ソフト的に自然言語を仲介させるわけで、ユーザー命令翻訳言語の一種といってよい。
 こんな一連の手続きを、自然言語処理(natural language processing)ともいう。
 しかしあくまでも特定のアプリケーション・ソフトの環境下で限られた命令語が実行されるだけだから、理想的なマン・マシン・インターフェースとは言い難い。自然言語をコンピューターが完全に理解するのは、未だSFの世界である。
 しかし音声認識は実用化時代に入りつつある。MS―DOSのテキストを男女の声で読み上げる有能な装置が市販されているし、高価だが音声をドキュメントに変換するシステムもある。
 もともとコンピューターは、データを命令として実行できるように設計されているから、双方向のコミュニケーションが信頼を獲得すれば、二十世紀中にも実用化し得る局面にある。

    人間と機械の接点で

 エンジニアたちが機械とのコミュニケーションを追究していった結果、人類は2種類の言語、つまり自然言語と人工言語を使い分けるに致った。と同様、MS―DOSは人間の意向を汲みつつ、コンピューターに命令を下さなければならない。
 この両面性をMS―DOSは併せ持ちながら、人間からも機械からも効率性を要求されるという厳しい立場に置かれたのであった。
    マンマシン・インターフェース

 人間の意思をコンピューターに伝達するという作業は、本質的には簡単なスイッチで用は足りる。スイッチ群をコード体系としてまとめ、各コードをキーに割り振ったのがキーボードである。
 より高度な利用と便利さとを求める我々は、マンマシン・インターフェース(man machine interface)を声高に要求していく。
 マンマシン・インターフェースとは、コンピューターと人間とがコミュニケーションを図る上での約束ごと、あるいはコミュニケーションを図るための装置、またはその設計思想をいう。
 このインターフェースの道具は、人間がコンピューターに語りかける時は主にキーボード、コンピューターが人間に答を返す時は主にディスプレイが使われてきた。両者の間に立つ通訳がOSなどの主たるソフトウエアだった。こうした装置(ソフトウエアも装置と見なす)が存在してようやく人間と機械は対話が成立する。
 技術者だけがコンピューターと対話する時代はキーボードとディスプレイだけで用は足りる。しかしコンピューターを大衆が操作する時代には、マンマシン・インターフェースの充実が大切な課題である。機械が苦手な人々に経済的不利をもたらさない、との平等のためでもある。
 しかしイージーなマンマシン・インターフェースは、システム破壊の危険を伴う。だれにでも高度な情報処理システムを開放するということは、そういうことだ。
 使いやすいシステムは、同時にセキュリティがしっかりしている。エントリーが難しいシステムは、えてしてセキュリティに手を抜きがちである。入門者が運用を安全に行なえるようなシステムを設計する技術者たちの苦労と責任は重いといわざるを得ない。
 この点、MS―DOSは末端ユーザーが広くシステム運営上の管理責任を取らねばならない。コマンドを実行した後で「しまった」と後悔しても遅い。重要データを破壊しようがビジネスを大成功しようが、つまるところは本人次第ということだ。
 そのMS―DOSは、

   A>■

のプロンプトが唯一のマンマシン・インターフェースだった。新しいバージョンではコマンドメニューや項目選択メニューが我々をサポートする。
 これでも超入門者には難しいというので、MS―WINDOWSを購入したユーザーには、ポップアップ・メニューという人間に優しい環境が提供される。このメニューをマウスという入力デバイスでクリックすると、実に簡単にコンピューターを操ることができる。
 マンマシン・インターフェースはこのように改善されてきた。しかし処理速度と操作性を両立するとなると、インターフェース改善以上に難しい技術的問題を抱えてしまう。このような二律背反にあって、MS―DOSの開発者たちは一つの工夫を布石を打っておいた。
 それは機械が効率的に読めるバイナリーファイル、それに人間でも解読可能なテキストファイルの共存である。

    バイナリーファイル

 バイナリーファイル(binary file)は、情報を2進数で表現したファイルである。バイナリーファイルでは、考えうるどのような形式のデータにも対応されている。制御系のデータを持たせやすいので、実行型のファイルとして大いに用いられている。
 COMMAND.COM や FORMAT.EXE といったファイルが、バイナリーファイルである。

    テキストファイル
 文字データだけで構成されているファイルをテキストファイル(text file)という。英数字や漢字で構成され、文字として割り当てられているコード以外のデータは含まない。ワープロソフトなどで直接人間が読み取れる。
 なお文字(制御コード以外の文字)として割り当てられたコードをテキスト文字(text character)と呼んでいる。
 テキストファイルは、MS―DOSのコマンドで簡単に判読できる。

   A>TYPE README.DOC

 一方、バイナリーファイルをTYPEコマンドで読み込むとどうなるだろうか。

   A>TYPE COMMAND.COM

モニターに表示されたCOMMAND.COMの内容

   A>    =SXタu SX EX SD2紫EM{エIヘ!

人の目には解読不能である。次のようにCLSコマンドを実行するとモニター画面はきれいになる。

   A>CLS


5章 限りない記憶空間


 CPUは、ディスク(円盤状の記憶メディア)に書き込まれているデータを、セクター(sector)単位で読み書きする。セクターは、ディスクの8本〜9本のトラック(円盤上のディスクの1周)をいう。1セクターは、ふつうは1KB(キロバイト)である。IBM機では例外的に512バイトである。
 MS―DOSも、セクターをそのままデータの管理単位としてもいいのだが、いくつかのセクターをまとめてクラスターとし、クラスター単位として取り扱っている。
 セクターはメディアによりサイズが異なるので、そのまま管理するよりも、クラスターというまとまった単位で管理するほうが、さまざまなメディアに対応し易いからである。
 ディスクでデータを管理するに当たってMS―DOSが採用したセクターとクラスターという技法により、我々はなんらディスクを意識することなくファイルの作成、コピー、修正を行なうことができるのである。
 もしディスクのデータを読み書きするに際して、トラック、セクタ、クラスターの管理まで義務付けられるなら、それだけでファイル管理は不可能になってしまうだろう。一国の総理に、全戸の家庭訪問を義務付けるようなものである。
 それくらいMS―DOSが代行するディスク管理の役割は大きいと考えなければならない。
 我々のデータを長期間保存するディスクは、MS―DOSマシンではフロッピーディスク、それにハードディスクが一般的である。フロッピーディスクは経済的なメディアであり、かつ携帯できるのが最大の長所である。640KB(2DD)と1・2MB(2HD)とを選択することになるが、MS―DOSマシンでは2HDがポピュラーが専ら使われる。
 一方、ハードディスクは20MB〜600MBもの巨大な記憶容量を誇り、かつアクセス速度が非常に速い。唯一の欠点は重くて大きいという点だが、これもカートリッジ式の登場で携帯あるいは分割データ保存が可能になっている。

    持ち運べる記憶空間

 記憶装置としてはフロッピーディスクと呼んで差し支えないが、抜き差しするメディアは、単にフロッピー、またはアメリカ流にフレキシブル・ディスク(flexible disk)あるいはディスケット(IBMの呼び方)ともいう。
 JIS規格では、フロッピーの正式名称は「フレキシブル・ディスクカートリッジ」であるというが、なじみは薄い。
 フロッピーの四角いジャケットには、円形の磁性フィルムが入っている。これが記憶媒体である。ジャケットもフィルムもしなやかなことから、フレキシブル・ディスクといわれるようになったようだ。
 フロッピーディスクというとフロッピー、フロッピーのデータを読み書きするディスクドライブ装置の両方を意味するので、シチュエーションによって判断されたい。
 大きい順で分けると8インチ、5インチ、3・5インチ、2インチのサイズがあり、ほぼ大きい順に歴史が古いのは興味深い。時代は重厚長大から軽薄短小へと移ろうということか。
 8インチのフロッピーは2Dだが、5インチ/3・5インチの2HDと全く同じ1・2MB(1MBとも)フォーマットを採用している。より正確には、8インチのフォーマットを5インチ/3・5インチ2HDが採用した、というべきである。
 フロッピーディスクは同サイズでも記録密度の違いで幾つかのタイプがある。5インチの場合、640Kタイプ(2DD)と1・2Mタイプ(2HD)が一般的に多く用いられている。3・5インチの場合も、全く同じフォーマットの2DD、2HDがある。
 IBM PCが用いる2DDは、720KBフォーマットだし、Macintoshの2DDも同様である。PC―9801など国産MS―DOSマシンが640Kタイプであるのとは異なっているので、フロッピーを差し込んで互いにデータを直接交換する時は、次のやり方でフォーマットすると良い。
 PC―9801では、98側でフロッピーディスクを9(ナイン)フォーマットを行なってからデータを書き込み、そのフロッピーをIBMマシンやMacintoshへ持って行き、データを読み込み直すと良い。

      A>FORMAT B: /9

 J―3100では、J―3100側で、3(スリー)フォーマットを行なう。

      A>FORMAT C: /3

こうしたフォーマット形式をIBMフォーマットということもある。世界のパソコンの標準はIBM PCだから、こんな手間が必要なのである。複数のOSを操る人にとっては、国際的な標準があるということは重みがある。
 標準に準拠することによって、たとえば原稿を書くのはMS―DOSマシン、レイアウトはマッキントッシュ(Macintosh)、というように、それぞれのマシンの優れているところを組み合わせて大きな仕事を遂行することができることになる。ちょうど英語が万国共通語として機能しているのに似ている。
 なおRS―232Cなどの規格の通信ポートを利用してケーブルを接続し、異機種間でデータを転送するのも良い考えである。これに習熟しておけば、将来は異機種間のLANへと発展できるであろう。
 なおデータをフロッピーディスク経由か通信ライン経由で交換したとしても、多少の「ゴミ」が混ざることがある。たとえばMS―DOSの改行コードは、

     CR(キャレッジリターン)コード+LF(ラインフィード)

なので、CRコードだけで改行させているマッキントッシュへデータを持って行くと、そのテキストには改行位置に1つずつ不要なLFコードのゴミが入ってしまう。
 逆にマッキントッシュのテキストをMS―DOSへ持って行くと、改行されずにテキストがずらずらつながって表示されてしまう。
 こうした不都合は、マッキントッシュのOSに添付されている Apple File Exchange というユーティリティ・プログラムで変換すると巧く解決できる。
 通信ソフトの中には、データ交換をしながら自動的にコードを変換するものもある。データの読み込み時と書き込み時に、コードを適正化するワープロソフトや表計算ソフトもある。

    膨張し続ける記憶空間

 データや、データに付加価値を加えた情報なりが無限に増え続け蓄積された情報圏という存在は、なんらかの方法で体系化しないと利用不可能になってしまう。
 不思議なことにMS―DOSは、その設計当時、現在に見るハードディスクのような巨大な記憶装置がパソコン向けとしては未完成だったにも関わらず、巧みにデータを統合する機構を用意しておいた。
 それはディレクトリーを中心とするTree構造である。この階層構造は、風船と同様、ハードウエアの限界まで膨張し続けるし、領域を多数分割できるので、情報体系全体を統合管理できるのである。
 大型コンピューターはともかく、20MBの記憶容量の製品から普及が始まったパソコン用のハードディスクは、最近は40MB、80MB、130MB、600MBへと留まることを知らない。
 こうした大容量のハードディスクを導入すると有利なところは、複数のアプリケーション、たとえばワープロソフトと表計算ソフト、通信ソフト、それにリレーショナル・データベース、レイアウトソフト……などを組み合わせ、互いのMS―DOSファイルを有機的に活用できる便利さだろう。
 たとえばLotus1―2―3のような表計算ソフトに蓄えた仕事のデータをワープロソフトに読み込ませ、ワープロソフトの広いエディット画面でデータを自由に加工する。加工が終わったデータを再び表計算ソフトのスプレッドシートへ書き戻す。
 これはパソコンの醍醐味である。
 ハードディスクも、フロッピーディスク同様フォーマットを行なう必要がある。違う点は、ハードディスクには標準フォーマット形式と拡張フォーマット形式とがあることだ。さらに拡張フォーマットにはSASI(サッシィまたはサジィ)形式とSCSI(スカジィ)形式とがあるが、これは機械が自動的に見分けるので、あまり神経質になることはない。
 SCSI(Small Computer Systems Interface)は、パソコンと、ハードディスクや光ディスク、レーザープリンター、イメージスキャナーなどとの間で接続するインターフェースの一種である。
SCSIは、高速なデータ転送を実現しているのが特徴だ。
 ANSI(American National Standards Institute=米国規格協会)が一九八六年、規格化した。SCSIを用いると、最大で8台の周辺機器をパソコンと接続できる。有利である。
 MS―DOSでハードディスクをフォーマットする時は、

   A>FORMAT /H

とFORMATコマンドを実行する。

    伸縮自在の記憶領域

 デビューから2年目の一九八三年にバージョンアップしたMS―DOS2・0版は、ライバルであり育ての親であるCP/Mの色を捨て、全く新しい顔をしていた。それは、かのUNIXを思わせるものであった。
 それは、汎用コンピューターのOSであるUNIXを思わせるような、パソコンのOSにしては洗練されすぎたファイル管理機構を備えていた。
 OS開発者にとって、ディスクでファイルを管理する手法は生命線である。システムのデザインは、頭がツイストするような集中力を要する。データ領域の管理について抽象思考を巡らせていたら、いつしか神と交わっていた、という体験を持つエンジニアが、世界に一万人を下らない。
 MS―DOSがファイル管理に関して採用した技法は、木構造(tree structure、ツリー構造とも)という階層構造であった。このことは、事務系の人たちらへとパソコンの底辺を広げる上で幸いであった。なぜなら、この木構造は、オフィスの書類キャビネットや図書館の書籍分類に、大いに似ていたからである。
 木構造のデータの持ち方は、木の枝を連想するものである。木構造では1本の<根>から<枝>が出る。枝には<節>があり、これが繰り返される。
 最後の節は、特に<葉>と呼ばれる。根はデータの名前であり、節はデータである。葉もデータである。枝は、データ間を関係づける。
 木構造は親子関係をもつ。たとえば、根を天皇家としよう。皇族の頂点である天皇の下には、おのおのの宮家があり、宮号が与えられている。それぞれの下には、それぞれ子孫が存在する。子孫ができなかった場合、葉としてその一族はそこで終わるが、天皇家という家門は、別の枝葉によって存続させるという古来からの約束ごとがある。だからこそ、万世一系は途絶えることがなかった。
 MS―DOSのディレクトリー構造は、そのような木構造である。ユーザーは、ルートと呼ばれる「根」から、新しいディレクトリーを任意に作ることができる。これをサブディレクトリーという。
 サブディレクトリーの中には、さらにサブディレクトリーを作ることができる。ハードウエアとMS―DOSの限界まで、子、孫、曽孫へとデイレクトリーは無限である。
 手持ちのテスト用ディスクをAドライブに入れ、MD(Make Directory)コマンドを実行してみよう。

   A>MD 1ST

 これで1STという名前のサブディレクトリーが作成された。このサブディレクトリーを、宇宙みたいな風船、と考えていただきたい。ルートディレクトリーは一番大きな風船である。
 ルートディレクトリーには、日本語MS―DOSでは¥という名前があらかじめ付いている。というよりは、ルートディレクトリーには名前が付けられないから¥記号だけしか与えられなかった、といったほうが正確かもしれない。
 今作ったばかりの1ST風船というサブディレクトリーは、¥風船の内側に作られた。

    風船に見立てたディレクトリーの構造

 ただサブディレクトリーを作っただけでは実感がない。そこでプロンプトを変え、サブディレクトリーの座標を画面に表示させてみよう。

   A>PROMPT $P$G

 PROMPTコマンドは、MS―DOSのプロンプトを変更する命令である。$Pはカーレントドライブ+カーレントディレクトリー、$Gは>記号をそれぞれ意味している。
 MS―DOSのプロンプトは標準ではカーレントドライブ+>記号であるが、上のコマンド実行により、次に示すように、カーレントドライブ番号+カーレントディレクトリー座標+>が表示される。

   A:\>■

 なおカーレントドライブとは、キーボードが現時点で直結されているディスクドライブ番号をいい、カーレントディレクトリーとは、同じくキーボードが直結しているディレクトリーをいう。
 試みに、CD(Change Directory)コマンドを使って、カーレントディレクトリーを移動してみよう。

   A:\>CD 1ST

リターンキーを押したとたん、あなたは1階層内側のインナースペースである¥1ST風船の内部へと潜入した。表示は、次のように変わる。

   A:\1ST>■

 もし、PROMPT $P$G を実行していない場合、異次元のディレクトリーへ移動したことを示すサインが全く無い。これは不安だ。
 あなたは海図なしで外洋へ出たと同然である。カーレントディレクトリーを時々表示させ、現在位置を確認する気分に絶えず駆られるだろう。CDコマンドで確認できる。

   A>CD
   A:\1ST

   A>■

 ともあれCDコマンドを多用するよりは、PROMPT $P$G を活用するのが得策であろう。空洞のサブディレクトリーは、いったいどんな姿なのか、興味をそそる。そこでDIRコマンドで、作成したてのサブディレクトリー内部を観測してみたい。

   A:\1ST>DIR

ドライブ A: のディスクのボリュームラベルは MS-DOS #1
ディレクトリは A:\1ST

. 90-11-06 13:32
.. 90-11-06 13:32
2 個のファイルがあります.
153600 バイトが使用可能です.

 空洞であるべきはずのサブディレクトリーに、見慣れないものがある。ピリオドマークの付いたファイルは、いったい何ものか。実は、先に「ディレクトリーもまたMS―DOSではファイルと見なされる」と説明した。このピリオドマーク以下が、ディレクトリーであることを示す情報なのである。

.   そのサブディレクトリー自身のディレクトリー情報
..   1つ上位のサブディレクトリー情報

 MS―DOSユーザーである我々にとって、.や、..が無縁な存在かというと、あながちそうとばかりは言い切れない。
 ..は、カーレントディレクトリーの1つ上位のサブディレクトリーであることを示す情報だから、この情報を使い、上位ディレクトリーへ上ってみよう。

   A:\1ST>CD ..

   A:\>■

 確かに上方向へディレクトリー移動できた。ただし、下位ディレクトリーへ移動しようとして、

   A:\>CD .

とタイプインしても、下位のディレクトリーへ移動することはできない。横綱ではあるまいし、なぜ上へ行けて下へは行けないのだろう?
 これはサブディレクトリーの上位ディレクトリーは唯一つしかないのにたいし、サブディレクトリーの下位ディレクトリーは、複数あり得るので、特定できないからである。コンピューターは、あくまで論理的なマシンだ。あいまいさを許さない。
 ただしルートディレクトリーに限っては、これ以上は上位のディレクトリーが存在し得ないので、

   A:\>CD ..

は使えない。A:\>CD . が使えないのはもちろんである。
 以上、1STという、ルートディレクトリーから見て1階層だけ下位のサブディレクトリーを作成することに成功した。ではもう1階層、下位に位置するサブディレクトリーを作ってみたい。
 ここでは、先に作った1ST風船の下(内側)に2ND風船をこしらえてみよう。

   A:\>MD \1ST\2ND

 結果はいかに? DIRコマンドを使って、¥1ST風船の内部を観測する。

   A:\>DIR \1ST

ドライブ A: のディスクのボリュームラベルは MS-DOS #1
ディレクトリは A:\1ST

. 90-11-06 13:32
.. 90-11-06 13:32
2ND 90-11-08 10:27
3 個のファイルがあります.
152576 バイトが使用可能です.

 確かに狙い通り2階層下に2ND風船ができた。なお、

   A:\>MD \1ST\2ND

と同じことを、次の方法で行なわせることもできる。

   A:\>CD 1ST
   A:\1ST>MD 2ND

 ここで1STと2NDの頭に¥記号を付けなかったことに注目して欲しい。実は、サブディレクトリーを特定する時、2つの方法があることを覚えて頂きたい。絶対座標と相対座標である。

    情報の座標軸

    絶対座標
 絶対座標(absolute coordinates)は、仮想的な記憶空間の中に、データの位置をただ一点特定するための座標である。MS―DOSのサブディレクトリー作成にはMDコマンドを、ディレクトリー移動にはCDコマンドを使うが、両コマンドで¥マークを用いると、そのディスクドライブにおけるサブディレクトリーの座標位置をピタリと特定できる。たとえば、

   A:\>CD \1ST\2ND

のように指定する。
 1回のコマンド入力で、目指すサブディレクトリーへ移動できるのが絶対座標のメリットである。相対座標で移動するとしたら、階層の深さの分だけCDコマンドを実行しなければならない。

    相対座標
 相対座標(relative coordinates)は、¥記号を使わないでディレクトリーの位置を相対的に指定する方法である。この座標軸を用いると、1階層下のディレクトリーへ簡単に移動できるのがメリットだ。
 ただし、目的のディレクトリーがカーレントディレクトリーと隣接していても、上位ディレクトリーを相対座標で指定することはできない。「無礼者」というわけだ。たとえば、

   A:\>CD 1ST
   A:\1ST>■

これは大丈夫。

   A:\1ST>CD 2ND
   A:\1ST\2ND>■

これも大丈夫。では、次は?

   A:\1ST\2ND>CD 1ST
   ディレクトリの指定が違います.

   A:\1ST\2ND>■

エラーが出てしまった。「下がりおろう」というわけだ。
 絶対座標は遠く距離が離れたディレクトリーへ移動する時に使う「ノンストップ切符」であり、相対座標は、1階層下の隣接ディレクトリーへ移動する時にだけ使う「各駅停車」。

    ¥記号
 ¥記号(yen mark)は、MS―DOSでは本来、ルートディレクトリーを1文字で表現する絶対座標である。たとえば、

   A:\1ST\2ND>CD \
   A:\>■

というようにルートディレクトリーへ移動できる。
 同時に、¥1ST¥2NDのように、絶対座標であることを示す接頭記号としても機能する。なおディレクトリー名とディレクトリー名の間では、ディレクトリー座標の接続記号(セパレーター)として働いているかのようだが、同じ接頭記号だと考えれば理解が早い。
 なお¥記号をディレクトリー指定の符号として用いているのは、JISコードを採用した国産パソコンだけである。IBMマシンなど欧米のパソコンのキーボードでは、バックスラッシュ(\)を使っている。

    ディレクトリー構造の俯瞰

 ディレクトリー構造は、自分自身が設計したものでも、多岐にわたると複雑になり、我ながら全体像を見るのが難しくなる。工夫が必要となる。

   A>DIR *.

2ND 90-11-08 10:27
TEST 90-11-08 10:33

 これは使えるテクニックである。ファイル名を表示せず、ディレクトリー名だけを表示する。A>DIR *.* ならば、ディレクトリー名もファイル名も全部表示するのはもちろんだ。
 平面的なディレクトリー構造は、 A>DIR *. のテクニックで管理できるだろう。しかし階層の深さを深く取っているディスクだと、少し苦しいかもしれない。
 このような時、ディスクユーティリティを活用されたい。MS―DOSディスクユーティリティとしては、E…やN…が国際的に評価を得たソフトである。どちらも、ディスクの階層構造がビジュアルに見れるので分かりやすい。優れたソフトウエアの多くは、アメリカで開発された製品である。日本、いまだし。
 これにてあなたはディレクトリー関連のテクニックをほぼ学び終え、ディレクトリー宇宙の移動の自由を手中にしたことになる。
 情報の領域には境界が無い。便宜上、デジタルデータ空間に座標軸を設定したにすぎない。境界の無い情報圏が、なぜ領域分割できるのか? ここでも空想の世界に遊ぶことができる。
 我々の目の前に高く聳えるのは、言語文化というベルリンの壁である。この最後の境界線でさえ、テクノロジーの前には敵ではない。


6章 表現するコンピューター


    MS―DOSが認識する装置
 MS―DOSは、周辺装置(デバイス)をファイルとして扱うことができるという大きな特徴を持っている。この機能が、大いにMS―DOSの評価を高めた。実際に試して見よう。次のように実行すると、キーボードから入力した内容が、そのままプリンターへと印字される。

   A>COPY CON PRN

コマンドの意味するところは、CON(コンソール:制御卓、つまりキーボード)のデータをPRN(プリンターのデバイス名)へ出力せよ、ということになる。
 先に実行したことは、MS―DOSにとって、ディスクに記録されているファイルを次の構文でコピーするのとなんら変わらない。

   A>COPY TEST.TXT NIKKI.DOC

 この通り実行すると、TEST.TXT というファイルが、NIKKI.DOC というファイル名に変わってディスクに複製されることになる。実行後も、TEST.TXT というファイルが元の内容を留めたまま、 相変らずディスクに残っていることはもちろんである。
 COPYコマンドを実行すると、元のファイルは消えてなくなると思い込む人が多いのには驚かされる。これは誤解だ。
 もっとも、複製されたファイルが、元のファイルと全く同じというわけではない。例外なく作成日時が異なっているはずだ。
 そのファイルがいつ作成されたかは、おのおの、付属情報として刻み込まれる。これをファイルのタイムスタンプという。タイムスタンプはDIRコマンドで見るのが手っ取り早い。
 コピー元のファイルは、必ずコピー先のファイルよりも古いから、データ世代の概念を大切にしなければならない。
 データ破壊事故に備えてデータをバックアップする(安全のためデータのコピーをとる)とき、どの時点でバックアップするか、週単位か月単位か、古いバックアップデータはいつ廃棄するか、テクニックはさまざまである。これを世代管理という。
 世代管理をきちんと行なっている人ほど事故に強いことが、いざという時に立証される。
 COPYを重ねることによってディスクのデジタルデータが信頼性が低くなることはない。ディスクに故障さえなければ、COPYは無限に可能である。
 次の構文は、TEST.TXT というファイルの内容をプリンターへ出力する。参考までに。

   A>COPY TEST.TXT PRN

 次の構文は、キーボードから入力した文字列を TEST.TXT というファイル名でディスクに保存する。文字列を入力した後、コントロールキーを押しながらZキーを押せば、その瞬間にメモリー内の文字列は、ディスクへとその居場所を移す。

   A>COPY CON TEST.TXT

 MS―DOSが用意している周辺装置のファイル名は、次の通り。

AUX   補助入出力デバイス(主として通信ポート)
AUX1  補助入出力デバイス
AUX2  補助入出力デバイス
CON   コンソール(キーボードとディスプレイ)
PRN   プリンター
NUL   入出力ダミー
CLOCK 内蔵時計(ユーザーは使用禁止)

※AUXは AUXilliary(補助)の略。

 これらをデバイスファイルという。予約ファイルともいう。ユーザーが使わないよう、MS―DOSのシステムがあらかじめ準備した「予約席」である。
 ちなみにMS―DOSのSWITCHコマンドを使ってその機能を設定できるデバイスは次の通りである。SWITCHコマンドは外部コマンドなので、SWITCH・EXEまたはSWITCH・COMファイルがあることを確認してから実行して欲しい。

   A>SWITCH

 MS―DOSで装置(デバイス)の使用を宣言するには、CONFIG.SYS というコンフィギュレーション・ファイルにDEVICE文を記述しなければならない。

DEVICE文の例

 DEVICE=MOUSE.SYS
 DEVICE=RSDRV.SYS
 DEVICE=PRINT.SYS

 それぞれの装置に付いて、MS―DOSは MOUSE.SYS(マウス)、RSDRV.SYS(RS―232C)、PRINT.SYS(プリンター)のデバイスドライバーを提供、ドライバーファイルをディスクに添付している。MS―DOSシステムディスクの中をDIRコマンドで見て欲しい。

    時代の花形、DTP

 DTP(デスクトップ・パブリッシング)が時代の熱気となってブームを巻き起こしている。書斎のデスクの上にパソコン、ワープロソフト、レイアウトソフト、それにプリンターを用意すれば、それがDTPである。できればイラストやロゴ、写真、絵もデジタル化したいので、図形ソフトとイメージスキャナーも欲しい。
 DTPを採用した印刷所や出版社、新聞社が増え続けている。パーソナルな報告書、インハウス印刷、美しいプレゼンテーションを心掛けるうちに、商業レベルの出版などにも結実させることも不可能ではない。
 またプロ仕様でなくとも、パソコンに入力したデータは、できるだけ美しく印刷したい。それを握るのがプリンターとフォントである。

    プリンターの潮流
 パソコン入門者が一度は使う熱転写プリンターに高品位の波が押し寄せ、現在は美しい48ドットの機種がポピュラーになってきた。かつては滲みなど難点があったインクジェット・プリンターも実用性が向上し、愛好家が増えている。
 ドットインパクト・プリンターは捨て難い魅力があり、プリンターメーカーは48ドットの高品位化とコストダウンでドットプリンターの生き残り戦略を展開し始めたばかりである。
 高級とされるページプリンターも低価格化が進んでいる。印字の美しさ、静かさ、スピーディさは、多くのメリットをもたらすので、オフィスからパーソナルユースへと普及が進んでいるところである。
 美しいプリントアウトを目指して多様化して来たプリンターの進歩は、さまざまなインパクトを及ぼしつつある。プリンターの進歩と呼応するようにアプリケーション・ソフトも機能を高めてきた。
 高い品位の印刷物がもたらす効用は、決して少なくない。もしページプリンターを手にでき、罫線とグラフィックス(CG)を印刷したとするならば、静かに速く、そしてあまりに美しいプリントアウトに、きっと驚きさえ覚えると思う。
 プリンター(printer)は、コンピューターの出力装置の1つで、印刷機の一種である。パソコンが処理したデータを紙やシート、シールに印刷するのに用いている。
 ワープロとして用いる時は文書を印刷するし、コンピューター・グラフィックス(CG)を印刷することもある。ハードコピーといって、ディスプレイに表示されたままを印刷することも可能である。
 パソコンで一般的に使用されているプリンターを構造で分類すると、次の4種類を挙げることができる。

(1)熱転写プリンター(thermoelectric printer)
 ワープロ専用機に付属しているプリンターは、このタイプが圧倒的に多い。パソコンでは、入門プリンターとして扱われている。微小なヒーターがヘッドを加熱しながらヘッドをインクリボンに押し付け、印刷用紙に文字やグラフィックスを熱融着させて印字する。

(2)ドットインパクト・プリンター(dot-impact printer)
 印刷スピードは実用的であり、しかもインクリボンの消費量が少なくてランニングコストが安いため多くのビジネスパソコンに接続され、一九八〇年代のオフィスではどこでも「バリバリ」と音を立ててファンフォールド紙を吐き出す光景が見られた。
 ヘッドには24本×24本(24ドットの場合)のスチールピンが埋め込まれ、ソレノイド(電磁石)の原理でこのピンの束(印字ヘッド)を出し入れし、インクリボンの上から印刷用紙を叩くことにより印字する。
 印刷するとジャギー(ギザギザ)が目立ち、品位が低く、校正刷りにしか使えないのが最大の欠点である。

(3)インクジェット・プリンター(ink-jet printer)
 ドットインパクト・プリンターに比べると印字品位が高いのが長所である。価格は多少高いが、ページプリンターほどではない。印字スピードの速さと作動音が静粛なのが最大のメリットである。一九八九年後半からビジネスとパーソナル・ユースのパソコンユーザーに少しずつ普及し始めている。
 圧電原理により、細いノズルから用紙にインクを吹きつけて印刷する。このためノズルのインク詰りの不安が抜け切れず、メーカーではオート・クリーニング機構を組み込んでユーザーの信頼感を勝ち取ろうとしている。また一部機種にインクの大量浪費や文字まわりのにじみが問題となったこともある。

(4)レーザープリンター(Laser Beam Printer LBP)
 ページプリンターの大半がレーザープリンターである。鮮明で美しいプリントアウトと、非常に静かに印刷できる長所から、オフィスの主役である。印刷スピードは速い。年々低価格化が進み、一九九〇年にはA4マシンが個人ユーザーに普及し始めた。
 レーザー光を感光ドラムに当てて印刷データ(画像)を感光させ、トナー(顔料)により1ページ単位でプリントアウトする。これはコピーマシンや一部のファクシミリ機と同じ原理である。DTP(デスクトップ・パブリッシング)に用いられるのはこのタイプだ。
 おしむらくはカラー化が難しく、高価である。カラーのレーザープリンターが一般ユーザーの手に届くようになるのは一九九〇年代の後半だろうと目されている。
シリアルプリンター/ページプリンター

(1)シリアルプリンター(serial printer)
 印字を1文字ずつ連続して(serialに)行なうプリンターをシリアルプリンターという。一方、ページ単位で印刷するのがページプリンターである。この分類の他に、1行単位で印刷する方式もあり、これをラインプリンターという。
 インハウス(企業内)印刷にページプリンターが増えつつあるが、ファンフォールド紙(連続用紙)の便利さやカーボン複写などの用途から、ドットインパクト・プリンターなどシリアルプリンターとの相乗りが続くだろう。
 シリアルプリンターは、ドットインパクト方式が主流だ。熱転写プリンターもシリアルプリンターだが、大半はパーソナルユースである。

(2)ページプリンター(page printer)
 1ページ単位のイメージをメモリーに展開して印刷するプリンターをいう。レーザープリンターは全てページプリンターである。逆に、ページプリンターは全部レーザープリンターというわけではない。ページプリンターの中には、液晶プリンターというタイプも少なくない。
 歴史的には、一九八〇年代半ばにキヤノンが「レーザーショット」を発表したのが日本国内のページプリンター普及の幕開けだった。アップル社、ヒューレット・パッカード社、セイコーエプソン、東芝など、キヤノンの印字機構(エンジンという部分)を採用したプリンターを発売するメーカーが多いのが特徴である。
 欧米ではページプリンターの普及率は高いが、日本で普及が遅れたのは、欧米に無い全角の漢字の存在が壁として聳え立っていたからである。

    品位という美の尺度

 印字品位とはプリントアウトされた印刷物の美しさを表わす度合いである。プリンターの種類を問わず、ドット数、またはdpiを単位として、そのプリンターの印字品位がどの程度かを知ることができる。
 一九八九年まで、1文字を縦24ドット×横24ドットの576ドットで印字する24ドット・プリンターが普及していた。縦横のドット数が多いほど品位は高く、より美しく表現でる。レーザープリンターでは32ドットという機種もある。
 かつては16ドット・プリンターが標準だったが、今はほとんど使われていない。24ドットも退調気味なのが現状である。代わって一九九〇年の半ばから48ドット・プリンターが低価格化し始め、標準となりつつある。

      16ドット → 24ドット → 48ドット
      1980年〜  1985年〜  1990年〜

 dpiは Dot Per Inch の略で、1インチ当たりのドット数のこと。プリンターだけでなくイメージスキャナーやディスプレイの解像度を表わす単位でもある。DPIと大文字で表記することもある。
 熱転写/ドットインパクト/インクジェットタイプのプリンターだと48ドットでも200dpi弱だが、レーザービームのページプリンターは240dpi〜300dpiの品位だから美しい。
 プロ用のページプリンターには、400dpi〜600dpiという高解像度のものも市販されている。
 商業出版物は1000dpi以上の品位が必要だとされる。写植文字の解像度は2000dpi〜3000dpi前後で、本書は約2500dpiで印刷されている。

    印字スピード
 プリントアウトの速度は、熱転写/ドットインパクト/インクジェットの各プリンターでは1分当たりの印字文字数「字/秒」で示すのが普通である。CPS(Character Per Second)と表記することもある。
 同じ1文字でも、全角の漢字と半角の英数カナとでは、2倍程度印字スピードが変化するので、全角漢字で統一して比較すると混乱がない。
 ページプリンターの印字スピードは、A4またはB5の印刷用紙を1分間に何枚印刷できるか「枚/分」で示す。

印字スピードのおおよその目安(文字種は全角漢字)
熱転写プリンター             40字/秒
ドットインパクト・プリンター       55字〜75/秒
インクジェット・プリンター       120字/秒
LBP(レーザービーム・プリンター)   4枚〜8枚/分

 プリンターを使用する際、作動音(騒音)を避けることはできない。あまり大きな騒音だと、会話もできないほど周囲に迷惑をかけることになる。使っている本人はさらにストレスがたまる。
 作動音の単位は、伝統的にdb(Deci Bell の略=デシベルともいう)を使う。これはANSI(米国規格協会の略称、American National Standards Institute=アンシまたはアンジ)規格で定めている作動音のレベルである。

印字時の作動音の比較
熱転写プリンター             46db前後
ドットインパクト・プリンター       55dB前後
インクジェット・プリンター        45dB前後
レーザービーム・プリンター        53db以下

 しかし人間の感覚は不思議なもので、LBPはdbの数値ほどにはうるさく感じられない。
 LBP(Laser Beam Printer=レーザービーム・プリンター)は、電子写真方式のメカニズムを採用したページプリンターである。ページプリンターの主流を占めるメカニズムとなっている。
 大衆機でも240dpi、高級機は600dpi、標準は300dpiという高品位なプリントアウトを可能にしている。アウトライン・フォントがソフトウエアまたはプリンターに装備されれば、印字はみちがえるように美しくなる。
 帯電した感光ドラムに高エネルギーのレーザー光で文字パターンを浴びせ、トナーを静電気で付着させて直ちに現像、印刷用紙に転写する原理だ。
 超微細レーザー光で文字をパターン化するため、高品位かつ高速印字が最大の特長である。
 LBPに関して、世界的に日本、とりわけキヤノン、シャープの技術力の誉れが高く、レーザービームの電子写真方式のメカニズムを採用したページプリンターや事務用複写機(コピーマシン)、それに一部の高級ファクシミリ機に採用されている。
    国産プリンターの標準
 国産のMS―DOSマシンでは、PC―9801が日本の標準機ということもあって、98機の日本語プリンター、PC―PR201とその対応機が標準プリンターになっている。
 このためプリンターメーカーの大半は、製品にPR201対応を銘打っている。いわゆるPR201エミュレーションである。
 ワープロソフトなどのアプリケーション・ソフトも、201対応は常識である。東芝のJ―3100は、東芝のMS―DOSに201対応ドライバーを添付しているくらいである。
 ところがエミュレーション・モードだと印字の品位が劣ることもある。ワープロソフトが、そのプリンター専用のネイティブ・モードに対応しているのが理想である。
 プリンターの表現力の話題から外れるが、米国製のアプリケーションを使っていると、面白いアイデアが生かされており、思いがけない啓示を受けることがある。
 たとえば、プリンターは1ページ目から印刷を始めるので、100ページもの文書をプリントアウトすると、後で順序を引っ繰り返すのに人手がかかる。
 中にはページの最後から印刷を開始するものがある。これは時系列を逆にたどるグッドアイデアだと感心させられる。プリントアウトが済んだ用紙の束は、1ページから順番に揃う。これを印刷業界では「丁合い」と呼んでいる。
 このように、難しい問題を解決するときは、逆へ逆へと発想を回転させると案外うまくいくこともある。巨大なファイルを削除する時、消すよりは空白1文字の小さなファイルをコピーして同じ結果を得ることもある。
 コンピューターはデジタルな世界だから、没頭すると、どうしても人間は黒白の2値で判断を行ないがちだ。だがプリントアウトの印字やディスプレイの表示をとくと眺めて欲しい。どんなに複雑な文字とグラフィックスも、細かい点々がたくさん集まって形をなしていることに気付く。微妙な陰影を織りなすフルカラーのグラフィックスも、拡大すると3色か、せいぜい4色の色素が混じり合
っているに過ぎない。
 このようにコンピューターは、ミクロとマクロの接点に立って情報という抽象的な存在を操作する機械なのだ。コンピューターは、白でも黒でもないデータを排除するわけではない。混ぜ合わせて表現する。しかし人の目にはグレーに見える。善と悪が混じり合って存在する人間の温かな情報圏と本質的に変わるところはない。

    ディスプレイ
 コンピューターの表示装置をディスプレイ(display)または、モニター(monitor)と呼ぶ。デスクトップ・パソコンでは、家庭用テレビに似たCRT(Cathode Ray Tube)というタイプが用いられる。CRTはブラウン管を用いているので、映像が鮮明である。
 しかしCRTは重くて大きいので、LCD(Liquid Crystal Display)という液晶ディスプレイ、あるいはプラズマ、EL(Electronic Luminescent)、LED(Light Emitting Diode)などのタイプがノートパソコンに使われている。

  MS―DOSマシンのビジュアル表現力の限界

 国産機を代表するPC―9801などのMS―DOSパソコンの大半は、640ドット×400ドットのピクセル(Picture cell、pixel=画素のこと)で表示している。
 ドット数が多いほど表現力が豊かであることはもちろんだが、エンジニアリング・ワークステーション(EWS)が1152×900ドットといった緻密なディスプレイ画面を実現しているのと比べると、見劣りがする、と申し上げねばならないだろう。
 これは一九八二年一〇月発表のPC―9801のディスプレイ解像度が640ドット×400ドットであり、これに大半のMS―DOSマシンが追随した過去の経緯に寄るところが大きい。MS―DOSにも限界がある。
 OSとハードウエアがこうだから、アプリケーション・ソフトも640ドット×400ドットの解像度を意識して開発された。かくしてMS―DOSユーザーは640ドット×400ドットのディスプレイに付き合わざるを得ない現状だ。
 ちなみにグラフィックスに強いと定評のあるマッキントッシュUciのRGBカラーディスプレイの標準は640ドット×480ドットであり、256色の同時発色を行なう。
 またボードの追加とディスプレイの交換で1152×870ドットの高解像度を得ることができる。さらに1677万色をフルに表示できる24ビットのフルカラーにもカラーボードの追加で対応している。
 これに対してMS―DOSマシンは、アナログ・ディスプレイを用いたとしても、標準では4096色中16色を表示するだけである。デジタル・ディスプレイならば、白黒ないしは8色しか表示できない。
 キャラクター(文字)だけの表示ならモノクロでも我慢できるし、表現力もさほど必要としないが、グラフィックス全盛のビジュアル時代とあっては、640ドット×400ドットでは物足りない。
 PC―9801の一大欠点であるグラフィックス表示能力をカバーしようと、ハイレゾルーション(高解像度、略してハイレゾ)というモードを備えた高級機種が開発された。たとえばPC―9801H/RL/XLシリーズ機が持つ1120ドット×750ドットの高解像度モードが代表的である。
 しかしMS―DOSを初め、メインメモリー、アプリケーション・ソフトの変更を伴うため互換性に欠け、現時点では見るべきソフトウエアがほとんどなく、一部のプロフェショナル・ユースを除いては、普及には遠い道のりである。それにグラフィックスならマッキントッシュ、というムードも手伝って、ニッチ争いまで絡み出す。
 ディスプレイだけの改善で表現力を高めることのできるのがドットピッチ(dot pitch)で示す解像度である。これはディスプレイの性能を示す基準の一つで、ディスプレイ画面の大きさが同じなら、ドットピッチが小さいほど表現力が豊かである。
 640ドット×400ドットのカラーディスプレイでは、普及型がドットピッチ0・39mm、高級型は同0・28mm。ドットピッチを0・28mmよりも細かくしても、解像度には意味がなく、かえって見ずらくなる。
    ◇
 なおディスプレイには、デジタルRGBディスプレイとアナログ・ディスプレイとがある。MS―DOSマシンは、アナログ・ディスプレイを用ると、4096色中16色が表示可能であり、デジタル・ディスプレイならば、白黒ないしは8色の同時表示しかできない。
 なお、アナログRGB(Analog Red・Green・Blue)ディスプレイを用いれば、16色といわず、4096色が表示できるではないか、との反論を頂きそうである。それは正しい。ただしそれはRGB各色に何階調かを割り当て、電子的に色を混ぜて4096色を実現しているわけである。
 アナログRGB自体、色彩を連続的に変化させ、CRTモニターで多色を発色するためのインターフェースとなっている。RGBの赤・緑・青(Red/Green/Blue)の3つの信号線と、1つまたは2つの同期信号線などからなる。時にはパソコンの裏を眺め、アナログRGBのポート(出入口)とデジタルRGBのポートの違いなどに思いを寄せて頂きたいものである。
 なお富士通系パソコンではRGBIの4本の信号を用い、デジタルで16色表現ができるように改善した機種もある。Iはインテンシティ(Intensity)のIで、明暗信号である。

    通信デバイス
 パソコンの通信デバイスといえばRS―232C(アールエス・ニーサンニー・シー)というほど、どのパソコンにも設けられている標準的な通信規格である。
 パソコンでネットワークを組む際の情報の出入口、そう考えてもらっても構わない。パソコンの標準的な通信ポートである。シリアル伝送形式のものの代表的な存在だ。通信用として最も汎用性がある。より正確には、RS―232Cはモデムとコンピューターとの接続のための電気的規格である、と表現しなければならない。
 他のパソコンと直結し、データやファイル、プログラムを交換する時にも利用される。イメージスキャナーやプリンターとパソコンとの接続、計測器との接続などにも使用されている。こうしたデータ転送ではSCSIインターフェースのほうが転送スピードが速くて有利である。RS―232Cで周辺装置を接続すると、待ち時間が長くて閉口するかもしれない。
 コネクターは、D―sub(ディーサブ)25ピンと呼ばれるものにほぼ統一され、汎用性は高い。ただケーブルに汎用性が無いことが多い。これはパソコン側のコネクターの形が機種によって異なるなどの理由による。
 ケーブルにはストレート系、それにクロス(またはリバース)系の2タイプがある。パソコン同士はクロスケーブルで、パソコンとモデムはストレートケーブルで接続する。

    モデム
 パソコン通信を行なう際に必要なのがモデム(MOdulator DEModulator=MODEM)というデータ変復調装置である。パソコンと電話回線を接続し、データ信号を受信/送信の双方向に変換する。
 変調器を modulator といい、複調器を demodulator というが、これを合わせて命名された。
 モデムの役割は、あなたのコンピューターが送信する時にはデジタル信号を音声帯域のアナログ信号に変換(変調)し、これをシリアル通信信号として電話回線に乗せる。逆に受信する時には、送られてきた音声帯域のアナログ信号を元のデジタル信号に戻す(復調)。
 通信速度は300ボー、1200、2400、4800、9600、19200ボーなどがある。ボーの数値が大きいと短時間に大量のデータを送受できる。
 パソコン通信ネットワークでは、1200と2400ボー程度が多く普及している。コストと効率を考えると、2400ボーの通信速度が好ましい。
 なおボー(baud)とは、データの伝送スピードを表わす単位である。1秒に送受するデータのビット数がボー。bps(bit per second)という単位とほぼ同じと考えて構わない。
 モデムのタイプには、送信と受信を同時に行える全2重方式と、いずれか一方が送信(または受信)できる半2重方式がある。
 モデムには、通常NCUという回線制御装置が内蔵されており、受話器を置いたまま回線に接続するフッキング、自動的にダイヤルするオートダイヤルなどの電話回線コントロールが行える。
 これらの制御には、通常コマンド方式で行われ、ヘイズ社の開発したATコマンドが多く用いられる。
 最近は、モデム自身がプロトコル(通信手順の規格)という名の個性を持つに至った。MNPモデムが最もポピュラーである。MNPのレベル5(MNP/5)というプロトコルは、データ圧縮、エラー回復の信頼性が高い。高速に、正確コミュニケーションが手軽に実現するからだ。
 一九八九年以降、MNPを採用したネットワーク、モデムが急に増え、2400bps、MNP/5が事実上の標準である。
 電子メール、新聞データベース、チャット(ネットワーク上のおしゃべり)などの趣味と教養と家庭生活にパソコン通信ネットワークを利用するのなら、2400bps、MNP/5は非常に妥当な選択である。
 もし100KB以上のデータファイルを日常的に送受するビジネス用途のネットワークならば、9600bps以上のスピードが必要だ。

    マウス
 最もポピュラーなポインティング・デバイスであるマウス(mouse)は、米国のゼロックス社で開発された。
 テーブルの上でマウスを滑らせると、マウスの裏側のボールが反応して動く。この動きをコンピューターが座標の相対的な移動量としてとらえ、カーソルをマウスに忠実に動かす。
 図形処理ソフトなどのアプリケーションがキーボードの欠点を補うポインティング・デバイスとして用いる。スクリーン上でカーソルを移動させ、座標を入力するのに用いる。マウスには1個〜3個のボタンが付いている。
 ボタンを押して離すことをマウスではクリックという。ダブルクリック(ボタンを素速く2回押して離す)は実行、左ボタンはYESの合図かキーボードのリターンキーの代用、右ボタンはNOの合図が普通である。

   イメージスキャナー
 イメージスキャナー(image scanner)は、コンピューターに画像データを入力する装置である。人間の手で被写体を滑らせてスキャンするハンディタイプと、事務用の複写機と同じようにスキャナーの光源が移動して入力するものがある。
 画像データをCCDセンサー(光電素子)で読み取り、これをデジタルデータとしてパソコンに入力する。
 パソコンとのインターフェースはRS―232C、SCSI、専用インターフェースボードなどがある。RS―232Cだと読み取り速度が遅いが、手軽である。SCSIインターフェースは高速にデータ転送するので、高品位あるいはカラー、または大きなサイズの画像読み取りに必須である。
 イメージスキャナーには、読み取りのための専用ソフト(ドライバーやスキャニング・ユーティリティ)が添付されている。イメージスキャナーからの画像信号を、直接読み取れる図形処理ソフト(花子、鶴など)もある。この場合、アプリケーション・ソフトが利用可能なスキャナーを明示しているので、その中からイメージスキャナーの機種を選択しなければならない。


7章 世界の標準


    世界の標準テキスト、ASCIIファイル

 MS―DOSは、もともとキャラクター・ベースのOSだから、テキストを管理するのは得意中の得意である。テキスト書きはMS―DOSマシンで、画像データの作成はマッキントッシュで、というふうに使い分けるのはベスト・チョイスだ。
 MS―DOSでは、テキストをアスキーファイル(ASCII file)という形式でディスクに書き込み、保存すると汎用性が高い。ASCII形式のファイルを標準テキストファイルともいい、これは数字を含む文字(テキスト)だけを内容とするファイルである。ASCII形式のファイルは、大半のエディター、ワープロソフト、データベースソフトで読み込める。

    数値としての数字、文字としての数字
 このファイルで扱う数字は、数値としての数字ではなく、文字としての数字であることを銘記して欲しい。コンピューターでは、数値としての数字、文字としての数字を、それぞれ見分けるので、コンピューター言語を学ぶ時には特に意識する必要があるだろう。
 ASCIIファイルは、MS―DOS同士で高い互換性があり、たとえば「MS―DOSの標準テキストファイル」と呼ばれるASCIIファイルだと、異なる機種のパソコン同士でも読み込むことができる。世界の標準テキスト形式といって良かろう。世界の標準機、IBM PCシリーズAT/XTの貢献度、大なりである。
 異なるOSのマシン、たとえばアップル社のマッキントッシュでも、ASCIIファイルならば簡単に取り込むことができる。逆にマッキントッシュのTEXTという形式のテキストファイルをMS―DOSへと読み込むことは簡単だ。
 IBMの汎用コンピューターは、独自のコード体系によるEBCDIC(エビシディック)を用いているが、非IBM機を含めた汎用コンピューターの大半もEBCDICを使っているため、MS―DOSと汎用コンピューター側のコンバーターでデータを変換できる。かくして世界に広がる異機種マシンは、水平(パソコン間)に、垂直(パソコン―大型コンピューター)にと、その輪をリンクさせ続ける。

    異アプリケーション間の連鎖

 Lotus1―2―3、Excel、Aldus PageMaker、dBASE、R:BASE、といった国際的アプリケーション・ソフトならいざ知らず、国産ソフトの場合、データを異機種同士で交換するのに不安を覚えるかもしれない。
 これもMS―DOSのASCII形式の標準テキストファイルが解決する。
 たとえば表計算ソフトのLotus1―2―3も、スプレッドシートのデータを、CSVというスタイルのASCIIファイル形式で読み書きするから、ASCIIファイルによってどれだけデータが救われているか知らない。入出力の双方向で、というのがデータ互換のミソである。読めるだけ、あるいは書き込めるだけ、という片方向では輪が広がらない。

■CSV形式のテキストファイル
"AI出版","03-40X-118X","〒150 東京都渋谷区5-29"
"あいだ写真店","02XX-74-2244","〒999-15 相川町成田町 3"
"竹内画廊","0XX-222-3333","〒111 東京都西堀2-75 PICビル1F"

 蛇足だが、フロッピーディスクで異機種間のテキストを2HD/2DDの区別とフロッピーディスクのサイズ(3・5インチ/5インチ)が統一されていなければデータ交換はできない。
 この問題さえ解決すれば、MS―DOSパソコンとMS―DOS変換機能付きワープロとの間でも双方向に互換性がある。
 また異OS間でも、コンバーターと呼ばれるデータ変換ソフトがあれば、ASCII形式でさえあればBASICとMS―DOSなどとの間に、双方向に互換性を保つことができる。この際、BASIC側のファイルはASCIIセーブされていなければならず、MS―DOS側のファイルもASCIIファイルで保存されていなければならない。

    キーボード出力
 どんなOSでも、そのOS用のエディター(テキスト編集ソフト)を使ってテキストを書くのが普通である。エディターを使う前に、簡単にMS―DOS形式のテキストを書いて、これをディスクに保存してみよう。

   A>COPY CON TEST
   TEST
   1991-01-01
   ^Z
     1個のファイルをコピーしました.

 最後の^Zは、CTRLキーを押し続けながらZキーを押せば良い。Zに続いてリターンキーを叩いたとたん、

   TEST
   1991-01-01

を内容とするテキストファイルがAドライブに書き込まれただろう。

   A>COPY CON 123.TXT
   A>COPY CON LOVE.DOC

など、ファイル名を変えてお試し頂きたい。

    エディター
 MS―DOSのエディターは、ASCII形式のテキストファイルをディスクに書き込み、読み込む。
 MS―DOSには、EDLIN.EXE (旧MS―DOSでは EDLIN.COM)というライン・エディターが無料で添付されている。このエディターは、パソコンの歴史を我々に教える証言者として生き残っている。
 EDLIN.EXE は、ソフトウエアと呼ぶには恥かしいくらいコンパクトなプログラムである。サイズは8000バイト足らずの小さいプログラム。文字列を1行単位で編集するので、ライン・エディターという。
 使い方は、以下のごとし。

   A>EDLIN TST.TXT
   新しいファイルです.
   *i
    1:*this is a test.
    2:*^C
   *e
   
 今作ったばかりの TST.TXT をTYPEコマンドで確かめてみよう。

   A>TYPE TST.TXT
   this is a test.

   A>■

 EDLIN(エドリン)の使い心地はいかがだったろうか。昔のエディターは、EDLINと大同小異だった。
 一九八五年頃からは、日本にも優れたMS―DOSエディターがたくさん登場した。アメリカ製なら WordMastar、国産なら MIFES が代表選手だった。日本語の機能はFEP(フロントエンド・プロセッサー)が肩代わりした。
 全角処理と日本語FEPは日本独特の必要から生まれたが、中国、韓国などの漢字文化圏へもコンピューターが普及する上で大きな貢献を果たすに至った。
 これらのエディターはスクリーン・エディターと呼ばれ、ディスプレイ全体の画面をフルに生かしてテキストを編集できる。ワープロソフトも、広い意味ではエディターの一種である。エディターに日本語FEP、文書整形機能、それに印刷ツールを配したものが日本語ワープロソフトである。
 純国産のエディターは、現在、MIFES、Vz Editorなど5〜6の製品が評価を得ている。検索、置換の両機能でテキストの品位を高め、マルチテキスト編集の機能を駆使して信じられないくらいのスピードでテキストを書くことが可能になった。

8章 コミュニケーションの支援体制


    過去を記憶するテンプレート

 JC(日本青年会議所)が直前理事長に敬意を払う風習は、見習うべき価値があると思っていた。MS―DOSにも似通った機能があったような、と考えていたら、それはテンプレート(Template)機能だった。他のOSには無い、MS―DOSのユニークな機能である。
 1世代前に受けた命令を1つだけ記憶する、それがテンプレートである。あらためて新しい命令を A> のコマンド行で実行した瞬間、過去は消え、テンプレートのメモリー領域には新しい命令が置き換わる。
 テンプレートを再現するのは、ファンクション・キーというスイッチ群である。だから大半のMS―DOSマシンにはファンクション・キーが付いている。
 テンプレート機能は、画面の下端に、白黒反転のボックスで一覧される。キーボードから打ち込んだコマンドの内容をいったんバッファーというメモリー領域に記憶し、あとで再現するために用意されている。
 テンプレートは、MS―DOSのコマンドモードで最後にタイプインした入力結果を記憶する。似たようなコマンドを繰り返し実行する際、タイプインの回数が少なくて済むので、労力の節約になるし、繰り返しを正確に実行できるメリットもある。
 MS―DOSのIBM版であるPC―DOSでドス・エディット・キー(Dos Editing Key)」と呼ばれるものは、テンプレート機能のことである。

ファンクション・キーと機能表示の対応

f・1  f・2  f・3  f・4  f・5
C1 CU CA S1 SU

f・6 f・7 f・8 f・9 f・10
VOID NWL INS REP ^Z

 MS―DOSコマンドモードではf・3キーを最も頻繁に使う。CAは、直前のコマンドの命令をカーソル位置のコマンドラインへコピーする機能である。

テンプレート一覧●f・1〜f・10の機能

C1 (Copy one)   1文字コピー
CU (Copy Up)    指定した文字の直前までコピー
CA (Copy All)   全部コピー
S1 (Skip one)   1文字スキップ
SU (Skip Up)    指定した文字までスキップ
VOID (VOID)       入力文字列を取り消す
NWL (NeW Line)   テンプレート内容を更新する
INS (INSert)     文字列挿入モードへ入る
REP (REPlace)    文字列挿入モードを抜ける
^Z (CTRL+Z)     CTRL+Zコードを入力する

 あなたのMS―DOSマシンがPC―9801シリーズ機なら、ファンクション・キーで面白いことができる。

CTRL+f・6  25行/20行表示の切替
CTRL+f・7  SHIFT+f・〜の機能表示/ボックスを消す
CTRL+f・8  画面を全部消す
CTRL+f・9  スムース・スクロール

 実際に試してみると、MS―DOSを自分自身のためにカスタマイズしたかのごとく感じるだろう。
 MS―DOSのアプリケーション・ソフトも、このキーを見逃すはずもなく、多くの機能を割り振る。アプリケーション・ソフトによっては、CTRLキーとSHIFTキーの組み合わせにより、50通り以上もの機能を割り当てたものがある。

    二重の権力構造

 バッチファイルは、あなただけのコマンドであると言い換えても良いだろう。内包と外包を併せ持つ命令系統という概念が、目に見える形で提供されるので、興味深い。このことは後述する。
 バッチファイル(batch file)は、コマンドを1つ、または幾つかのコマンドを1つに納めたファイルである。バッチファイルを用いると、日常的に繰り返して用いる定型的な処理を自動化できる。バッチファイルのファイル名は、必ず .BAT とするのが決まりだ。
 MS―DOSには、あらかじめ AUTOEXEC.BAT というバッチファイルが添付されている。MS―DOSは、システムを立ち上げる時、自動的に起動ドライブのルートディレクトリーに AUTOEXEC.BAT があるかどうかを確かめる。あれば AUTOEXEC.BAT の内容を忠実に実行する。
 そもそもバッチ処理(batch processing)とは、複数の処理を連続して実行することだが、MS―DOSのコマンドモードではバッチファイルでバッチ処理を実行できる。これにより繁雑なコマンド入力の労力を省くことができる。
 次のプログラムは、ハードディスクのデータを一括してフロッピーディスクにバックアップする時に用いる典型的なバッチファイルである。

BKUP.BAT
 COPY B:\123DAT\*.WJ2 C:\
 DEL B:\123DAT\*.BAK
 COPY A:\*.DIC D:\

 このバッチファイルは、Bドライブのハードディスクのサブディレクトリー¥123DATに納めているスプレッドシートのデータファイル(拡張子が .WJ2のファイル)を、全てCドライブのフロッピーディスクにバックアップ(データ破壊事故に備えてファイルの複製を取ること)し、次いでバックアップファイル(拡張子 .BAK)を削除する。
 用途に応じ、このようなバッチファイルをユーザー自身が自由に作り、環境を整えるわけである。

    内包と外包を併せ持つ命令系統

 あるコマンドを1個だけ記述したバッチファイルを作ってみよう。ファイル名はDIRB・BATとしよう。

   A>COPY CON DIRB.BAT
   DIR B:
   ^Z
         1個のファイルをコピーしました.

   A>■

 この DIRB.BAT は、「Bドライブを参照せよ」との命令である DIR B: というコマンドを内包している。逆の立場から見れば、DIR B: というコマンドは、DIRB.BAT というファイルに外包されるものである。
 実行結果は同じなので、我々は DIRB.BAT を実行しても構わないし、DIR B: とタイプインしても構わない。
     ◇
 コンピューターから見れば、命令者はどちらでも構わないのだが、人間が外包関係と内包関係を知っていることこそが重要なのである。しかし、これでは、一体全体何のことか分からない。
 では、次のバッチファイルを作ってみよう。

   A>COPY CON DIR.BAT
   DIR B:
   ^Z
         1個のファイルをコピーしました.

   A>■

 早速、実行してみる。

   A>DIR

 MS―DOSがディレクトリーを参照したのは、果たしてAドライブだろうか、それともBドライブだろうか? この時、実はコンピューターはAドライブを読みに行くのである。
 原因は単純だ。この時MS―DOSは、DIR.BAT を実行したのではなく、内部コマンドのDIRを実行したのである。
 MS―DOSはあらかじめ実行型ファイルの実行優先順位を与えられている。それは、

  (1)   MS―DOSの内部コマンド
  (2)   .COM (コマンド・ファイル)
  (3)   .EXE (エグゼキュート・ファイル)
  (4)   .BAT (バッチファイル)

の順序である。たとえばワープロソフトの一太郎に JXW.EXE、JXW.COM の2つのファイルが添付されているが、これにユーザーが JXW.BAT というファイルを作ったとすると、MS―DOSは、

   JXW.COM→JXW.EXE→JXW.BAT

という優先順位で実行していく。「これでは、拡張子だけ異なる同一ファイル名が存在しては困ることになるのではないか」との疑問が出そうだ。しかし心配御無用。

   A>JXW.COM
   A>JXW.EXE
   A>JXW.BAT

とすれば、それぞれ使い分けながら実行可能だ。JXW という主ファイル名を持つ実行型ファイルがただ1個しかなければ、JXW.BAT のバッチ処理を

   A>JXW

とタイプインするだけでOKである。

    システムの制御

    リダイレクト(redirect)
 MS―DOSは、自由度の高いOSである。ディスクやディスプレイなどの入出力装置をファイルとして扱える。入出力先を変更する機能をリダイレクトという。システムの制御を手中にした、と感じるのはリダイレクト機能を真骨頂とする。
 リダイレクトを応用すると、たとえば、ディスプレイ画面(コンソール)に出力すべきデータをファイルに出力し、あとでデータをゆっくり見ることもできる。キーボードから入力すべきものを、ディスクに書き込まれているファイルから入力することもできる。

   A>DIR >DIR1.DTA

とすると、Aドライブのディスクの一覧を、DIR1.DTA というファイルとして保存することもできる。プリンターで印刷したければ、

   A>DIR >PRN

とすれば良い。
 MS―DOSのリダイレクトは、出力先の指定に >(不等号)を使い、入力のリダイレクトに <(同)を用いている。鋭角の先端が、データの流れる方向と考えると、覚えやすい。

    フィルターとパイプ
 入力データに何か処理を施して再出力することを「フィルター(filter)処理」という。いわばデータをふるいにかけるわけである。新聞社は、取材した生データを価値判断しながら新聞記事に編集するが、これも一種のフィルター処理と言えるだろう。
 たとえば、データを1画面分区切る、あいうえお順、ABC順に並べ直す、データ検索する、といった処理がある。
 フィルター処理は、パイプ処理と組み合わせて使われることもしばしばである。
 パイプ処理は、ある出力結果を別のコマンドの入力データとして利用したい場合に、利用価値がある。
 パイプ処理は、コマンドとコマンドの間を縦線記号|で区切ることによって行なう。パイプ処理では、|記号の左側に記述するコマンドの出力結果は、右側のコマンドの入力として利用される。
 フィルターとして利用できるコマンドは、次の3つのコマンド(いずれも外部コマンド)が提供されている。

  MOREコマンド(1画面単位のデータ表示)
          (MORE.EXE が担当)
  SORTコマンド(データの並べ替え)
          (SORT.EXE が担当)
  FINDコマンド(データ検索)
          (FIND.EXE が担当)

(*)MORE.EXE は、MS―DOSのバージョンによっては MORE.COM のファイル名で提供される。

(1)MOREコマンド<1画面表示>
 次を実行すると、テキストファイルは1画面単位で表示され、任意のキーが押されるまで画面は止まる。
 パイプ処理は、コマンドとコマンドを縦線記号|で区切ることによって行なうが、|の穴がパイプであるとイメージすれば理解しやすいと思う。

パイプ処理(MOREコマンド)
A>DIR | MORE

ドライブ A: のディスクのボリュームラベルは MS-DOS #1
ディレクトリは A:\

COMMAND COM 24931 90-07-12 0:00
ADDDRV EXE 18384 90-07-12 0:00
CUSTOM EXE 64024 90-07-12 0:00
DELDRV EXE 9842 90-07-12 0:00
DISKCOPY EXE 25871 90-07-12 0:00
EDLIN EXE 7922 90-07-12 0:00
FORMAT EXE 104847 90-07-12 0:00
MENU COM 17190 90-07-12 0:00
MENUED EXE 34706 90-07-12 0:00
MORE COM 338 90-07-12 0:00
PRINT EXE 8920 90-07-12 0:00
RENDIR COM 3179 90-07-12 0:00
REPLACE EXE 5210 90-07-12 0:00
SYS EXE 25496 90-07-12 0:00
XCOPY EXE 5768 90-07-12 0:00
EMM SYS 13919 90-07-12 0:00
EMM386 SYS 70848 90-07-12 0:00
FONT SYS 60223 90-07-12 0:00
GRAPH LIB 222208 90-07-12 0:00
続きがありますのでどれかキーを押してください.

 続きを見るには、普通はリターンキーかSPACEキーを押す。中断は、CTRL+Cか、STOPキー(またはBREAKキー)で行なう。
 TYPEコマンドとMOREコマンドを組み合わせ、テキストファイルの内容を1画面ずつ表示することもできる。

A>TYPE README.DOC | MORE

(2)SORTコマンド<データの並べ替え>
 次を実行すると、ディスクの一覧結果はアルファベット順に並べ替え(ソート)が行なわれ、表示される。

パイプ処理(SORTコマンド)
A>DIR | SORT

ディレクトリは A:\
ドライブ A: のディスクのボリュームラベルは MS-DOS #1
1ST 90-11-06 13:32
ADDDRV EXE 18384 90-07-12 0:00
AUTOEXEC BAT 7 90-10-24 15:43
CHKFIL EXE 2174 90-07-12 0:00
COMMAND COM 24931 90-07-12 0:00
CONFIG SYS 18 90-11-04 21:27
CUSTOM EXE 64024 90-07-12 0:00
DELDRV EXE 9842 90-07-12 0:00
DIR BAT 8 90-11-09 11:15
DIRB BAT 8 90-11-09 11:15
DISKCOPY EXE 25871 90-07-12 0:00
EDLIN EXE 7922 90-07-12 0:00
FORMAT EXE 104847 90-07-12 0:00
MENU COM 17190 90-07-12 0:00
MENU MNU 3234 90-07-12 0:00
MENUED EXE 34706 90-07-12 0:00
MORE COM 338 90-07-12 0:00
MOUSE SYS 4395 90-07-12 0:00
PRINT EXE 8920 90-07-12 0:00
PRINT SYS 5855 90-07-12 0:00
RAMDISK SYS 5392 90-07-12 0:00
README DOC 2843 90-07-12 0:00
RENDIR COM 3179 90-07-12 0:00
REPLACE EXE 5210 90-07-12 0:00
RSDRV SYS 7352 90-07-12 0:00
SYS EXE 25496 90-07-12 0:00
XCOPY EXE 5768 90-07-12 0:00

 もしこの結果を画面表示だけでなく、ファイルとして保存したければ、

A>DIR | SORT >DIR.DAT

とすると、DIRコマンドでディレクトリーを取った結果はDIR・DATファイルに書き込まれる。

(3)FINDコマンド<データ検索>
 次を実行すると、指定文字列がTESTファイルにあるかどうかを検索し、発見すれば表示する。

フィルター処理(FINDコマンド)
A>COPY CON TEST
123
abc
efg
xyz
^Z
   1個のファイルをコピーしました.

A>FIND "x" TEST

---------- test
xyz

A>■

 画面表示だけでなく、もしこの結果をファイルに保存したければ、

   A>FIND "x" TEST >X.DAT

とすると、検索結果は X.DAT ファイルに書き込まれる。


終わりに

    遥かなる未知の情報圏

 以上、MS―DOSは、あなたの世界観を変えただろうか。遥かなる未知の情報圏は、たった一歩だけ前へ進む勇気のある人たちのものだということを理解していただけただろうか。
 われわれの疑問は氷解しつつある。世界は、わたしたちが漠然と想像していた通りだった。限りなき情報圏(Info-sphere)、これこそ求めてやまなかった硬軟両相の世界であった。大自然の懐ろと、コンピューターが織りなす人工の情報圏は、1つのものである。


 To:表紙のページへ 元に戻る


(C) Picnic Plan Publishing Inc.

堤大介&ピクニック企画  このオンライン出版物は、著作権を堤大介が、出版権をピクニック企画が有します。