Oberon (sistema operacional)
Oberon
| |
|---|---|
| Produção | Niklaus Wirth Jürg Gutknecht |
| Linguagem | Oberon |
| Modelo | Open source |
| Lançamento | 1987[1] |
| Idioma(s) | Inglês |
| Plataformas | Ceres (NS32032), IA-32, Xilinx Spartan, and many others |
| Núcleo | Orientado a objetos |
| Interface | Baseada em Texto |
| Precedido por | Medos-2 |
| Página oficial | www |
| Estado de desenvolvimento | |
| Corrente | |
O Oberon System[2] é um sistema operacional modular, de usuário único, para somente um processador, multitarefas escrito na linguagem de programação Oberon.[3] Ele foi desenvolvido originalmente no fim da década de 1980 no ETH Zurich. O Sistema Oberon tem uma interface de texto do usuário visual (TUI) ao invés de uma interface de linha de comando (CLI) convencional. Esse TUI foi muito inovador naquele momento e influenciou o design do editor de texto Acme para o sistema operacional Plan 9 from Bell Labs.
O sistema também evoluiu se tornando o sistema A2 com suporte a multiprocessos, capaz de multiprocessamento simétrico (previamente chamado Active Object System (AOS),[4] e depois Bluebottle), com uma zooming user interface (ZUI).
História
O sistema operacional Oberon se originou como parte da estação de trabalho Ceres basada no NS32032. Ele foi escrito quase que inteiramente (e na versão de 2013 interinamente é valido) na linguagem de programação Oberon[5] O sistema básico foi projetado e implementado por Niklaus Wirth e Jürg Gutknecht e o seu design e implementação foram documentados em completo em seu livro "Project Oberon".[6] A interface do usuário e a referencia do programador são encontradas no livro de Martin Reiser "The Oberon System".[7] O Sistema Oberon foi mais tarde expandido e portado para outras plataformas de hardware[8][9][10][11][12] por um time na ETH Zurich e houve um reconhecimeto em revistas populares.[13] [14][15][16][17][18] Wirth e Gutknecht (apesar de ativos como professores de ciência da computação) referem a si mesmos como 'programadores de meio período' no livro Project Oberon.[6] No fim de 2013, poucos meses antes do aniversário de 80 anos, Wirth publicou uma segunda edição do Projeto Oberon.[19] Ele detalha implementar o Sistema Oberon usando uma CPU reduced instruction set computer (RISC) que ele mesmo havia projetado realizada numa placa com um field-programmable gate array (FPGA) Xilinx. Ela foi apresentada num simpósio[20] organizado para o seu aniversário de 80 anos no ETH Zurich. Enquanto isso, vários emuladores para essa versão foram implementados.[21][22][23][24][25]
De acordo com Josef Templ, um ex membro do grupo de desenvolvimento no Swiss Federal Institute of Technology in Zurich e mais tarde membro do Institut für Systemsoftware do Johannes Kepler University Linz, onde uma versão forkada (V4) foi mantida, a genealogia de diferentes versões do Sistema Oberon é essa:
| Ano | Nome | Observação | |
|---|---|---|---|
| 1985 | Inicio do projeto Oberon | ||
| 1987 | V1 | Uso interno no ETHZ;[2][26] apenas recursos simples de edição de textos | |
| 1991 | V2 | Modelo de texto extensível em um editor especial chamado Write[27] suportando essas extenções | |
| 1991 | System 3 | Extensões de Kernel suportando persistência de objetos e bibliotecas de objetos suportando embedding de objetos e linking de objetos; Gadgets, Script (editor de texto), Illustrate (graphics editor)[14] | |
| 1992 | Publicação da Trilogia Oberon: "Project Oberon",[6] "The Oberon System",[7] e "Programming in Oberon"[5] | ||
| 1992 | V4 | Funções do Write integradas no editor de texto padrão | |
| Rel. 1.4 | Desktops | ||
| 1993 | Rel. 1.5 | Modelo de documento genérico | |
| 1994 | V4 | Hanspeter Mössenböck appointed at JKU (Linz), V4 development moves there | |
| 1995 | Rel. 2.0 | Document space extended to the whole internet; improved bitmap editor: Rembrandt; online tutorials | |
| 2000 | ETH-Oberon | System-3 renomeado ETH-Oberon | |
| 2002 | AOS | Active Object System,[4] também Active Oberon System, mais tarde renomeado Bluebottle, e então A2 | |
| 2013 | PO 2013 - V5 | Reimplementação do Sistema Oberon original em FPGA | |
Versões e disponibilidade
Native Oberon

