考えられるほぼあらゆるオペレーティングシステムを収めた仮想博物館を作りました
(virtualosmuseum.org)- Virtual OS Museum は、QEMU、VirtualBox、UTM向けの Linux VM 上で、歴史的なオペレーティングシステムやスタンドアロンアプリをすぐに実行できるようにするもの
- すべてのオペレーティングシステムとエミュレータが 事前インストール・設定済み で、カスタムランチャーとスナップショットにより壊れたインストールもすばやく復旧可能
- 収録範囲は1948年の Manchester Baby から現在までで、1,700件以上のインストール、250以上のプラットフォーム、570以上の固有のオペレーティングシステムを収録
- CTSS、初期 Unix、Xerox Star Pilot/ViewPoint、Windows 1.0〜初期 Longhorn、classic Mac OS〜Mac OS X 10.5 PPC など、主流と希少なシステムをあわせて探索可能
- 中核的な目標は、保存資料を理論上起動可能な状態にとどめるのではなく、クリックすれば当時のソフトウェアまで開ける 実行可能なコンピューティング史 として維持すること
何を提供するのか
- Virtual OS Museum は、オペレーティングシステムとスタンドアロンアプリケーションをエミュレーションで実行する仮想博物館であり、QEMU、VirtualBox、UTM向けの Linux VM として提供される
- すべてのオペレーティングシステムとエミュレータは 事前インストール・事前設定済み で、エミュレータに依存しないカスタムランチャーが組み込まれている
- ランチャーは、破損したインストールを動作可能な状態へすばやく戻す スナップショット機能 を提供する
- Windows、macOS、Linux で VM を実行するためのハイパーバイザーのインストーラとショートカットもあわせて提供される
- インストールやエミュレータ設定、エミュレートされたインストール破損を気にせず、歴史的なオペレーティングシステムやプラットフォームを探索できるよう構成されている
収録範囲と規模
- 1948年の Manchester Baby から現在まで、ストアドプログラム方式コンピューティングの全歴史にわたるオペレーティングシステムとプラットフォームを扱う
- 動作可能なオペレーティングシステムのバージョンがどこかに存在するなら、合理的に現代的なノートPCやデスクトップで誰でも実行できる形で収録することが目標
- 収録規模は、1,700件以上のインストール、250以上のプラットフォーム、570以上の固有のオペレーティングシステム
- 初期の resident monitor、現代のオペレーティングシステムの祖先とされる CTSS、初期 Unix バージョン、デスクトップメタファー GUI を備えた最初のオペレーティングシステムとされる Xerox Star Pilot/ViewPoint、主流オペレーティングシステムの初期バージョンなどを探索できる
- よく知られたオペレーティングシステムやプラットフォームの大半だけでなく、現在では実際に起動したことのある人がほとんどいない希少なシステムもかなり含まれている
含まれるオペレーティングシステムとプラットフォームの種類
-
初期メインフレーム
- Manchester Baby のテスト・デモプログラム、Mark 1 Scheme A/B/C/T、さまざまな EDSAC ソフトウェアを収録
- Mark 1 Scheme A/B/C/T は、オペレーティングシステムと見なせるシステムソフトウェアの最も初期の例として扱われている
-
後期メインフレームとミニコンピュータ
- CTSS、MVS、VM/370、TOPS-10/20、ITS、Multics、RSX、RSTS などを収録
-
ワークステーションと Unix 系
- PERQ OSes、SunOS、IRIX、OSF/1、A/UX、NeXTSTEP、Plan 9、各種 BSD、さまざまな時代の Linux ディストリビューションなどを収めている
-
ホームコンピュータ
- さまざまな CP/M 派生、Apple II、Commodore 8-bit machines、Atari 8-bit、MSX、Tandy TRS-80、BBC Micro、ZX Spectrum、Sharp MZ などを収録
-
パーソナルコンピュータ向けオペレーティングシステム
- さまざまな DOS 派生、OS/2、BeOS、Windows 1.0 から初期 Longhorn ベータまで、classic Mac OS から Mac OS X 10.5 PPC までを含む
-
モバイル・組み込み
- PalmOS、EPOC/Symbian、Windows CE、Newton OS、エミュレーションが許可される初期 Android と iOS、QNX などを収録
-
研究用・希少システム
- ZetaLisp、Smalltalk 環境、Oberon、Plan 9 など、実際に起動して試すのが難しいシステムを多数収録
ダウンロードとアップデート
- Download the Virtual OS Museum
- full バージョン と lite バージョン が提供される
- full バージョンはすべての項目を事前にダウンロード済みのため、オフラインで実行可能
- lite バージョンは、ゲスト VM を最初に実行するときにディスクやテープなどのイメージをダウンロードする
- どちらのエディションも自動・手動アップデートをサポートしており、新しいインストール項目を受け取るために VM 全体を再ダウンロードする必要はない
なぜ必要なのか
- この20年間で ソフトウェア保存 の状況は大きく改善したが、既存の保存プロジェクトの多くは依然としてアクセスしやすいとは言えない
- 2003年にエミュレータイメージの収集を始めた当時は、ソフトウェアイメージやドキュメントのアーカイブは少なく、よく知られた消費者向けプラットフォーム以外ではエミュレータも多くなかった
- 現在では歴史的ソフトウェアやドキュメントの大規模アーカイブが増え、非常に希少なプラットフォーム向けのエミュレータも数多く存在する
- こうした保存の取り組みは、歴史的ソフトウェアを利用可能かつ実行可能な状態で維持するうえで重要であり、このプロジェクトもエミュレータ、事前インストール済みイメージ、メディアアーカイブなしには不可能だった
- しかし、保存資料から実際に実行可能な VM インストールを作るには、今なお時間と労力が必要
-
実行可能性を難しくする要因
- 一部のオペレーティングシステムはインストール手順が複雑
- 一部はエミュレータ内の特定のデバイス構成に依存する
- 一部は特定のエミュレータバージョンでしか動作せず、それ以降のバージョンでは回帰によって壊れることがある
- 一部のエミュレータは複雑な設定ファイルを必要としたり、ホストシステムの特定の環境を要求したりする場合がある
- 目標は、各所に保存されたコンピューティングの歴史を 理論上起動可能な状態 ではなく、実際に触れられる状態で維持すること
- 項目をクリックすればすぐに実行され、可能な場合は当時の利用者が実際に使っていたであろう形で、その時代のソフトウェアがすでに読み込まれている
制作に費やされた作業
- このプロジェクトは20年以上にわたる収集の成果
- オペレーティングシステムのインストール環境は複数の出典から集められ、一部は 事前インストール済みイメージ としてダウンロードし、一部は元のインストールメディアイメージから直接インストールされた
- インストール時間は1時間未満のものもあれば、ほぼ1週間かかったものもあった
- かなりの数のインストール環境は、後続バージョンでの回帰のため、特定のエミュレータバージョンでしか動作しない
- 一部のエミュレータは、最新の Linux で動作したりランチャーとうまく連携したりするよう、小さなパッチが必要だった
- いくつかのエミュレータは、以前は壊れていたオペレーティングシステムを動かすためにパッチが当てられた
- 多くのインストール環境には、アプリケーション、開発ツール、ゲーム、ユーティリティといった 追加ソフトウェア も含まれており、実際に使われていたであろう形に設定されている
- まだ完成した状態ではなく、インストールすべきイメージや修正したいエミュレータがさらに残っている
- 現在の作業状況は YouTube channel、blog、BlueSky で確認できる
スクリーンショットと参加方法
- More screenshots
- サイトには、ランチャーのメインウィンドウ、VM 情報画面、Unix PC SVR2 や XVM RSX の実行例などが掲載されている
- サンプルスクリーンショットには、AFROS、AO-DOS、ATT Unix PC System V R2、A/UX、Amiga UNIX、CP/M、Coherent、Domain/OS、HP-UX、IRIX、LisaOS、Mac OS、Minix、NeXTStep、Plan 9、QNX、Solaris、Tru64 UNIX、ULTRIX、UNICOS など、さまざまなシステムの画面が含まれている
- 個人が運営・キュレーションしているプロジェクトであり、時間と忍耐によって維持されている
- Patreon: 継続支援
- Ko-fi: 単発の支援
- Discord / Fluxer: 会話、質問、追加したいプラットフォーム・オペレーティングシステムの提案
- GitLab: ランチャーやスクリプトに関するバグ報告やパッチ提出
- コンピューティング史を扱ったり研究したりする人にこのプロジェクトの存在を知らせることも、支援方法として挙げられている
3件のコメント
TempleOS への言及はきっとあるだろうと思っていましたが、やはりありましたね。HolyC
RIP Terry Davis
Hacker Newsのコメント
キュレーションの努力は印象的。ただ、ギャラリー内のいくつかの例は 最後期かつ最新版 に近く見えるが、実際には必ずしも最良でも最も興味深いものでもない
たとえば "Domain_OS SR10.4 - 01 VUE desktop" はやや混乱を招き、人々が本当の DomainOS を見逃す原因になりかねない
Apollo DomainOS、あるいは Domain/IX、単に Domain は独特で興味深い要素が多かったが、HP に買収された後まもなく姿を消した
テキスト端末ばかり見ていたプログラマに、メガピクセルディスプレイ、ピクセルフレームバッファ、マウス、キーボード、そしてハードウェア設計の自由を与えて「君が使いたいものを作れ」と言ったら出てきそうなものに近かった
VUE は Unix ワークステーション各社が共通デスクトップ環境を標準化しようとしていた時期の HP-UX 向けで、OS もユーザー体験もまったく異なっていた
むしろ、仮想デスクトップまで備えた、使いやすいコンピュータを非専門家に渡そうとする初期の試みに近い
同様に Solaris にも、共通デスクトップ環境へ向かう前に、PostScript ベースのネットワークディスプレイシステムなどを含む革新的な OpenWindows があった
SunOS 4.x、後に "Solaris 1.x" と呼ばれるようになった版やそれ以前は SunView 環境を動かせたが、これは OpenWindows 後期の Open Look の外観より、白黒の初期 Mac に近かった
あまり知られていない OS の話が出たついでに、uid 0 を root ではなく avatar と呼んでいた obscure Unix を覚えている人がいるのか気になる
子どものころの奇妙な記憶のひとつだが、大人になってから確認できていない
こういうプロジェクトで興味深いのは、OS の 感触 のうちどれだけがエミュレーションで生き残らないかという点だ
視覚的なレイヤーはよく伝わるが、実際の体験を決定づけていたキーボードのクリック遅延、当時のハードウェア特有のマウス加速カーブ、CRT の走査線が System 7 のフォントに鋭い LCD とはまったく違う質感を与えていたこと、Atari ST や初期 Mac のダイアログの耳に残るカチッという音などは保存されない
エミュレータで System 7 を動かすと、メニューは正しく見えるが入力の感触は違う
こうしたコレクションが実際に保存しているのは インタラクション ではなく画面出力だ
アーカイブとしては問題ないが、利用体験の博物館ではなく外見の博物館だという点は、正直に認める必要がある
最近では Domain/OS エミュレーション が可能になっていたとは知らなかった。実際に機能が「失われた」数少ないシステムのひとつだ
端末ウィンドウのようなもの、たしか pads と呼ばれていた機能では、行モード時に下部に区切り線があり、まだ消費されていない入力が見えて、読み取られるまで編集し続けられた
対象は 1 行だけでなく、まだ消費されていない入力全体だった
特別に望ましい機能という意味ではないが、pty では実装できない機能だとかなり確信している
AEGIS ではなく SysV や BSD の世界観で使うと、SR10 をほとんど普通の実用 Unix と見間違えるかもしれないが、明らかに Unix 系でありながら Multics に近い面がかなりあり、一般的な実用 Unix 系とは相当に違う
1
端末は行単位でしか送らない。アプリケーションがすべてのキー入力を即座に受け取れるようにするには、コマンドで raw モード にしなければならない。つまり、pty がそう動作しないように明示的に要求しているわけだ
現在の端末は入力を直接処理せず、実行中のプログラムに "raw" なファイルディスクリプタを渡しているのに近い
その代わりに、端末がプロセスにパイプのようなものを渡し、pty 入力をすべて自分で消費しつつ、パイプの自分側の端をその内容のバッファにするなら、なぜ同じ動作ができないのか気になる
Pick はないのか?
https://en.wikipedia.org/wiki/Pick_operating_system
私の最初の本当の仕事はイギリスの地域保健当局で、そこには会計関係らしいデータベースアプリケーションを動かす Pick コンピュータ があった。私の仕事はバックアップを回すことだった。文句を言いたいわけではなく、膨大な作業量を貶めるつもりもない
ともかく提示された年収があまりにもひどく低く、丁重に断るしかなかった。当時は若すぎて、交渉できるという発想すらなかった
総勘定元帳、受注管理、倉庫のピッキングリスト、化学レシピ、MSDS データ、在庫などがあり、毎晩データベース更新を同期し、月に一度は誰かがデータセンターで一晩中 9 トラックテープを交換しながらバックアップしなければならなかった
そのシステムで Pick BASIC を扱うのは好きだった。"dict items" でできることが本当に多かった
Compaq に付属していた Windows 3.1 の版の中に、空のデスクトップではなく 紙のフォルダのようなデスクトップ環境 があり、アイコンを紙フォルダの複数のタブに入れられるものがあったのか気になる
TempleOS がなければ、どうやって天と交信すればいいんだ
ツールをダウンロードして実行しなくても、収録されている OS の一覧を見る方法はあるのだろうか
VICE がすでにエミュレートしている機器の OS を含んでいるのか、またどういう形で含めているのかも気になる。Commodore 機の OS を収録しようとしているなら、作業を減らせるかもしれない
これを見てしばらく深掘りしていたら、Packard Bell Navigator を再発見した。このページが与えてくれる懐かしさと喜びは説明しがたい
みんなが自分の形成期の技術の旅をこんなふうに愛おしく思い出せたらいいのにと思う
1: https://en.wikipedia.org/wiki/Packard_Bell_Navigator
ひどい出来だったが、Win 3.1 よりは十分ましで、愛用していた Amiga 2500 から少しずつ離れるきっかけになった
CD プレーヤー、MIDI プレーヤー、wav プレーヤー/レコーダーが積み重なったステレオ機器のように見えた。子どものころはステレオシステムのように見えるのが大好きで、友達からコピーをもらった。Windows 95 で動かず、すごくがっかりしたのも覚えている
いいね。主要な MacOS 向け内蔵エミュレータを実機画像の上に重ね、その機種の粒状感や色味を模したエフェクトや、スクリプトされた「目標」、イースターエッグまで入れていた Frame of Preference を思い出す
https://aresluna.org/frame-of-preference/