Thompson Shell
Thompson Shell(トンプソン・シェル)は Unix シェルの元祖であり、ケン・トンプソンが開発して Unix の最初のバージョンに搭載された[1]。これはシンプルなコマンドラインインタプリタであり、シェルスクリプト向きではなかったが、それにもかかわらずキャラクタ・ユーザインタフェースにいくつかの先進的な機能を導入し、後の Unix シェルの発展につながった。 歴史コマンドライン・インタプリタに「シェル」という名前をつけ、それを OS カーネル外のユーザ・インターフェースとして提供するというコンセプトは、Unix に先行して Multics から始まった。 Thompson Shell の初期の特徴として、コンパクトな入出力リダイレクト構文を挙げることができる。Multics では、コマンドラインで入出力リダイレクトを行なうには、それを開始・終了するために別々のコマンドを使う必要があった。一方 Unix ではコマンドに引数を追加するだけでよく、具体的には のちに追加されたものとして、パイプ機能がある。ダグラス・マキルロイの提案でリダイレクト構文は拡張され、あるコマンドの出力を、別のコマンドの入力として渡せるようになった。Version 3 のマニュアルによると、当初のパイプ構文は次のようなものだった。 command1 >command2> しかしこの構文は非常に紛らわしく、ファイル入出力のリダイレクトと混同しやすいことが分かった。Version 4 になると、パイプを表現するために command1 | command2 これは次のように入力しても同じである。 command1 ^ command2 リダイレクトに 衰退と代替Thompson Shell の設計は、Multics の模倣を意図したものだった。
プログラムの流れを制御するのに不可欠な この頃、Programmer's Workbench UNIX ディストリビューションの開発者、特に John Mashey は、プログラミングに適したものにするために Thompson Shellを修正し始めた[1]。PWB shellまたは Mashey シェルとして知られるこのシェルは、より進んだフロー制御機構を含み、シェル変数を導入したが、Thompson シェルとの互換性の必要から制限が残っていた。 最終的に Thompson Shell はメインの Unix シェルの座を1979年に、Version 7 Unix では Bourne Shell に、2BSD では C Shell に、それぞれ明け渡すことになった。ほぼ全ての Unix 及び Unix 系システムが V7 から 2BSD へ移行して以降、Thompson Shell は一般にはもはや使われなくなった。しかし、いくつかの Ancient UNIX のソースの一部としてオープンソースとなっており入手は可能で、また歴史的資料として現在の Unix にも組み込めるようになっている。 脚注外部リンク
|
Portal di Ensiklopedia Dunia