シンボリックス
[Wikipedia|▼Menu]

シンボリックス(: Symbolics)は、同名(Symbolics, Inc.)のかつて存在したコンピュータ製造企業の資産を引き継いだ私企業であり、Open Genera LISPシステムやMacsyma数式処理システムの販売と保守を行っている。本項目では、主にかつてのコンピュータ製造企業について解説する。
歴史

シンボリックスはケンブリッジに本拠地を置いていたコンピュータ製造企業である。1980年4月9日に設立された。その後、コンコードに拠点を移した。工場はロサンゼルス郊外にあった。シンボリックスは、LISPの実行に最適化されたシングルユーザー型コンピュータであるLISPマシンを設計製造していた。また、ソフトウェア技術においても多大な進歩をもたらし、1980年代から90年代にかけて最高と言われたソフトウェア開発環境を提供していた。これは現在では、ヒューレット・パッカードAlpha 上で動作する Tru64 UNIX 向けの Open Genera として販売されている。そのLISPマシンは、製品として販売された初の「ワークステーション」であった(ただし、当時はワークステーションとは呼ばれていない)。

シンボリックスは、MIT人工知能研究所からのスピンオフであり、同研究所のスタッフやハッカーが集まってLISPマシンを製造することを目的として設立された。同様の企業として Lisp Machines, Inc.(LMI)もあるが、シンボリックスの方が多くのハッカーを集め、資金も豊富だった。

シンボリックスの最初の製品 LM-2 は、MIT CADR というLISPマシン設計の焼き直しであった。そのオペレーティングシステムとソフトウェア開発環境は、MITの Lisp Machine Lisp を使っていて、50万行以上の規模があった。

そのLISPは後に、MITからライセンス供与された他社のものと区別するためZetaLisp(英語版)と改称された。そのテキストエディタZmacs(英語版)は Emacs から派生したもので、テキスト処理パッケージ "ZWEI" に実装されていた。なお、"ZWEI" は "Zwei was Eine initially" の頭字語であり、"Eine" は "Eine Is Not Emacs" の頭字語である(どちらも再帰的頭字語。"Eine" はドイツ語の「1」、"Zwei" はドイツ語の「2」である)。

LISPマシンのシステムソフトウェアはMITが著作権をもっていて、シンボリックスに対してライセンス供与されていた。1981年まで、MITとは全てのソースコードを共有していた。シンボリックスの従業員によれば、この方針が変更されたのは、リチャード・ストールマンがシンボリックス側が同意できないソース修正を行ったためである。それは例えば、シンボリックスが行った改善からシンボリックスの著作権表示を削除し、それを一部だけ残して(コンパイルできない状態にして)他の商用ライセンシーにも渡していたことである。これに対してストールマンは、シンボリックスがMITに対して同社の行ったソース改変をLMIに開示しないという条件をつけたが、当時のMIT人工知能研究所には、複数のバージョンを個々に保守する環境も余裕もなかったと主張している[要出典]。

シンボリックスは、製品を完全に制御しているとは言えないと判断し、ソフトウェアを社内のサーバで管理することにした。これについてストールマンは、シンボリックスの目的は同社が行った改良がLMIに渡るのを防ぐことだったとしている[1]。その後シンボリックスはソフトウェアをあらゆる面で改良していき、それを(MITも含む)顧客に提供し続けた。しかし、MITはそれを他者に配布することは許されなかった。オープンな協業関係の終焉は、MITのハッカーコミュニティの終焉を意味していた。これに対して、ストールマンは新たなコミュニティを作るべくGNUプロジェクトを開始した。このストールマンの決断は、著作権侵害で人工知能研究所から除籍されたことも影響していると考えられる[要出典]。結果として、コピーレフトGNU General Public License によってハッカーのソフトウェアがフリーソフトウェアのままで存在することを保証したが、より制限の多いライセンスでソフトウェア製品を販売する自由を制限することになった。この流れの中でシンボリックスは敵対的な重要な役割を演じ、フリーソフトウェア運動を逆に活気づかせることになった。
3600シリーズSymbolics 3640

1983年、当初の予定より1年遅れでシンボリックスは3600シリーズを発表した。3600シリーズは革新的設計であり、CADRアーキテクチャに基づいてはいるが、実装の詳細については共通点は少ない。プロセッサは36ビットワードで、タグとして4ビットまたは8ビットを使い、32ビットまたは28ビットをアドレスに使う。メモリワードは44ビットで、余分な8ビットは前方誤り訂正(ECC)に使われた。命令セットスタックマシン型である。3600アーキテクチャでは4,096個のハードウェアレジスタがあり、その半分がコールスタックキャッシュとして使われ、残り半分はマイクロコード実行やオペレーティングシステムやLISP処理系の時間のかかるルーチンで使われた。仮想記憶ガベージコレクションはハードウェアでサポートされていた。

