A2 (sistema operativo)

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 27 de marzo de 2015; las comprobaciones requieren 189 ediciones .
A2
Desarrollador HTS Zúrich
familia de sistemas operativos A.O.S.
Plataformas compatibles x86 , ARM , x86_64 y celular
tipo de núcleo Microkernel modular con memoria compartida
Interfaz gráfico, escalable
Licencia Módulos separados, aplicaciones y marcos de software similares a BSD distribuidos bajo otras licencias gratuitas
Estado Actual
Repositorio de código fuente svn.inf.ethz.ch/svn/lect…
Sitio web wiki.oberon.org/ao/a2/

A2 (anteriormente Bluebottle ) es un sistema operativo modular orientado a objetos con administración de memoria automática y un subsistema de tiempo real suave, desarrollado en ETH Zurich , basado en el núcleo del Sistema de objetos activos, un desarrollo posterior del sistema ETH Oberon . Proporciona un entorno de tiempo de ejecución compacto para el lenguaje Active Oberon , que permite el desarrollo de sistemas eficientes basados ​​en objetos activos que se ejecutan directamente en el hardware sin un intérprete intermediario o una máquina virtual. A2 contiene todas las herramientas que necesita para el desarrollo: compilador, IDE , editor de formularios, generador de perfiles, editor XML, ensamblador, etc.

Un objeto activo en A2 se representa como una combinación del concepto de "objeto" tradicional para los lenguajes OOP modernos y una "actividad" (hilo) que se ejecuta en el contexto de este objeto. En esta implementación de Active Oberon, un objeto activo puede tener, además de su actividad, también las actividades de los objetos antepasados.

Otras diferencias entre A2 y los sistemas operativos más comunes son su diseño austero, una interfaz de usuario que admite la metáfora de "apuntar y hacer clic" para ejecutar comandos directamente desde el texto en cualquier ventana, similar a los hipervínculos en un navegador web. Lenguaje de programación con seguridad de tipos, administración automática de memoria, recolección de basura, un conjunto de primitivas para sincronizar el acceso a elementos internos de objetos de muchos hilos competidores (actividades).

Por encima de la capa del núcleo , una colección flexible de módulos proporciona abstracciones comunes para dispositivos y servicios, como sistemas de archivos , interfaces de usuario , conexiones de red, códecs, etc.

Arquitectura

Jerarquía de módulos A2 y Active Oberon

La mayor parte del código fuente del Oberon original entró en el proyecto A2 con el prefijo "Oberon". (medio del gráfico) . En términos de funcionalidad, esta parte del código corresponde a las capacidades de MS-DOS con un editor de texto en pantalla . .

En paralelo con AOS (A2), los estudiantes trabajaron en el sistema Native Oberon (NO). Los siguientes módulos gráficos se han creado en NO: GD54xx.Display.Mod, S3C805.Display.Mod, DisplayLinear.Mod, DisplayMach64.Mod, DisplayVGA4.Mod, Display3.Mod, DisplayGTF.Mod (Ninguna jerarquía de módulos de visualización ). Se han realizado cambios en el entorno y el sistema operativo Active Oberon (A2). A2 no admite una amplia variedad de hardware diferente, ya que no es posible que un pequeño grupo de desarrolladores escriba módulos para la mayoría de los dispositivos de video durante la creación de A2 [1] .

En A2, se ha conservado la capacidad de trabajar con objetos interactivos gráficos - Gadgets (parte media superior del diagrama). Capacidades cercanas a Windows 3.x , ya que ambos sistemas operativos compartían el mismo prototipo de Xerox PARC , donde Wirth trabajó dos veces en el mismo año (1976-1977 y 1984-1985) .

El concepto A2 se trata de ventanas y elementos gráficos interactivos e independientes dentro de las ventanas, cada uno ejecutándose en un subproceso separado con su propia máquina de estado o subproceso de actividad (lado derecho del diagrama). Todos los nombres de módulos en esta parte del sistema comienzan con "WM", que es la abreviatura de "Administrador de ventanas". Esta interfaz corresponde funcionalmente a los administradores de ventanas gráficas del sistema Unix/Linux . .

