A2 (sistem de operare)

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 27 martie 2015; controalele necesită 189 de modificări .
A2
Dezvoltator HTS Zurich
Familia OS AOS
Platforme acceptate x86 , ARM , x86_64 și Cell
Tipul de kernel Microkernel modular cu memorie partajată
Interfață grafic, scalabil
Licență Module, aplicații și cadre software separate asemănătoare BSD , distribuite sub alte licențe gratuite
Stat Real
Depozitul de cod sursă svn.inf.ethz.ch/svn/lect…
site web wiki.oberon.org/ao/a2/

A2 (fostul Bluebottle ) este un sistem de operare modular orientat pe obiecte cu management automat al memoriei și un subsistem soft în timp real, dezvoltat la ETH Zurich , bazat pe nucleul Active Object System - o dezvoltare ulterioară a sistemului ETH Oberon . Oferă un mediu de rulare compact pentru limbajul Active Oberon , care permite dezvoltarea unor sisteme eficiente bazate pe obiecte active care rulează direct pe hardware fără un interpret intermediar sau mașină virtuală. A2 conține toate instrumentele de care aveți nevoie pentru dezvoltare - compilator, IDE , editor de formulare, profiler, editor XML, asamblator și așa mai departe.

Un obiect activ în A2 este reprezentat ca o combinație a conceptului de „obiect” tradițional pentru limbajele OOP moderne și o „activitate” (thread) care rulează în contextul acestui obiect. În această implementare a Active Oberon, un obiect activ poate avea, pe lângă activitatea sa, și activitățile obiectelor strămoși.

Alte diferențe între A2 și sistemele de operare mai comune sunt designul său auster, o interfață de utilizator care acceptă metafora „point and click” pentru executarea comenzilor direct din text în orice fereastră, similar hyperlink-urilor dintr-un browser web. Limbajul de programare sigur de tip, gestionarea automată a memoriei, colectarea gunoiului, un set de primitive pentru sincronizarea accesului la elementele interne ale obiectelor din multe fire (activități) concurente.

Deasupra stratului de kernel , o colecție flexibilă de module oferă abstracții comune pentru dispozitive și servicii, cum ar fi sisteme de fișiere , interfețe cu utilizatorul , conexiuni de rețea, codecuri și așa mai departe.

Arhitectură

Ierarhia modulelor A2 și Active Oberon

Cea mai mare parte a codului sursă pentru Oberon original a intrat în proiectul A2 cu prefixul „Oberon”. (mijlocul graficului) . În ceea ce privește funcționalitatea, această parte a codului corespunde capacităților MS-DOS cu un editor de text pe ecran . .

În paralel cu AOS (A2), studenții au lucrat la sistemul Native Oberon (NO). Următoarele module grafice au fost create în NO: GD54xx.Display.Mod, S3C805.Display.Mod, DisplayLinear.Mod, DisplayMach64.Mod, DisplayVGA4.Mod, Display3.Mod, DisplayGTF.Mod ( NU ierarhie module de afișare ). Au fost aduse modificări mediului și sistemului de operare Active Oberon (A2). A2 nu acceptă o mare varietate de hardware diferit, deoarece nu este posibil ca un grup mic de dezvoltatori să scrie module pentru majoritatea dispozitivelor video în timpul creării lui A2 [1] .

În A2, s-a păstrat capacitatea de a lucra cu obiecte grafice interactive - Gadgets (partea superioară-mijloc a diagramei). Capabilități apropiate de Windows 3.x , deoarece ambele sisteme de operare au împărtășit același prototip de la Xerox PARC , unde Wirth a lucrat de două ori în același an (1976–1977 și 1984–1985) .

Conceptul A2 este despre ferestre grafice interactive și independente și elemente din ferestre, fiecare rulând pe un fir separat cu propria sa mașină de stare sau fir de activitate (partea dreaptă a diagramei). Toate numele modulelor din această parte a sistemului încep cu „WM”, care este prescurtarea pentru „Window Manager”. Această interfață corespunde funcțional managerilor de ferestre grafice ale sistemului Unix/Linux . .

