コンテンツにスキップ

英文维基 | 中文维基 | 日文维基 | 草榴社区

利用者:XXx SyamuGame xXX/Genera (オペレーティングシステム)

Genera
ファイル:Symbolics-document-examiner.png
開発者 Symbolics
プログラミング言語 Lisp
OSの系統 Lisp machine OS
開発状況 Maintained
ソースモデル Source-available
初版 1982年 (42年前) (1982)
最終版 Portable Genera 2.0 / 2021年 (3年前) (2021)
使用できる言語 English
プラットフォーム various Symbolics Lisp machines,
DEC Alpha,
x86_64,
Arm64,
Apple M1
カーネル種別 Object-oriented
既定のUI Dynamic Windows GUI
ライセンス Proprietary
ウェブサイト symbolics-dks.com
テンプレートを表示

Generaは、 Symbolics社によって開発されたLispマシン商用オペレーティングシステムおよび統合開発環境である。これらは実際のところ、Symbolics社がLMI社と共通して使用していたマサチューセッツ工科大学(MIT)AI研究所テキサス・インスツルメンツ社(TI)のLispマシンに由来する初期のOSのフォークでもある。 Generaは、SymbolicsからOpen Generaとしても販売されている。これは、Tru64UNIXを使用するDigitalEquipment Corporation (DEC) Alphax86_64およびArm64 GNU / Linux 、およびApple M1MacOSにて実行される。また、プロプライエタリソフトウェアとしてリリースおよびライセンス供与されている。

Generaはプログラミング言語Lispに基づくオブジェクト指向オペレーティングシステムの一種であり、オブジェクト指向を広範に適用できるプログラミングスタイルの組み合わせを使用して、複雑なソフトウェアの段階的かつインタラクティブな開発をサポートする。

MITのLispマシンオペレーティングシステム

[編集]

LispマシンオペレーティングシステムのソースコードはLispMachineLispで書かれている。これは、当初、人工知能(AI)プロジェクトのソフトウェア開発者を対象とした単一ユーザ向けのワークステーションであった。 [1]システムには、大きなビットマップ画面、マウス、キーボード、ネットワークインターフェイス、ディスクドライブ、および拡張用のスロットが備わっていた。MITにて開発されたLispマシンOSはこのハードウェアをサポートしており、主な機能として以下に列挙されるようなものを提供していた。

単一ユーザーLispベースのオペレーティングシステムおよび開発環境としては、この時点ですでに完成されていた。

MIT Lispマシンのオペレーティングシステムは、1970年代半ばから1980年代初頭にかけて開発された。

2006年に、MITからのこのLispマシンオペレーティングシステムのソースコードは、無料のオープンソースソフトウェアとしてリリースされた。 [2]

Symbolics社による開発

[編集]

Symbolics社はCADRをベースとした第二世代のLispマシンとして3600を開発し、そのオペレーティングシステムとしてGeneraを公開した。なお、2022年2月現在における最新バージョンは8.5である。 Symbolics Generaは、1980年代初頭と1990年代初頭に開発された。

Symbolicsは、MITLispマシンオペレーティングシステムをベースとして開発したGeneraを、階層型ソフトウェアパッケージとともに販売している。階層化されたソフトウェアの一部は、後のリリースでGeneraに統合されている。 Symbolicsは、オペレーティングシステムソフトウェアを元のMIT Lispマシンから改良し、拡張した。 Generaオペレーティングシステムは、SymbolicsLispマシンとOpenGenera仮想マシンでのみ使用可能であった。

Symbolics Generaには多くの機能があり、Symbolics社が創業以来から構築し続けたさまざまなハードウェアのすべてのバージョンをサポートしている。そのソースコードは100万行以上である。この数は、リリースとインストールされているソフトウェアの量によって異なる。 Symbolics Generaは、磁気テープとCD-ROMで公開された。オペレーティングシステムのリリースでは、オペレーティングシステムとそのアプリケーションのほとんどのソースコードも提供された。ユーザーは、実行中のオペレーティングシステムのすべての部分に自由にアクセスでき、変更や拡張機能を書き込むことができる。オペレーティングシステムのソースコードは、いくつかのシステムに分割されている。これらのシステムは、ソース、バイナリ、その他のファイルをバンドルしている。システム構築ツールキット(SCT)は、すべてのシステムの依存関係、コンポーネント、およびバージョンを維持するために用いられる。システムには、メジャーバージョン番号とマイナーバージョン番号の2つの番号が存在する。メジャーバージョン番号は、システムの完全な再構築の回数を示し、マイナーバージョンは、そのシステムへパッチが適用された回数を示す。

Symbolicsは、 Open Generaという名前のバージョンを開発した。これには、DEC AlphaベースのワークステーションでGeneraを実行できる仮想マシンに加えて、別売りのGenera拡張機能とアプリケーション(Symbolics S-Graphicsスイートなど)が含まれている。また、 Common Lispで、組み込み用途向けのMinimaという名前の新しいオペレーティングシステムを開発した。

ユーザーインターフェース

[編集]

制限

[編集]

Generaの制限は次のとおりである。

  • Symbolics LispMachinesまたはOpenGeneraエミュレーターでのみ実行されます。
  • 一度にログインできるのは1人のユーザーのみです。
  • 一度に実行できるLispシステムは1つだけです。データとコードは、アプリケーションとオペレーティングシステムによって共有されます。ただし、OpenGeneraの複数のインスタンスを1つのDECAlphaで実行できます。
  • 開発は1990年代半ばに事実上停止しました。

リリース

[編集]
  • 1982 – Release 78
  • 1982 – Release 210
  • 1983 – Release 4.0
  • 1984 – Release 5.0
  • 1985 – Release 6.0, introduce Symbolics Common Lisp, the Ephemeral Object Garbage Collector, and Document Examiner
  • 1986 – Genera 7.0, introduce Dynamic Windows
  • 1990 – Genera 8.0, introduce CLOS
  • 1991 – Genera 8.1, introduce CLIM
  • 1992 – Genera 8.2
  • 1993 – Genera 8.3
  • 1993 – Open Genera 1.0
  • 1998 – Open Genera 2.0
  • 2021 – Portable Genera 2.0

x86-64またはarm64GNU / Linuxで実行できるOpenGeneraの安定バージョン、およびApple M1MacOSがリリースされた。 [3]

x86-64 GNU / Linuxで実行できるOpenGeneraのハッキングされたバージョンが存在する。 [4] [5]

参考文献

[編集]
  1. ^ A Lisp Machine. Association for Computing Machinery – Special Interest Group on Information Retrieval. (1980). doi:10.1145/800083.802703. 
  2. ^ Retrocomputing – MIT CADR Lisp Machines”. Unlambda.com. 2018年12月1日閲覧。
  3. ^ Palter (Feb 17, 2021). “And there it is!”. twitter. Jan 9, 2022閲覧。
  4. ^ Wiegley (October 23, 2007). “The Symbolics Lisp Machine on Linux”. Advogato. June 30, 2017時点のオリジナルよりアーカイブ。November 22, 2011閲覧。
  5. ^ Collison (April 2008). “Lisp Machines”. 2009年8月27日時点のオリジナルよりアーカイブ。2009年8月31日閲覧。

外部リンク

[編集]


[[Category:オブジェクト指向OS]] [[Category:統合開発環境]] [[Category:プラットフォーム (コンピューティング)]]