A2 (ранее Bluebottle) — модульная, объектно-ориентированная операционная система, с автоматическим управлением памятью и подсистемой мягкого реального времени, разрабатываемая в ETH Zurich, основанная на ядре Active Object System — дальнейшего развития системы Native Oberon). Она обеспечивает компактное окружение времени выполнения для языка Активный Оберон, который поддерживает активные объекты непосредственно, и позволяет разрабатывать эффективные системы, основанные на активных объектах, функционирующие непосредственно на железе.
Активный объект в A2 представляется как совокупность традиционного, для современных языков ООП, понятия «объект» и выполняющейся в контексте данного объекта «активности» (нити). В данной реализации Активного Оберона у активного объекта могут быть, кроме его активности, ещё и активности объектов-предков. Другими важными особенностями и отличиями A2 является чрезвычайно минималистичный, мощный и гибкий (на уровне языка программирования и исполняющей системы) набор примитивов синхронизации доступа к внутренним элементам объектов из множества конкурирующих потоков (активностей).
Над слоем ядра, гибкая коллекция модулей обеспечивает общие абстракции для устройств и сервисов, например, файловые системы, интерфейсы пользователя, сетевые подключения, кодеки и т. д.
Операционная система A2 разрабатывалась в несколько этапов. Исходный код из предыдущих проектов с минимальными изменениями попадал в новые проекты (Если судить только по названиям модулей (префиксы платформ "Oberon.", "WM", "AMD64.", "I386.", "Win32.", "Unix.", "ARM." "RPI", etc) и двух областей видимости для модулей "A2" и "Oberon"). Это наложило отпечаток на архитектуру OS.
Проект Oberon был запущен Никлаусом Виртом в 1985 году. Операционные системы на базе языка Oberon были разработаны молодыми учёными из Федерального института технологии в Швейцарии. Проект A2 условно можно разделить на 3 этапа (AOS (2003), Bluebottle(2005), A2 (2008)) [6]. Каждый этап связан со сметой основных мантейнеров и разработчиков системы.
Media Player (AVI, DivX, MPEG, MP3, OGG/Vorbis, WAV) Просмотр картинок (BMP, GIF, JPEG, PNG, SVG) TV - приёмник Programming Editor Web - сервер FTP - сервер Архиваторы (ZIP, TAR) CAPO - Computational Analysis Platform for Oberon OCTK - Oberon Computational Toolkit ETH Oberon для A2 VNC - сервер FDD - Графический визуализатор пространства-времени UDPChat - UDP чат месенджер Raycaster - игра WMColorLines - игра и множество других приложений
Активный объект в A2 представляется как совокупность традиционного, для современных языков ООП, понятия «объект» и выполняющейся в контексте данного объекта «активности» (нити). В данной реализации Активного Оберона у активного объекта могут быть, кроме его активности, ещё и активности объектов-предков. Другими важными особенностями и отличиями A2 является чрезвычайно минималистичный, мощный и гибкий (на уровне языка программирования и исполняющей системы) набор примитивов синхронизации доступа к внутренним элементам объектов из множества конкурирующих потоков (активностей).
Над слоем ядра, гибкая коллекция модулей обеспечивает общие абстракции для устройств и сервисов, например, файловые системы, интерфейсы пользователя, сетевые подключения, кодеки и т. д.
Media Player (AVI, DivX, MPEG, MP3, OGG/Vorbis, WAV)
Просмотр картинок (BMP, GIF, JPEG, PNG, SVG)
TV - приёмник
Programming Editor
Web - сервер
FTP - сервер
Архиваторы (ZIP, TAR)
CAPO - Computational Analysis Platform for Oberon
OCTK - Oberon Computational Toolkit
ETH Oberon для A2
VNC - сервер
FDD - Графический визуализатор пространства-времени
UDPChat - UDP чат месенджер
Raycaster - игра
WMColorLines - игра
и множество других приложений