昨年、ユタ大学の研究者は、9 トラックの磁気テープ上にある Unix のコピーを発見しました。これは特別です。なぜなら、そのバージョンの Unix は 52 年後に磁気テープから復元されるまで失われていたからです。研究者らはなんとか復元に成功し、コピーを公開した。誰でもダウンロードして仮想マシン内で実行できます。それで私はまさにそれをやったのですが、それを使うのがとても楽しくなりました。
コンピュータの歴史に少しでも興味があるなら、Unix の伝承は非常に興味深いものです。オペレーティング システムがハードウェアに関連付けられていた時代がありました。オペレーティング システムを実行するように特別にプログラムされていないハードウェアにオペレーティング システムを移行する方法はありませんでした。 Android を 1 つの特定の電話モデルにのみインストールしたり、Windows を 1 つの特定のハードウェア構成にのみインストールしたりできることを想像してください。今日では当たり前のことですが、Unix V4 によって「ポータブル」オペレーティング システムが可能になりました。
以前のバージョンの Unix はアセンブリ コードで記述されていたため、これらの Unix システムは、記述されたマシンに関連付けられていました。 V4 では、開発者はオペレーティング システム全体を C で書き直し、コード マシンに依存しないようにしました。後のバージョンではこのアプローチが完成しましたが、Unix V4 がすべての始まりです。最初のリライトは商用製品ではなかったため、これまでに作成された研究用コピーはわずか数個しかありませんでした。そのため、C プログラミング言語を使用した最初のバージョンであるこのバージョンは失われたと考えられていました。生き残ったのはプログラマのマニュアルだけでした。 Unix の歴史におけるこの「失われたリンク」は、最終的に定期的な整理中に物置のクローゼットで発見されました。私たちが知る限り、これは生き残った唯一のコピーです。
C への移行を超えて、Unix は現代のオペレーティング システムの祖先です。 Apple の macOS と iOS は Unix の直接の子孫です。また、これは GNU/Linux プロジェクト、ひいては Android オペレーティング システムにも影響を与えました。これらのオペレーティング システム上でどれだけのデバイスやサーバーが実行されているか想像できるでしょう。それらの起源はすべて UNIX V4 にまで遡ることができます。その痕跡を自分で探してみたかったので、UNIX V4をインストールして使ってみました。
UNIX V4 ソース コードは、Archive.org で誰でも無料でダウンロードできます。そこでオペレーティングシステムを入手しました。最新のハードウェアでは実行できないため、このコードが実行される予定のマシン (PDP-11) 用のエミュレータもインストールしました。移動するにはクレーンが必要で、文字通り出力が 1 枚の紙に印刷されました (画面表示はありませんでした)。
まず、PDP-11のエミュレータをインストールしました。いくつかの依存関係をインストールするためにセットアップを中断する必要がありましたが、ほとんどの部分はスムーズに進みました。
その後、UNIX 4 用のブート可能ディスク ファイルをダウンロードして構成し、そこからブートしました。これらの古い UNIX システムは、最新のオペレーティング システムのように単に起動するだけではありませんでした。 OS をストレージにロードするように手動で指示する必要があったため、私はそうしました。
以上で、Unix が正常に起動し、ログイン画面が表示されました。デフォルトのログインは「root」です。
これらのマシンは実際のプリンタ ヘッドを使用して回転する紙に出力を印刷するため、「バックスペース」はありません。実際には何も削除したり、画面を「クリア」したりすることはできません。ターミナルを使用しているときに自分がどれだけタイプミスをしているかを実感したので、とても奇妙に感じました。また、気づかずに画面をワイプするために「クリア」と入力していることもわかりました。さらに奇妙なことに、私はそれがまったく煩わしいとは感じませんでした。実際、速度を落として入力している内容に注意を払う必要がありました。
テキストは端末上に表示されるだけではありません。少しずらしているので、機械がスクロール上にテキストを印刷しているのを「感じる」ことができます。
私が最初にしたことは、「ls」コマンドを使用してファイル システムを調べることでした。次に、「chdir /bin」でディレクトリをバイナリフォルダに変更しました。 「cat」を使用してファイルの内容を読み取ることができます。 Linux ターミナルを使用したことがある場合は、これらのツールやコマンドのいくつかに見覚えがあるかもしれません。どうやら、それらはコンピューティングの初期から存在していたようです。
「cal」で呼び出せるカレンダー アプリと、「dc」で使える電卓があります。電卓の場合は、個別の行に数字を入力し、計算を完了するための演算子を指定する必要があります。
UNIX V4 にはテキスト エディタも組み込まれています。 「nano」が古いと思われる場合 (ほとんどの Linux ディストリビューションのデフォルトのエディターです)、サイズを「ed」にしてみてください。したがって、「ed」を使用する場合は、「ed」コマンドでファイル名を入力し、Enter キーを押します。次に、「a」と入力して Enter キーを押し、テキストを追加します。テキストの末尾の新しい行にピリオド「.」を入れます。次に、「w」と入力して Enter キーを押し、変更をファイルに書き込みます。
個々の単語を削除する方法はありません。行を削除するには、行番号を指定する必要があります。このようにテキストを編集するのはとても奇妙な経験でしたが、このような古い学校のコンピューターを体験するのはめまいを感じました。
また、「usr/games」ディレクトリにはいくつかのゲームがあります。コンピューターと三目並べをやってみたのですが、楽しかったです。コンピューターは「私の勝ち」または「あなたの勝ち」と言うので、とてもかわいいです。チェス、ブラックジャック、そして「ムー」と呼ばれる推測ゲームもあります。
レトロ コンピューティングに少しでも興味がある場合は、UNIX V4 を試してみることをお勧めします。ローカル マシンにセットアップする必要さえありません。代わりに Web ポータルで試すこともできますが、パフォーマンスはそれほど高くありません。