Dezvoltarea ulterioară a sistemului a avut loc în îmbunătățirea aplicațiilor pentru interacțiunea multimedia audio și video a aplicațiilor printr-o conexiune la rețea folosind mecanisme A2. Au fost scrise și module pentru diverse codecuri video și audio și codificarea informațiilor transmise.

Ca mijloc de interacțiune la distanță cu A2, este propus un server de acces la distanță VNC (partea stângă a diagramei).

A2 are capacitatea de a schimba mesaje și setări de articole între aplicații prin intermediul rețelei prin Proprietăți. Proprietăți este un set de metode și descrieri de obiecte în format XML pentru salvarea configurației obiectului. Proprietățile pot fi folosite pentru a instanția obiecte în A2. Astfel de capabilități pot fi comparate cu conectarea interfețelor precum DCOM / SOAP în sistemele Windows NT , Windows NT 4.0 și cadrul Java . .

Verificare formală bazată pe model

  1. Un model de modul este, de fapt, o descriere formală sub forma unei mașini de stări a activității sale [2] [3] .
  2. Testarea unitară (Testarea unitară este o caracteristică încorporată în Asset Oberon) [4] .
  3. Capacitatea de a construi o schemă generală a unui proiect complex [5] .

Detalii de configurare și implementare

Acest sistem are multe opțiuni (până la codul de asamblare) în fișierul de configurare, care, de fapt, era încărcătorul [1] .

Cele mai populare opțiuni de configurare suplimentare au fost TraceModules=1, ATAdetect=legacy.

Istorie

Proiectul Oberon a fost început de Niklaus Wirth în 1985. Sistemele de operare bazate pe limba Oberon au fost dezvoltate de tineri oameni de știință de la Institutul Federal de Tehnologie din Elveția. Proiectul A2 poate fi împărțit condiționat în 3 etape (AOS (2003), Bluebottle (2005), A2 (2008)) [2] . Fiecare etapă este asociată cu o schimbare a principalilor menținători și dezvoltatori ai sistemului.

AOS

Din punct de vedere istoric, primul sistem de operare al acestei familii a fost BlueBottle (Blue Bottle). Numele AOS a fost folosit pentru prima dată în contextul sistemului de fișiere [3] .

Bluebottle

Din cauza revendicărilor privind mărcile comerciale, următoarea versiune a sistemului de operare a fost numită oficial Bluebottle în 2005 [14] . Acest sistem, cu fire și activități, rula direct pe hardware-ul sistemelor uniprocesoare compatibile cu Intel și al procesorului StrongARM / XScale , precum și pe sistemele virtuale Macintosh QEMU , VMware și Virtual PC 4.0 ( numai pentru Macintosh ) .

A2

Aplicații

și multe alte aplicații

Compatibilitate

A2 este implementat în prezent pentru:

A2 poate fi rulat și pe mașini virtuale separate , cum ar fi:

și peste sistemul de operare gazdă Windows, Unix, Linux, Darwin

Vezi și

Note

  1. Thomas Martin Frey. Bluebottle: Un cadru multimedia și interfață grafică sigură pentru fire pentru Active Oberon. - Elveţia, 2005. - S. 57-58 .
  2. @Kemet. Oberon a murit, trăiască Oberon! Partea 1. Unii le place să fie activi . Habrahabr . Habrahabr (27 mai 2015). Data accesului: 6 ianuarie 2017. Arhivat din original pe 7 ianuarie 2017.
  3. Pagina de pornire a lui SAGE . Data accesului: 6 ianuarie 2017. Arhivat din original pe 7 ianuarie 2017.
  4. Iaroslav Romancenko. [Oberon Un comportament ciudat în A2]  (engleză) . Data accesului: 6 ianuarie 2017. Arhivat din original pe 4 martie 2016.
  5. Alexandru Ilin. [Oberon  Import ierarhii ale modulelor de afișare] . Data accesului: 6 ianuarie 2017. Arhivat din original pe 4 martie 2016.
  6. ETH Zurich - Computer Science - Native Systems Group J. Gutknecht (link indisponibil) . Consultat la 24 iulie 2013. Arhivat din original la 19 aprilie 2012. 

Link -uri