当初の3600プロセッサはCADRのようにマイクロプログラム方式であり、標準TTL集積回路を使った回路基板群で構成されていた。CPUのクロックは実行中の命令によって変化するが、通常は約5MHzであった。LISPの多くのプリミティブが1クロックで実行される。ディスク入出力はマイクロコードレベルでマルチタスク処理される。MC68000がフロントエンドプロセッサとして本体の起動処理に使われ、通常運用中は低速な周辺機器の制御を分担していた。また、イーサネットが標準装備されていた。

3600は、家庭用冷蔵庫程度の大きさであった。これはプロセッサの回路基板がワイヤラッピングによるプロトタイプ基板と同じサイズであったためと、当時のディスクドライブの大きさによるものである。当時、ZetaLisp 処理系を格納できるディスク装置は14インチ(356mm)のものしかなかった(富士通の Eagle という装置が使われていた)。3670 と 3675 は若干背が低いが、基本的に同じマシンをやや密に実装しただけである。その後、8インチ(203mm)や5.25インチ(133mm)のディスク装置が登場し、3640や3645での小型化に寄与した。

その後、同じアーキテクチャをカスタムLSIで実装するようになり、プロセッサ基板は5枚から2枚に削減された。これによって製造コストは大幅に低減されたが、性能は若干改善した程度である。3650 は 3640 と同じ筐体であった。メモリの高密度実装とディスク装置の小型化によって 3620 はフルタワー型PC程度の大きさになった。3630 は 3620 の幅を広くして、メモリや拡張カードを追加できるようにしたバージョンである。3610 は廉価版であり、開発用ではなくアプリケーション実行用を意図していた。

3600シリーズは人工知能研究やその応用製品開発によく使われた。1980年代の人工知能の商用化の流れはシンボリックスの成功に起因している。シンボリックスのコンピュータはAIソフトウェア開発の最高のプラットフォームと見なされていた。

3600シリーズ成功の一因として、カラービットマップインタフェースと強力なアニメーションソフトウェアがある。同社の S-Render と S-Paint といったソフトウェアは、ハリウッドの映画やテレビ番組制作会社で使われた。

また、シンボリックスはHDTV品質のビデオを処理できる初のワークステーションを開発し、日本でよく使われた。シンボリックスのグラフィックス部門は90年代初めにニチメンに売却され、そのソフトウェアはSGIのマシンやWindows NTマシンに移植された。現在は Izware LLC が Mirai という製品名で販売している。これは、映画『ロード・オブ・ザ・リング』三部作などでも使われている。

3600シリーズは、シンキングマシンズ超並列マシンコネクションマシン、こちらもMITからのスピンオフ)の初期のフロントエンドとしても使われた。コネクションマシンでも並列版LISPが動作し、当初は人工知能研究に使われたため、シンボリックスのLISPマシンはフロントエンドとして最適だった。

オペレーティングシステムには当初は名前がなかったが、1984年ごろ Genera と名づけられた。システムには様々な拡張を施したLISP処理系が実装されている。その源流はPDP-10上のMaclispだが、扱えるデータ型が増え、多重継承型のオブジェクト指向プログラミング機能が追加されている。当初 Lisp Machine Lisp と呼ばれていたが ZetaLisp と名づけられ、1987年に Common Lisp が生まれたころに Symbolics Common Lisp となった。Common Lisp はLISPマシン上の処理系のサブセットである。
Ivory と Open Genera

1980年代後半、LISPマシンのプロセッサをシングルチップ化した Ivory が登場した。Ivory 390k はシンボリックス独自のハードウェア記述言語 NS で設計されたVLSIで、40ビットワードである(8ビットタグと32ビットアドレス)。アドレス指定はワード単位であるため、アドレス空間は4GW(ギガワード)すなわち16GB(ギガバイト)である。Ivory では各ワードに8ビットのECCが付属しており、外部メモリのフェッチ幅は実際には48ビットとなっている。命令は18ビットで、1ワードには2命令と2ビットCDRコードと2ビットデータ型が含まれている。2命令を1ワードでフェッチすることで性能が強化されている。命令セットはチップ内のROMに格納されたマイクロプログラム方式である。ヒューレット・パッカードが製造を担当し、当初は2μmプロセスだったが、後に1.25μm、さらには1μmと縮小されていった。スタックマシンであり、パイプラインは4段(フェッチ、デコード、実行、ライトバック)である。


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:29 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef