Oberon/历史视角
继开发了编程语言 Euler、Algol W、Pascal、Modula 和 Modula-2 之后,尼克劳斯·维尔特 继续创建了 Oberon 语言(语言报告),首次发布是在 1986 年。语言设计的目标是设计一个类似于Alto 的 OS 操作系统,并且认识到 Modula-2 缺少所需的语言结构,我们现在称之为类型继承。维尔特选择了另一种观点,称之为类型扩展。除了其他主要为简化的语法差异之外,类型扩展是 Modula-2 和 Oberon 之间的主要区别。在施乐 PARC 相遇后,维尔特与尤尔格·古特克内希特 合作,构建了用 Oberon 语言编写的完整操作系统。这个系统也叫作 Oberon。语言和系统之间的区别通常从上下文很明显。
在随后的开发中,小的语法变化创建了该语言的各种方言(Oberon-2、组件 Pascal、Active Oberon 和 Oberon-07),存在兼容和不兼容之处。操作系统版本也随之发展,同样带来了小的不兼容性。这四种最突出的操作系统风味是
- ETH Oberon(以前称为系统 3,S3)是用 Oberon-2 编写的。[2]。
- V4 Oberon(也称为 Linz-Oberon)基本上是用 Oberon 编写的,但有很多扩展是用 Oberon-2 编写的。
- AOS(也称为 Bluebottle 和 A2)是用 Active Oberon 编写的,
- Oberon V5,在维尔特的《Oberon 项目,2013 版》中描述,是用 Oberon-07 编写的。
通过合理的努力,始终可以解决不兼容性,从而允许将源代码从一个系统移植到另一个系统。
除了作为独立的操作系统之外,Oberon 还被实现为其他系统之上的模拟操作系统,这在虚拟化成为流行语之前几十年就已经实现了。
这些模拟 Oberon 系统中最突出的就是 Oberon V4,它是在 SunOS 1 & 2、Ultrix、Irix、AIX、MacOS 7、8、9(68K 和 Power PC 均可)、AmigaOS、TOS(Atari)、OS/2、Microsoft Windows、HPUX 以及(当然)Linux 之上实现的。[3]。Oberon V4 有时也被称为 Linz-Oberon,因为它是由 Hanspeter Mössenböck 周围的小组维护的,该小组于 1994 年加入了林茨约翰内斯·开普勒大学 的教职工。但是系统 3 也在另一个针对 MacOS(68K 和 PowerPC)、SunOS(SPARC 和 x86)以及 Microsft Windows 的操作系统之上实现。A2 作为模拟操作系统在 Microsoft Windows、Linux 和 Solaris(x86)上运行。2015 年,Peter Matthias 以“Oberon Linux Revival”(OLR)的名义重新振兴了系统 3,作为在 Linux 下的 X86、Mips 和 ARM 硬件上以帧缓冲模式和 X 窗口系统模式运行的多平台概念证明。[4]
有关语言和OS 的更多详细信息,以及对大量文献的引用,请参考相关文章。
- ↑ 计算中心,Clausiusstrasse 55/59,距离北偏北西方向约 500 米,或位于此视图中圆顶主楼的右侧。另请参见http://lists.inf.ethz.ch/pipermail/oberon/2021/015854.html。更多信息和照片请访问https://www.tg.ethz.ch/en/contact/contact/。
- ↑ 由于 Oberon-2 是 Oberon 的超集,所以大部分源代码都是 Oberon 编写的,而所有代码都是 Oberon-2 编写的。请参见语言报告。
- ↑ Oberon V4 的源代码位于 SourceForge
- ↑ Matthias, Peter. "Oberon Linux Revival". Retrieved 31 August 2016.