O Native Oberon é um Sistema Oberon que roda diretamente no hardware.[28] PC-Native Oberon é uma versão que roda em hardware PC IA-32. O Native Oberon tem poucos requisitos de hardware: um Pentium de 133 MHz, HD de 100MB, placa gráfica VESA 2 com resolução mínima de 1024x768 pixels, opcionalmente uma placa de rede 3Com. O sistema básico roda a partir de um disquete, e mais software pode ser instalado a partir da rede. A instalação complete inclui GUI Gadgets. É escrito complemente na linguagem Oberon. A versão disponível mais recente é a 2.3.7. Datada de 5 de janeiro de 2003 e as vezes rotulada como um Update/Alpha, especialmente no servidor FTP do ETHZ. Versões posteriores foram incorporadas no AOS/BlueBottle/A2.
Project Oberon 2013
Em 2013, Wirth e Paul Reed completaram uma reimplementação do Sistema Oberon para o Digilent Xilinx Spartan 3 FPGA Starter Board. O trabalho inclui uma revisão do "Project Oberon", [6] identificado como Project Oberon (New Edition 2013). Em 2015, Reed colaborou com Victor Yurkovsky para criar o OberonStation, um computador baseado num Xilinx Spartan 3 projetado especificamente para rodar Oberon. O sistema dês de então foi portado para um FPGA Xilinx Spartan 6 Pepino development board por Saanlima Electronics, e um Xilinx Artix 7-based Digilent Nexys A7-100 FPGA Trainer board by CFB Software. Peter de Wachter implementou um emulador para ele, e que também foi portado para Java e JavaScript por Michael Schierl, rodando em um navegador moderno, e portado para o Free Pascal/Ultibo por Markus Greim e para Go.[21][22][23][24] Andreas Pirklbauer mantêm uma versão experimental e extensões para o Project Oberon 2013 no GitHub.
Galeria
-
Oberon em um tablet Tatung TWN-5213 CU. -
Oberon V5 RISC emulator on GNURoot Debian on Android on an Alcatel 9015B tablet with keyboard and mouse connected by Bluetooth.
Glossário
- A2 – Formerly Active Object System (AOS) in 2002,[4] renamed Bluebottle in 2005 due to rumored copyright issues, renamed A2 in 2008.
- ALO – ARM Linux Oberon; in LNO family and for ARM CPU.
- AOS – see A2 entry above.
- BB – BlackBox Component Builder. Component Pascal IDE from Oberon Microsystems.
- Bluebottle – see A2 entry above.
- CP – Component Pascal. A dialect in the Oberon family most similar to Oberon-2.
- ETHO – Oberon as developed at Swiss Federal Institute of Technology in Zurich: Eidgenössische Technische Hochschule (ETH).
- Fox – The compiler for Active Oberon, appearing in AOS (see A2 entry above).[29]
- LEO – Linux ETH Oberon. ETHO 2.4.3 for Linux x86.
- LNO – Linux Native Oberon.
- NO – Native Oberon. Runs on bare hardware rather than on another operating system.
- OLR – Oberon Linux Revival. A version of NO which uses Linux as a HAL and runs on x86, ARM, and MIPS.
- OP2 – The Portable Oberon-2 Compiler. OP2 was developed to port Oberon onto commercially available platforms.[30]
- PACO – (scope) PArallel COmpiler. Appears in A2 (see entry above). Compiles each scope in an independent thread.
- RISC5 – the central processing unit (CPU) of Project Oberon 2013 based on Wirth's RISC architecture.[31] Not to be confused with RISC-V.
- UnixAOS – Unix-based AOS, see A2 entry above.
- WinAOS – Windows-based AOS, see A2 entry above.
Ver também
- Oberon Wikibook (em inglês)
- A2 (sistema operacional)
- Oberon (linguagem de programação)
- Oberon-2 programming language
Referências
- ↑ Kulka, Irena. «Oberon: Welcome to Oberon». ETH. Consultado em 27 de novembro de 2017. Cópia arquivada em 6 de janeiro de 2017
- ↑ a b Wirth, Niklaus; Gutknecht, Jürg (1988). The Oberon System: Report Number 88 (PDF) (Relatório)
- ↑ Wirth, Niklaus: The Programming Language Oberon. Software - Practice and Experience, 18:7, 671-690, Jul. 1988
- ↑ a b c Muller, Pieter Johannes (2002). The active object system design and multiprocessor implementation (PDF) (PhD). Swiss Federal Institute of Technology, Zürich (ETH Zurich)
- ↑ a b M. Reiser and N. Wirth: Programming in Oberon Addison-Wesley/ACM Press (1992) ISBN 0-201-56543-9. Out of print.
- ↑ a b c d 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 the second edition (2013).
- ↑ a b Reiser, Martin: "The Oberon System - User Guide and Programmer's Manual" - Out-of-print - Addison-Wesley/ACM Press (1991) ISBN 0-201-54422-9
- ↑ A. R. Disteli, Oberon for PC on an MS-DOS base, Technical Report #203 der ETH Zurich, November 1993, Reprint.
- ↑ J. Supcik, HP-Oberon, Technical Report #212 of the ETH Zurich, November 1993, Reprint.
- ↑ M. Franz, MacOberon Reference Manual, Technical Report #142 der ETH Zurich, November 1993, Reprint.
- ↑ J. Templ, Design and implementation of SPARC-Oberon. Structured Programming, 12, 197–205 (1991).
- ↑ 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 Zurich.
- ↑ 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).
- ↑ a b H. Marais, Oberon System 3, Dr. Dobb's Journal, October 1994, pages 42-50.
- ↑ Pountain, Dick (maio de 1993). «Oberon: A Glimpse at the Future». Byte. 18 (5). p. 111ff – via Archive.org
- ↑ Pountain, Dick (março de 1991). «Modula's Children, Part II: Oberon». Byte. 16 (3). pp. 135–142 – via Archive.org
- ↑ Pountain, Dick (janeiro de 1995). «The Oberon/F System» (PDF). Byte. 20 (1). p. 227f – via Vintage Apple
- ↑ Börner, T. (março de 1999). «Betriebssysteme: Native Oberon für den PC». Chip (em alemão). p. 131ff
- ↑ Reed, Paul (21 de dezembro 2013). «[Oberon] Project Oberon, 2013 Edition». Consultado em 13 de fevereiro de 2021
- ↑ Wirth, Niklaus (20 de fevereiro de 2014). Niklaus Wirth Birthday Symposium. ETH Zurich. Consultado em 13 de fevereiro de 2021
- ↑ a b De Wachter, Peter (18 de agosto de 2020). «Oberon RISC Emulator». GitHub. Consultado em 13 de fevereiro de 2021
- ↑ a b Schierl, Michael (19 de janeiro de 2021). «Project Oberon emulator in JavaScript and Java». GitHub. Consultado em 13 de fevereiro de 2021
- ↑ a b Greim, Markus (14 de agosto de 2016). «Port of the Oberon RISC Emulator to [Ultibo]». GitHub. Consultado em 13 de fevereiro de 2021
- ↑ a b «Project Oberon emulator in Go». GitHub. 18 de setembro de 2021. Consultado em 13 de fevereiro de 2021
- ↑ de Jong, Roel P. (19 de outubro de 2018). «Oberon Workstation». Reactive Instruments. Consultado em 13 de fevereiro de 2021
- ↑ Wirth, Niklaus. Designing a System from Scratch. Structured Programming (1989) Vol. 10, pp. 10–18.
- ↑ Szyperski, Clemens A., Write: An extensible text editor for the Oberon system. Swiss Federal Institute of Technology in Zurich (1991). Report 151.
- ↑ Archives of the Oberon Website.
- ↑ «Fox Tool». Consultado em 19 de março de 2021. Cópia arquivada em 6 de fevereiro de 2018
- ↑ Crelier, Régis. «Separate Compilation and Module Extension». ETH Zurich. Consultado em 18 de novembro de 2018
- ↑ Wirth, Niklaus. «FPGA-related Work». ETH Zurich. Consultado em 12 de setembro de 2016
Ligações externas
- Sítio oficial, old ETH Oberon homepage, dead since Jan-2020, redirect to Archive.org: archived version
- Oberon article on WikiWikiWeb
- Genealogy and History of the Oberon System version at archive.org
- Oberon Bibliography
- Oberon compilers.
- 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 available Desde 4 de março de 2020 at ETH Zurich's redmine instance.
- Native Oberon Home Page redirected to Archive.org (May 2016 - this site has broken URLs in the links to the ftp-Server; files were moved from ftp://ftp.inf.ethz.ch/pub/ETHOberon/ to ftp://ftp.ethoberon.ethz.ch/, on 10 March 2022 a mirror of that server is still available at GWDG)
- Native Oberon Hardware Compatibility redirected to archive.org
- 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 Linz
- Oberon V4 Sources Collected sources for different V4 implementations at SourceForge and Oberon V4 for Linux, more information in the corresponding wiki.
- http://www.projectoberon.com/, Project Oberon.
- Experimental Oberon
- WinOberon aka Plugin Oberon Version 2.6 as provided by Emil Zeller to Alexander Illjin around 2010
- Oberon System 3 Tutorial by André Fischer (1997), archived version