World Library  
Flag as Inappropriate
Email this Article

Oberon (operating system)

Article Id: WHEBN0000347102
Reproduction Date:

Title: Oberon (operating system)  
Author: World Heritage Encyclopedia
Language: English
Subject: Graphical user interface, Language-based system, List of file systems, Oberon (disambiguation), BlackBox Component Builder
Collection: Free Software Operating Systems
Publisher: World Heritage Encyclopedia

Oberon (operating system)

Tiled window arrangement of Oberon
Tiled window arrangement of Oberon
Developer Niklaus Wirth and Jürg Gutknecht
Written in Oberon
Source model Open source
Initial release 1987[1]
Available in English
Platforms NS32032, IA-32, Xilinx Spartan, and many others
Default user interface Text user interface
License ETH Oberon License
Official website

The Oberon System[2] is a modular single user single process multitasking operating system developed in the late 1980s at ETH Zürich using the Oberon programming language.[3] It has an unconventional visual text-based user interface (TUI, see also below in Section 2 User Interface) for activating commands, which was very innovative at that time.


  • History 1
  • User interface 2
  • Versions and availability 3
  • Native Oberon 4
  • Project Oberon (FPGA) 5
  • See also 6
  • References 7
  • External links 8


The Oberon operating system was originally developed as part of the ETHZ.

According to Josef Templ, a former member of the developer group at Eidgenössische Technische Hochschule, Zürich and later member of the "Institut für Systemsoftware" of Johannes Kepler University of Linz, where one version (V4) was maintained, the genealogy of the different versions of the Oberon System was the following:

Year Name Remark
1985   Start of the Oberon project
1987  V1 Internal use at ETHZ.[2][20] Only simple text editing facilities.
1991  V2  Extensible text model and a special editor called Write[21] supporting these extensions.
1991 System 3 Extensions to the kernel supporting persistent objects and object-libraries supporting object embedding and object linking. Gadgets, text-editor: Script, and graphics-editor: Illustrate
1992 Publication of the Oberon Trilogy: "Project Oberon",[5] "The Oberon System".",[6] and "Programming in Oberon"[4]
1992  V4 Functionality of Write integrated into standard text editor.
Rel. 1.4 Desktops
1993 Rel. 1.5 Generic document model
1994  V4 Hanspeter Mössenböck's appointment at JKU (Linz), development of V4 moved to Linz.
1995 Rel. 2.0 Extension of the document space to the whole internet. Improved bitmap-editor: Rembrandt. Online tutorials.
2000 ETH-Oberon System-3 renamed to ETH-Oberon
2002 AOS - A2 Active Object System[22] (aka Act. Oberon Sys., later renamed to A2)
2013 PO 2013 - V1 Re-implementation of the original Oberon System in FPGA

User interface

Oberon has a text user interface (TUI), which has to be differentiated from the terminal user interface. It combines the point-and-click convenience of a graphical user interface (GUI) with the linguistic strength of a command line interface (CLI) and is closely tied to the naming conventions of the Oberon language. Any text appearing (almost) anywhere on the screen can be edited and can therefore be used as command input. Commands are activated by a middle-mouse click [23] on a text fragment of the form Module.Command (optionally followed by parameters). A command is defined by a procedure, which has an empty argument list. Parameters to the command have to be defined before executing the middle click. There are no checks or any questions asked during command execution. This is sometimes called a "non-modal" user interface (UI). Nothing like a command prompt is required. Although radically different from a command line, the TUI is very efficient and powerful.[24] A steep ascent in the early learning curve makes it a little bit difficult in the beginning. No questions are asked: this is a deliberate design decision, which needs getting used to. Most editors ask the user when closing a modified text: this is not the case in the Oberon System. The usage of the TUI and programming interface is documented in Martin Reiser's book "The Oberon System".[6] It has yet to appear in more commonplace operating systems. Rob Pike's Acme system under Plan 9 from Bell Labs was strongly inspired by the Oberon TUI. Whether the worksheet interface of the Macintosh Programmer's Workshop influenced Oberon's TUI or vice versa is difficult to decide: Oberon System was based on Wirth's previous computer design the Lilith, and both the Apple Macintosh (and its precursor Lisa) and the Oberon System (on Ceres and its precursor Lilith) were all inspired by the Alto developed at Xerox PARC.

Versions and availability

The Oberon OS is available for several hardware platforms, generally in no cost versions. It is typically extremely compact. Even with an Oberon compiler, assorted utilities including a web browser, TCP/IP networking, and a GUI, the entire package can be compressed to a single 3.5" floppy disk. There are/were versions which emulated the Oberon OS on top of another operating system and versions which run on bare hardware. The latter ones are called Native Oberon. There are/were native versions for the Ceres, Intel IA-32, and ARM platforms. In 2013 Niklaus Wirth adapted the basic system as described in "Project Oberon"[5] to a current FPGA design. According to the preface of the 2013 edition, the whole system compiles in less than 10 sec on a Spartan-3 board.

