スレッド作成 : Saieyさん
(1998/04/02 09:00:00)
各種OSについて。
メジャーな物から、誰も知らない超マイナーな物まで、いろいろなOSやそれに類する物についてのお話をお願いします。
Multics
あきよし さんのコメント
(1998/4/2 11:19:52)
OS というものがいつから意識され始めたのか私は知らない。
EDSAC で使われたという、コンパクトな(31ワードだっけかな?)リロケータブル・ダイナミックリンク・ブートアップぷろぐらむはすでに OS だったのかもしれない。
#テープに保存されたプログラムを、指定されたメモリに動的に配置し、実行させるプログラム。
しかし、やはりバークレイで実験的に作られ始めた TSS (Time Shareing System)くらいまで行かないととても OS とは呼びにくいだろうし、それを商業プロジェクトにした Multics は、歴史に名を残す金字塔なのだろう。
Multics についても、私は断片的な情報しか知らない。
マルチユーザーが、マルチタスクで作業できる環境を目指したという。
それぞれのプログラムが干渉しないようにリソースが管理され、ファイルにも「所有者」「所属グループ」「アクセス権」などの概念が会ったという。
すべてのデバイスを統一的に扱うため仮想的にファイルに見立てるという斬新なアイデア。
実行中のプログラムは例外で停止し、その状態をファイルに吐き出すので、デバッグがしやすい(デバッグ後、続きから実行することまで出来た)という優れたプログラム環境。
複数のプログラムを組みあわせて作業が出来るように、「入出力」の流れを明示化し、切り替えも行えたという。
しかし、あまりにも多くのアイデアを取り込んだため、OS のプログラムは肥大化し、プロジェクトは暗礁に乗り上げる。
メモリのほとんどを OS が占め、CPU 実行時間のほとんどを OS が占めるような環境で、誰が作業をしたがるというのだろう。
しかし、Multics の残した数々のアイデアは、今も受け継がれている。
UNIX
あきよし さんのコメント
(1998/4/2 11:29:33)
Multics の研究プロジェクトに参画していた、AT&T の若き技術者が作り上げた OS 。
なお現役で動きつづけるが、すでに誕生から 25 年以上も立っているなどと、だれが信じられるのだろう。
開発者は、Multics のアプリケーションとして作られたゲームが好きだった。
そのゲームを遊びたい一心で、自分専用の開発環境を整えたのだ。
彼は、自分が気に入っていたのに頓挫してしてしまった OS の名前、「Multics」(語源は Multi ・・・多くの)をもじり、この環境に「一人の」を意味する UNIX という名前を付けた。
彼は Multics で実現される予定だった機能のうち、現実的なものだけを注意深く選んで UNIX に付け足していった。
元々一人用だから、多人数での作業環境が揃えられたのはかなり後のことだった。だから、今でも UNIX はセキュリティが甘いといわれる。
現在、多かれ少なかれ、 UNIX の影響を受けていない OS は無いだろう。
UNIX の真似をしていなければ、UNIX の正反対をやろうとしているだけのはずだ。
SmallTalk
あきよし さんのコメント
(1998/4/2 11:40:00)
SmallTalk を OS と呼ぶのには抵抗があるかもしれない。
一般的に、このソフトウェア群は言語だとされているからだ。
しかし、それは間違いである。SmallTalk は、言語であり、 OS であり、アプリケーションであり、作業環境なのだ。
SmallTalk は、Alto というマシンで実現された。
SmallTalk は主にマウスを使ってシステムと対話する。人間はマウスを使い、画面上のメニューを操作することでコンピューターに指示を出すのだ。
画面上には UNIX とは違い画像を表示することが出来、さまざまな大きさの文字が表示される。
コンピューターからの出力は、場合に応じていくつもの矩形領域・・・「窓」と呼ばれる・・・に表示され、その窓は画面上を自由に動かすことが出来る。
さっきの結果を画面隅の窓で見ながら次の指示を出す、などということも可能になっているのだ。
命令は、あらかじめ組み込まれたものもあるが、それらを組み合わせて自分で作れるようになっている。
ここら辺は、 UNIX のシェルスクリプトに似ている。
ただ、SmallTalk の場合は OS 自体に小さな命令同士を組み合わせる機能が備わっていて、単純な「入出力の流れ」に収まらないようなプログラムを書くことが可能だ。
一番 SmallTalk が先進的だったのは、初めてネットワーク環境に対応した OS だったことだ。Alto のために開発された新しいネットワーク形式、「EtherNet」を使用して、グループで文章を共有したり、メールを送ったりすることが可能だった。
EtherNet につながれたネットワークを育てたのは UNIX の派生である BSD だが、生み出したのは SmallTalk なのだ。
CP/M
あきよし さんのコメント
(1998/4/2 12:06:12)
ゲイリー・キルケゴールの作った Z80 用 OS 。
パソコン用としては最初期の OS に数えられるだろう。
OS とはいってもリソース管理があるわけでもなく、 TSS なわけでもなく、単にコマンド名を入力するとそのファイルを読み込んで実行するだけだと思って良い。
(いくつかのサービスルーチンはあり、文字表示くらいは機種の壁を越えて行えたが)
Z80 をもつ多くの機種に移植しやすくするため、プログラムは機種非依存部分と機種依存部分に分けられている。機種依存部分のファイル名は IO.SYS だ。
一番重要な仕事は、ディスクを管理しやすくすることだった。ファイルシステムは階層化されていないものであった。
MS-DOS
あきよし さんのコメント
(1998/4/2 12:35:11)
IBM が 16bit マシンを作ることになったとき、当時圧倒的なシェアを誇っていた CP/M の 16bit 版をキルケゴールに用意してもらおうということになった。
しかし、家を訪ねたときキルケゴールは留守、IBM の人間は彼の奥さんに契約を求めたが、奥さんは自分にはその権限はないと、断ってしまう(当然の話だが)。
この話を聞きつけたビル・ゲイツは、知人が開発中だった「16bit 版 CP/M 互換 OS 」を買い取り、それを大急ぎで形にして IBM に持ち込む。
これが「PC-DOS」、またのなを「MS-DOS」の誕生であった。
MS-DOS は、さまざまな点で CP/M のコピーを行っている。IO.SYS の存在もそうだし、文字列終端が $ なのもそうである。
日本では MS-DOS は Ver.2 まで無料配布(!)が許されていた。ただし、OS の本体のみで、付属するさまざまなプログラムは正規版を買わなくては入手できない。
これは、MS-DOS の普及への奇策としてアスキーの西和彦が考え出した方法である。
Ver3 以降は、階層化ファイルもそなえ、徐々に UNIX を真似して行く。
DR-DOS
あきよし さんのコメント
(1998/4/2 12:41:02)
あぁ、そうだった。キルケゴールの会社の社名は「デジタルリサーチ」という。
で、16bit に移植されているといえ、CP/Mのコピー品を売られたデジタルリサーチも黙ってはいない。
独自に MS-DOS コンパチの DR-DOS (デジタルリサーチ DOS )を作って販売した。
DR-DOS は、MS-DOS に比べていくつかの良い点を持っていた。そのうち一つが、途中のバージョンで加えられた「タスクスイッチ機能」である。
この機能を使うと、MS-DOS のプログラムを複数同時に使用可能なのだ。
もっとも、同時に動作するのは1つだけで、 TSS というわけではないのだが。
現在、DR-DOS はFREE-DOS と名を変えて、無料で配布されているはずである。
MSX-DOS
あきよし さんのコメント
(1998/4/2 12:46:01)
MSX 用の DOS である。
MSX では、BASIC のファイルシステムがすでに MS-DOS Ver.2 互換である。(完全ではない)
ここにあえて MS-DOS とファイルコンパチ(CPU が違うので、当然プログラムは動かない)の DOS を出したのは、おそらく CP/M のプログラムを動かすためだろう。
MSX-DOS は、ファイルシステムは MS-DOS 互換だが、中の構造は CP/M 互換であった。そのため、ほとんどのプログラムが修正無しでうごいた(らしい)。
わたしは MSX-DOS をそれほど使った覚えが無いので、詳しいことは知らない。でも、開発環境とかは発売されていたし、日本語表示可能な MSX-DOS2 もあった。
MacOS
あきよし さんのコメント
(1998/4/2 18:31:11)
本来はこの OS には名前はついていなかったのだが・・・
SmallTalk に触発されて作られた OS。
Window システムを備え、マウスで操作することでコンピューターと対話する。
Lisa として作られたときは、まだ文字が多く、今ほど洗練されていなかった。
しかし、Mac となったときに、「否応無しに」使いやすくなってしまったのだ。
もともと、この使いやすさは狙ったものではなかった。偶然の産物だ。
Shell に当たる Finder での使いやすさは散々討論された結果使いやすくなったのだが、Mac ではこの大規模な Finder を載せるだけのメモリが無かった。
そこで、Finder の主要ルーチンは ROM に搭載されることになったのだ。そして、アプリケーションも積極的にこのルーチン群を使用することが推奨された。
結果として、すべてのアプリケーションの操作法が統一され、非常に洗練されたインターフェイスとなった。これらはすべて「メモリが足りない」ことに起因したのである。
また、Mac では1つのファイルに複数のデータを(明示的に区切って)格納することが出来る。
これはプログラムとデータを分離して多国語対応を簡単にするためのアイデアだったのだが、これによってファイル数が激減し、ユーザーがファイルを把握しやすいという副作用も招いた。
これもまた、偶然使いやすくなったというだけの話である。
Windows
あきよし さんのコメント
(1998/4/2 20:15:24)
MS-DOS の上にかぶせるシェルから始まり、今ではスケーラブル OS を目指す大規模な OS になってしまった。
組み込み用途の WindowsCE 、コンシューマー向けの Windows95 (もうすぐ 98 )、サーバー用途の WindowsNT ・・・
よく「Macの真似だ」といわれるが、これは誤解である。 Windows の開発は、Lisa の発売よりも古い。Mac と共に、SmallTalk の子供たちなのだ。
しかし、「使いやすさ」を真剣に考えた Mac と、商売を優先させた Windows の差は埋めがたいほど大きい。
ちょっと一服
あきよし さんのコメント
(1998/4/2 20:53:50)
勝手に現在の2台巨頭である「MacOS」と「Windows」のオーバービューを書いたのだが、そろそろ疲れた。
ちょっとマイナー路線でも書こうかな :-)
TRON
あきよし さんのコメント
(1998/4/2 21:04:57)
やっぱ、マイナー路線トップバッターは私の愛してやまない OS 、TRON でしょう。
#使ったことはないのだけど
TRON キーボードとか、国産OSだとか、変な部分ばかり強調されて失敗した感のある OS だけど、本当はものすごい設計思想を持っています。
TRON は、リアルタイムのスケーラブル OS なのです。ほら、聞いたこと無い用語でなんだかカッコイイ(笑)
リアルタイムというのは、「必要なときに、すぐプログラムが動作する」 OS です。
UNIX とか Windows のマルチタスクというのは、一定時間置きにプログラムがスイッチされているのですが、リアルタイム OS では、システムが変化(キー入力、マウスクリック、ディスク挿入など)を感じた場合には、その変化をもっとも必要としているソフトが最優先で呼び出されます。
これって、常に「人間の都合が最優先される」ということ。未来の OS には不可欠な要素です。
また、スケーラブルというのは、必要に応じて適切な OS が用意されていて、しかもそれらの(プログラマーから見た)使い勝手が同じである、ということ。
TRON の場合、QV-10 や JR の自動改札でも組み込まれている μ-TRON から、工場の機械制御用の I-TRON、パソコン用の B-TRON 、サーバー向けの C-TRON など、さまざまなファミリがあります。
しかも、これらはすべて「リアルタイム」という重要な要素はちゃんと持っているのです。
すべてが同じ TRON だから、大きさの違うコンピューター同士を接続したりするのも簡単。
また、TRON 協議会では常に「人を最優先した」コンピューターのあり方を考えているため、世界中の言語を扱える多国語文字コードの策定や、TRON をあらゆる物に組み込んだ実験生活環境「TRON 住宅」なども作っています。
最近でこそ、MS が WindowsCE を作ったりビルゲイツがコンピューター住宅を建てたりしているけど、 TRON は同じことを 10 年も前から行ってきているのです。
いやはや
Saiey さんのコメント
(1998/4/3 14:58:05)
なんかコメントしたいなぁと思いつつ、付け入る隙がないです・・・。(^^;
とりあえず、「キルケゴールは飛行機に乗ってたそうですね」とか、「奥さんが守秘義務契約を結ぶのをいやがったからIBMは帰ったらしいですね。って同じことか。(^^;」とか、「IBMにキルケゴールを紹介したのはマイクロソフトだったらしいですね」とか書いて、お茶を濁します。
勝手に暴走していました(笑)
あきよし さんのコメント
(1998/4/3 18:41:50)
結構好きな類の話題なので、思う存分書きました。
間違えて2度書きしたり(直してくれてありがとうございます)、うろ覚えのところも多いのですが・・・
ゲイリー・キルドールだったかもしれない (^^;
キルケゴールは作家の名前?
Human68k
あきよし さんのコメント
(1998/4/3 18:48:21)
X68k の OS です。
ファイルシステムには MS-DOS セミコンパチのものを採用。
ファイル名には 18+3 文字が使用でき、小文字も使用できましたが、ファイル名に - が使えない、というのが MS-DOS との差異です。
ファイル名命名規約の違いさえわかっていれば、ファイル自体は完全な互換性がありました。(ただし、1.2M 2HD のみ)
OS 自体は MS-DOS よりもすっきりとしていて(後発の強み)、TSS への布石も考えられていました。
ただし、OS 自体はTSSではありません。あくまでも布石をうっただけです。
ユーザーによって拡張されまくり、最後は「個人向け UNIX 」のような物になっていました。
なんせ、GNU のコマンドや GCC 、TeX などがばんばん移植されていましたから。
TownsOS
あきよし さんのコメント
(1998/4/3 18:55:55)
FM-Towns の OS です。
実体は MS-DOS 上の GO386 コマンドで起動されたシェルアプリケーションであり、Windows のような API を備えたものではありません。
もっとも、細かなデバイスドライバの形でさまざまな API も持っていたのですが。
後期のバージョンでは、タスクスイッチにも対応して、かなりまともな「OS」になってきていたのですが、結局 Windowsには負けてしまいました。(まぁ、当然か)
PC Engine
あきよし さんのコメント
(1998/4/3 18:58:18)
PC-88VA 用の OS です。
MS-DOS をベースにしていますが、かなり BASIC ライクになっています。
MS-DOS の行エディットではなく、BASIC のようなカーソルエディットが可能なので、画面上にコマンドが残っている限り、そこまでカーソルを動かして実行、何てことができました。
(まぁ、History のようなもんです)
エディタも組み込みでしたし、BASIC との行き来も簡単だったような覚えがあります。
OS/2
あきよし さんのコメント
(1998/4/3 19:07:52)
MS と IBM が共同開発する予定だったのだが、MS が途中で投げ出し、IBM が完成させた・・・というのが有名なエピソード。
しかし、OS/2 には IBM の執念が込められています。これは、ものすごい大きな野望の結晶なのです。
その野望の名は Workplace OS 。プロジェクトネーム PINK といったほうがわかる人もいるかもしれません。
Apple 社と IBM の共同プロジェクトで、マイクロカーネルのコアOS の上で、AIX(IBM の UNIX)と、MacOS と、 MS-DOS と、 Windows と、 OS/2 の API を実装しようという研究でした。
結局、そんなにたくさんの環境を載せたところで商業的に売り込みにくい、ということで、使いやすい GUI である OS/2 と、当時まだ主流だった MS-DOS と、爆発力を見せていた Windows3.1 を実装して OS/2 という名前で発売されます。
これは、OS/2 の上で Windows エミュレータが動いている、などというわけではないので、Windows3.1 特有のリソース 640K の壁なども無く、本物よりも良く出来た Windows3.1 として有名になりました。
OS9その後
よし坊 さんのコメント
(1998/4/4 05:26:31)
OS9という言葉が「FM-7」のところででてきたのでこっちにお引越しして書きます。
OS9は現在でもファームの世界では現役バリバリ! (でもないですが)ちやーんと生き残っております。
MS-DOSなんて腐れOSと違ってちゃんとマルチタスク処理もVer.1.0の時から完璧でした。(MS-DOSは当然シングルタスクね)MP-Mというコンカレントマルチタスク版CP−Mも当時ありましたが実行速度、安定感どれをとっても一枚上でした。
もしFM−11が売れていれば今ごろOS9000が主流になっていてOS90000なんてのがあったかもね(やっぱりそんなことないでごんす)
OS-9
あきよし さんのコメント
(1998/4/6 15:32:05)
ほとんど使ったこと無いんですけど、結構良いものだったらしいですね。
TOWNS 登場以前の Oh! FM では結構盛り上がっていたとか。
UNIX を強く意識している、ということなのですが、PATH の概念が無かったような気がします。
その代わりに、カレントディレクトリが「ワークカレント」と「プログラムカレント」の2つあるのではなかったかな?
データファイルはワークのカレントが、実行ファイルがプログラムのカレントが参照されるので、パスはなくても普通に作業が出来たといいます。
X68k 版の OS-9 で、「AV Rider」とかいうゲーム指向のシェルがついてきました。3D 空間を移動して、開きたいファイルを撃つと開けるという(笑)
実用になるかどうかはともかくとして、驚きましたね。
Ah!SKI に載っていた「XEVIX」みたいで(笑)
PC-Engine Ver 1.1
水の魔導師にゃー さんのコメント
(1998/4/6 17:18:22)
PC-88VA2/3になってPC-Engineが拡張されたものです。
Ver 1.0 はBASICからSHELLを呼び出せなかったのですが、
Ver 1.1 になって可能になりました。
また、従来のFORMATやDISKCOPY,EDITに加えて、
SORTDIR/CHKDSK/DISPLAY/PLAY などのコマンドが追加され
ました
隠し機能として画面取り込みをする常駐内部コマンドも
存在しました。
「OS (1)」へ続く。