El desarrollo adicional del sistema tuvo lugar en la mejora de las aplicaciones para la interacción multimedia de audio y video de las aplicaciones a través de una conexión de red que utiliza mecanismos A2. También se escribieron módulos para varios códecs de video y audio y codificación de la información transmitida.

Como medio para la interacción remota con A2, se propone un servidor de acceso remoto VNC (lado izquierdo del diagrama).

A2 tiene la capacidad de intercambiar mensajes y configuraciones de elementos entre aplicaciones a través de la red a través de Propiedades. Propiedades es un conjunto de métodos y descripciones de objetos en formato XML para guardar la configuración de objetos. Las propiedades se pueden utilizar para instanciar objetos en A2. Tales capacidades se pueden comparar con la vinculación de interfaces como DCOM / SOAP en Windows NT , sistemas Windows NT 4.0 y el marco Java . .

Verificación formal basada en modelos

  1. Un modelo de módulo es, de hecho, una descripción formal en forma de máquina de estado de su actividad [2] [3] .
  2. Pruebas unitarias (las pruebas unitarias son una función integrada en Asset Oberon) [4] .
  3. La capacidad de construir un esquema general de un proyecto complejo [5] .

Detalles de configuración e implementación

Este sistema tiene muchas opciones (hasta el código ensamblador) en el archivo de configuración, que, de hecho, era el cargador [1] .

Las opciones de configuración adicionales más populares fueron TraceModules=1, ATADetect=legacy.

Historia

El proyecto Oberon fue iniciado por Niklaus Wirth en 1985. Los sistemas operativos basados ​​en el lenguaje Oberon fueron desarrollados por jóvenes científicos del Instituto Federal de Tecnología de Suiza. El proyecto A2 se puede dividir condicionalmente en 3 etapas (AOS (2003), Bluebottle (2005), A2 (2008)) [2] . Cada etapa está asociada a un cambio en los principales mantenedores y desarrolladores del sistema.

AOS

Históricamente, el primer sistema operativo de esta familia fue BlueBottle (Botella Azul). El nombre AOS se utilizó por primera vez en el contexto del sistema de archivos [3] .

botella azul

Debido a reclamos de marcas registradas, la próxima versión del sistema operativo se denominó oficialmente Bluebottle en 2005 [14] . Este sistema, con subprocesos y actividades, se ejecutaba directamente en el hardware de los sistemas monoprocesadores compatibles con Intel y el procesador StrongARM / Xscale, así como en los sistemas virtuales Macintosh QEMU , VMware y Virtual PC 4.0 ( solo Macintosh ) .

A2

Aplicaciones

y muchas otras aplicaciones

Compatibilidad

A2 está implementado actualmente para:

A2 también se puede ejecutar en máquinas virtuales separadas , como:

y sobre sistema operativo host Windows, Unix, Linux, Darwin

Véase también

Notas

  1. Thomas Martín Frey. Bluebottle: un marco multimedia y GUI seguro para subprocesos para Active Oberon. - Suiza, 2005. - S. 57-58 .
  2. @Kemet. Oberón ha muerto, ¡larga vida a Oberón! Parte 1. A algunos les gusta estar activos . Habrahabr . Habrahabr (27 de mayo de 2015). Fecha de acceso: 6 de enero de 2017. Archivado desde el original el 7 de enero de 2017.
  3. Página de inicio de SAGE . Fecha de acceso: 6 de enero de 2017. Archivado desde el original el 7 de enero de 2017.
  4. Yaroslav Románchenko. [Oberon Algún comportamiento extraño en A2]  (inglés) . Fecha de acceso: 6 de enero de 2017. Archivado desde el original el 4 de marzo de 2016.
  5. Alejandro Ilín. [Oberon  Importa jerarquías de módulos de visualización] . Fecha de acceso: 6 de enero de 2017. Archivado desde el original el 4 de marzo de 2016.
  6. ETH Zurich - Computer Science - Native Systems Group J. Gutknecht (enlace no disponible) . Consultado el 24 de julio de 2013. Archivado desde el original el 19 de abril de 2012. 

Enlaces