The version called Oberon V4 (see also History) is closer to the original operating system developed by N. Wirth & J. Gutknecht. It was originally developed at ETHZ, but when H.P. Mössenböck went to Institut für Systemsoftware at Johannes-Keppler University in Linz (JKU) the development of V4 moved also. Therefore, V4 is sometimes also called Linz-Oberon in contrast to ETH-Oberon. The most recent version of V4 and extensions are available at JKU. Oberon V4 appears to be orphaned, there are almost no changes since 2000. Another repository of V4 is Claudio Nieder's Oberon V4, which also shows difference between the different V4 implementations. Since 2013 this page moved to/is mirrored at SourceForge. V4 is closer to what would now be called an integrated development environment than an operating system of its own. There were many extensions written for V4, which are still available from the ftp server of SSW at JKU; some documentation can be found on their web-pages more is normally included in the packages in Oberon's special rich text format.

The computer science department at ETHZ has in recent years begun exploring active objects and concurrency for operating systems, and has released an early version of a new language Active Oberon and a new operating system for it, first called AOS and — due to copyright issues — now called A2, and/or Bluebottle. It is available from ETHZ with most source via the Internet. Native versions (A2), i.e. running on the bare hardware, are currently possible for Intel IA-32 and X86-64 single- and multi-processor systems and for the StrongARM CPU family, versions running on top of another operating system are available on Windows (WinAos), Unix (UnixAos), Linux (LinuxAos), and OS-X (DarwinAos).

As a part of an industrial research project[25] the Native Systems Group of ETHZ has developed an application-specific operating system called stailaOS which is based on the latest version Oberon OS. It is targeted towards applications like real-time analytics, high performance trading systems, main memory based ERP etc.

Native Oberon

The Oberon0 installer running under QEMU in Debian Wheezy. The presentation of the partition table illustrates the comprehensibililty of the system in general.

Native Oberon[26] stands for the Oberon System running on bare hardware. PC-Native Oberon is the version of the Oberon operating system which runs on IA-32 (x86-32) PC hardware. It has minimal hardware requirements (133 MHz Pentium, 100MB hard disk, and a VESA 2 graphics card with a resolution of at least 1024x768 pixel, optionally a 3COM Network card). The basic system runs from a single HD-Floppy and additional software can be installed through the network. The full installation includes the Gadgets GUI and is surprisingly functional given its small code-base. It is written completely in the Oberon programming language.

Some confusion is caused by the fact that there exists a version called LNO (an acronym for Linux Native Oberon), which uses Linux as hardware abstraction layer (HAL). Its goal was to be as compatible as possible to PC-Native Oberon. Other versions of the Oberon System, i.e. without Native in the name, had partially modified interfaces of low level modules.

Project Oberon (FPGA)

In 2013 Niklaus Wirth and Paul Reed completed a re-implementation of the original Oberon System for the Digilent Xilinx Spartan 3 FPGA Starter Board. The work included a revision of "Project Oberon",[5] identified as Project Oberon (New Edition 2013). The system has since been ported to a Xilinx Spartan 6 FPGA Development Board by Saanlima Electronics. In 2015 Paul Reed collaborated with Victor Yurkovsky in the creation of OberonStation, a Xilinx Spartan 3-based computer designed specifically to run Oberon.

