Oberon (sistema operacional)

Oberon
Captura de tela
Tiled window arrangement of Oberon
ProduçãoNiklaus Wirth
Jürg Gutknecht
LinguagemOberon
ModeloOpen source
Lançamento1987; há 39 anos (1987)
IdiomaInglês
PlataformasCeres (NS32032), IA-32, Xilinx Spartan, and many others
NúcleoOrientado a objetos
InterfaceBaseada em Texto
Estado de desenvolvimento
Corrente
Cronologia
Página oficialwww.projectoberon.net

O Oberon System é um sistema operacional modular, de usuário único, para somente um processador, multitarefas escrito na linguagem de programação Oberon. 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), 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 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". A interface do usuário e a referencia do programador são encontradas no livro de Martin Reiser "The Oberon System". O Sistema Oberon foi mais tarde expandido e portado para outras plataformas de hardware por um time na ETH Zurich e houve um reconhecimeto em revistas populares. 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. No fim de 2013, poucos meses antes do aniversário de 80 anos, Wirth publicou uma segunda edição do Projeto Oberon. 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 organizado para o seu aniversário de 80 anos no ETH Zurich. Enquanto isso, vários emuladores para essa versão foram implementados.

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; apenas recursos simples de edição de textos
1991V2Modelo de texto extensível em um editor especial chamado Write suportando essas extenções
1991System 3Extensõ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)
1992Publicação da Trilogia Oberon: "Project Oberon", "The Oberon System", e "Programming in Oberon"
1992V4Funções do Write integradas no editor de texto padrão
Rel. 1.4Desktops
1993Rel. 1.5Modelo de documento genérico
1994V4Hanspeter Mössenböck appointed at JKU (Linz), V4 development moves there
1995Rel. 2.0Document space extended to the whole internet; improved bitmap editor: Rembrandt; online tutorials
2000ETH-OberonSystem-3 renomeado ETH-Oberon
2002AOSActive Object System, 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 instalador Oberon0 rodando no QEMU no Debian Wheezy. A apresentação do tabela de partição ilustra a facilidade de compreensão do sistema em geral.

O Native Oberon é um Sistema Oberon que roda diretamente no hardware. 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", 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. Andreas Pirklbauer mantêm uma versão experimental e extensões para o Project Oberon 2013 no GitHub.

Galeria

Glossário

Ver também

Referências

  1. ↑ Kulka, Irena. «Oberon: Welcome to Oberon». ETH. Consultado em 27 de novembro de 2017. Cópia arquivada em 6 de janeiro de 2017
  2. 1 2 Wirth, Niklaus; Gutknecht, Jürg (1988). The Oberon System: Report Number 88 (PDF) (Relatório)
  3. ↑ Wirth, Niklaus: The Programming Language Oberon. Software - Practice and Experience, 18:7, 671-690, Jul. 1988
  4. 1 2 3 Muller, Pieter Johannes (2002). The active object system design and multiprocessor implementation (PDF) (PhD). Swiss Federal Institute of Technology, Zürich (ETH Zurich)
  5. 1 2 M. Reiser and N. Wirth: Programming in Oberon Addison-Wesley/ACM Press (1992) ISBN 0-201-56543-9. Out of print.
  6. 1 2 3 4 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).
  7. 1 2 Reiser, Martin: "The Oberon System - User Guide and Programmer's Manual" - Out-of-print - Addison-Wesley/ACM Press (1991) ISBN 0-201-54422-9
  8. ↑ A. R. Disteli, Oberon for PC on an MS-DOS base, Technical Report #203 der ETH Zurich, November 1993, Reprint.
  9. ↑ J. Supcik, HP-Oberon, Technical Report #212 of the ETH Zurich, November 1993, Reprint.
  10. ↑ M. Franz, MacOberon Reference Manual, Technical Report #142 der ETH Zurich, November 1993, Reprint.
  11. ↑ J. Templ, Design and implementation of SPARC-Oberon. Structured Programming, 12, 197–205 (1991).
  12. ↑ 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.
  13. ↑ 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).
  14. 1 2 H. Marais, Oberon System 3, Dr. Dobb's Journal, October 1994, pages 42-50.
  15. ↑ Pountain, Dick (maio de 1993). «Oberon: A Glimpse at the Future». Byte. 18 (5). p. 111ff – via Archive.org
  16. ↑ Pountain, Dick (março de 1991). «Modula's Children, Part II: Oberon». Byte. 16 (3). pp. 135–142 – via Archive.org
  17. ↑ Pountain, Dick (janeiro de 1995). «The Oberon/F System» (PDF). Byte. 20 (1). p. 227f – via Vintage Apple
  18. ↑ Börner, T. (março de 1999). «Betriebssysteme: Native Oberon für den PC». Chip (em alemão). p. 131ff
  19. ↑ Reed, Paul (21 de dezembro 2013). «[Oberon] Project Oberon, 2013 Edition». Consultado em 13 de fevereiro de 2021
  20. ↑ Wirth, Niklaus (20 de fevereiro de 2014). Niklaus Wirth Birthday Symposium. ETH Zurich. Consultado em 13 de fevereiro de 2021
  21. 1 2 De Wachter, Peter (18 de agosto de 2020). «Oberon RISC Emulator». GitHub. Consultado em 13 de fevereiro de 2021
  22. 1 2 Schierl, Michael (19 de janeiro de 2021). «Project Oberon emulator in JavaScript and Java». GitHub. Consultado em 13 de fevereiro de 2021
  23. 1 2 Greim, Markus (14 de agosto de 2016). «Port of the Oberon RISC Emulator to [Ultibo]». GitHub. Consultado em 13 de fevereiro de 2021
  24. 1 2 «Project Oberon emulator in Go». GitHub. 18 de setembro de 2021. Consultado em 13 de fevereiro de 2021
  25. ↑ de Jong, Roel P. (19 de outubro de 2018). «Oberon Workstation». Reactive Instruments. Consultado em 13 de fevereiro de 2021
  26. ↑ Wirth, Niklaus. Designing a System from Scratch. Structured Programming (1989) Vol. 10, pp. 10–18.
  27. ↑ Szyperski, Clemens A., Write: An extensible text editor for the Oberon system. Swiss Federal Institute of Technology in Zurich (1991). Report 151.
  28. ↑ Archives of the Oberon Website.
  29. ↑ «Fox Tool». Consultado em 19 de março de 2021. Cópia arquivada em 6 de fevereiro de 2018
  30. ↑ Crelier, Régis. «Separate Compilation and Module Extension». ETH Zurich. Consultado em 18 de novembro de 2018
  31. ↑ Wirth, Niklaus. «FPGA-related Work». ETH Zurich. Consultado em 12 de setembro de 2016

Ligações externas

O Wikilivros tem um livro chamado en:Oberon