See also


  1. ^ Irena Kulka. "ETH - Oberon - Welcome to Oberon". Retrieved 11 August 2015. 
  2. ^ a b Niklaus Wirth & Jürg Gutknecht: (1988) The Oberon System. Report Nr. 88.
  3. ^ Wirth, Niklaus: The Programming Language Oberon. Software - Practice and Experience, 18:7, 671-690, Jul. 1988
  4. ^ a b M. Reiser and N. Wirth: Programming in Oberon Addison-Wesley/ACM Press (1992) ISBN 0-201-56543-9. Out of print.
  5. ^ a b c d e N. Wirth and J. Gutknecht: Project Oberon - The Design of an Operating System and Compiler Addison-Wesley/ACM Press (1992) ISBN 0-201-54428-8. Out of print. Online version of a second edition.
  6. ^ a b c Reiser, Martin: "The Oberon System - User Guide and Programmer's Manual" - Out-of-print - Addison-Wesley/ACM Press (1991) ISBN 0-201-54422-9
  7. ^ A. R. Disteli, OBERON for PC on an MS-DOS base, Technical Report #203 der ETH-Zürich, November 1993, Reprint.
  8. ^ J. Supcik, HP-OBERON, Technical Report #212 of the ETH-Zürich, November 1993, Reprint.
  9. ^ M. Franz, MacOberon Reference Manual, Technical Report #142 der ETH-Zürich, November 1993, Reprint.
  10. ^ J. Templ, Design and implementation of SPARC-Oberon. Structured Programming, 12, 197–205 (1991).
  11. ^ M. Brandis, R. Crelier, M. Franz, J. Templ, The Oberon System Family. Software-Practice and Experience, Vol. 25(12), 1331–1366, December 1995. Also: Technical Report 174 of the ETH-Zürich.
  12. ^ R. Gerike, Wider den Schnickschnack. Oberon System, Teil 1: Anwendersicht. c't 1994 (2) p. 180, Teil 2: Technische Einblicke. c't 1994 (3), p. 240 (German language).
  13. ^ H. Marais, Oberon System 3, Dr. Dobb's Journal, October 1994, pages 42-50.
  14. ^ D. Pountain, Oberon: A Glimpse at the Future, BYTE 18(5), 111ff, May 1993.
  15. ^ D. Pountain, Modula's Children, Part II: Oberon - BYTE 16(3), 135-142, Mar. 1991.
  16. ^ D. Pountain, The Oberon/F System, BYTE 20(1), Jan. 1995.
  17. ^ T. Börner, Betriebssysteme: Native Oberon für den PC, CHIP 1999, March, p. 131ff (German language).
  18. ^ "[Oberon] Project Oberon, 2013 Edition". Retrieved 11 August 2015. 
  19. ^ Olaf A. Schulte. "ETH Zurich Multimedia Portal: video, audio, podcast, webcast, live-streaming - Niklaus Wirth Birthday Symposium". Retrieved 11 August 2015. 
  20. ^ Wirth, Niklaus. Designing a System from Scratch. Structured Programming (1989) Vol. 10, pp. 10-18.
  21. ^ Szyperski, Clemens A., Write: An extensible text editor for the Oberon system. Eidgenössische Technische Hochschule Zürich (1991). Report 151.
  22. ^ Muller, Pieter Johannes, The active object system design and multiprocessor implementation. Eidgenössische Technische Hochschule Zürich (2002). pdf
  23. ^ Using the mouse and the keyboard
  24. ^ Franz, Michael (2000). Böszörmény, Lászlo; Gutknecht, Jürg; Pomberger, Gustav, eds. The School Niklaus Wirth - The Art of Simplicity. Morgan Kaufmann Publishers. pp. 41–53.  
  25. ^ stailaOS(ETHZ) Project Page
  26. ^ Archives of the old Oberon Website.

External links

  • The ETH Oberon Homepage
  • Genealogy and History of The Oberon System
  • Oberon Community Platform - Wiki & Forum
  • Install ETH Oberon using QEMU
  • BlueBottle/Aos/A2 An evolution of Native Oberon with support for Multiprocessor systems with Active Objects (kind of threads running on separate processors, if available) and a Zooming User Interface
  • Native Oberon Home Page
  • Native Oberon Hardware Compatibility
  • ETH PC Native Oberon, Usage Notes
  • Lukas Mathis' Blog about Oberon A nice trace back to the history of user interfaces and Oberon.
  • Oberon V4 main page at Johannes Kepler University of Linz
  • Oberon V4 Sources Collected sources for different V4 implementations at SourceForge and Oberon V4 for Linux, more information in the corresponding wiki.
  •, Project Oberon.
This article was sourced from Creative Commons Attribution-ShareAlike License; additional terms may apply. World Heritage Encyclopedia content is assembled from numerous content providers, Open Access Publishing, and in compliance with The Fair Access to Science and Technology Research Act (FASTR), Wikimedia Foundation, Inc., Public Library of Science, The Encyclopedia of Life, Open Book Publishers (OBP), PubMed, U.S. National Library of Medicine, National Center for Biotechnology Information, U.S. National Library of Medicine, National Institutes of Health (NIH), U.S. Department of Health & Human Services, and, which sources content from all federal, state, local, tribal, and territorial government publication portals (.gov, .mil, .edu). Funding for and content contributors is made possible from the U.S. Congress, E-Government Act of 2002.
Crowd sourced content that is contributed to World Heritage Encyclopedia is peer reviewed and edited by our editorial staff to ensure quality scholarly research articles.
By using this site, you agree to the Terms of Use and Privacy Policy. World Heritage Encyclopedia™ is a registered trademark of the World Public Library Association, a non-profit organization.

Copyright © World Library Foundation. All rights reserved. eBooks from Project Gutenberg are sponsored by the World Library Foundation,
a 501c(4) Member's Support Non-Profit Organization, and is NOT affiliated with any governmental agency or department.