A2 | |
---|---|
Udvikler | HTS Zürich |
OS familie | AOS |
Understøttede platforme | x86 , ARM , x86_64 og Cell |
Kernel type | Modulær mikrokerne med delt hukommelse |
Interface | grafisk, skalerbar |
Licens | BSD-lignende , separate moduler, applikationer og softwarerammer distribueret under andre gratis licenser |
Stat | Faktiske |
Kildekodelager | svn.inf.ethz.ch/svn/lect… |
Internet side | wiki.oberon.org/ao/a2/ |
A2 (tidligere Bluebottle ) er et modulært objektorienteret operativsystem med automatisk hukommelsesstyring og et blødt realtidsundersystem, udviklet hos ETH Zürich , baseret på Active Object System-kernen - en videreudvikling af ETH Oberon -systemet . Det giver et kompakt runtime-miljø for det aktive Oberon -sprog , som tillader udvikling af effektive systemer baseret på aktive objekter, der kører direkte på hardwaren uden en mellemliggende fortolker eller virtuel maskine. A2 indeholder alle de værktøjer, du har brug for til udvikling - compiler, IDE , formulareditor, profiler, XML-editor, assembler og så videre.
Et aktivt objekt i A2 er repræsenteret som en kombination af begrebet "objekt", traditionelt for moderne OOP -sprog, og en "aktivitet" (tråd), der kører i sammenhæng med dette objekt. I denne implementering af Active Oberon kan et aktivt objekt ud over sin aktivitet også have aktiviteter som forfaderobjekter.
Andre forskelle mellem A2 og mere almindelige operativsystemer er dets stramme design, en brugergrænseflade, der understøtter "peg og klik"-metaforen til at udføre kommandoer direkte fra tekst i ethvert vindue, svarende til hyperlinks i en webbrowser. Typesikkert programmeringssprog, automatisk hukommelseshåndtering, skraldindsamling, et sæt primitiver til synkronisering af adgang til interne elementer i objekter fra mange konkurrerende tråde (aktiviteter).
Over kernelaget giver en fleksibel samling af moduler almindelige abstraktioner for enheder og tjenester, såsom filsystemer , brugergrænseflader , netværksforbindelser, codecs og så videre.
Størstedelen af kildekoden til den originale Oberon gik ind i A2-projektet med præfikset "Oberon." (midt i diagrammet) . Med hensyn til funktionalitet svarer denne del af koden til funktionerne i MS-DOS med en teksteditor på skærmen . .
Sideløbende med AOS (A2) arbejdede eleverne på Native Oberon (NO) systemet. Følgende grafikmoduler er blevet oprettet i NO: GD54xx.Display.Mod, S3C805.Display.Mod, DisplayLinear.Mod, DisplayMach64.Mod, DisplayVGA4.Mod, Display3.Mod, DisplayGTF.Mod ( INGEN displaymodulhierarki ). Der er foretaget ændringer i Active Oberon (A2) miljøet og operativsystemet. A2 understøtter ikke en lang række forskellige hardware, da det ikke er muligt for en lille gruppe udviklere at skrive moduler til de fleste videoenheder under oprettelsen af A2 [1] .
I A2 er muligheden for at arbejde med grafiske interaktive objekter - Gadgets (øverste midterste del af diagrammet) bevaret. Funktioner tæt på Windows 3.x , da begge operativsystemer delte den samme prototype fra Xerox PARC , hvor Wirth arbejdede to gange i samme år (1976-1977 og 1984-1985) .
A2-konceptet handler om interaktive og uafhængige grafiske vinduer og elementer i vinduer, der hver kører på en separat tråd med sin egen tilstandsmaskine eller aktivitetstråd (højre side af diagrammet). Alle modulnavne i denne del af systemet begynder med "WM", som er en forkortelse for "Window Manager". Denne grænseflade svarer funktionelt til de grafiske vinduesadministratorer i Unix/Linux -systemet. .
Yderligere udvikling af systemet fandt sted i forbedringen af applikationer til audio og video multimedieinteraktion af applikationer gennem en netværksforbindelse ved hjælp af A2-mekanismer. Der blev også skrevet moduler til forskellige video- og lyd-codecs og kodning af transmitteret information.
Som et middel til fjerninteraktion med A2 foreslås en VNC -fjernadgangsserver (venstre side af diagrammet).
A2 har mulighed for at udveksle beskeder og elementindstillinger mellem applikationer over netværket via Egenskaber. Egenskaber er et sæt metoder og objektbeskrivelser i XML-format til lagring af objektkonfiguration. Egenskaber kan bruges til at instantiere objekter i A2. Sådanne muligheder kan sammenlignes med sammenkædning af grænseflader som DCOM / SOAP i Windows NT , Windows NT 4.0 -systemer og Java - rammerne .
Dette system har mange muligheder (op til monteringskode) i konfigurationsfilen, som faktisk var indlæseren [1] .
De mest populære yderligere konfigurationsmuligheder var TraceModules=1, ATADetect=legacy.
Oberon-projektet blev startet af Niklaus Wirth i 1985. Operativsystemer baseret på Oberon-sproget blev udviklet af unge videnskabsmænd fra Federal Institute of Technology i Schweiz. A2-projektet kan betinget opdeles i 3 faser (AOS (2003), Bluebottle (2005), A2 (2008)) [2] . Hver fase er forbundet med en ændring i de vigtigste vedligeholdere og udviklere af systemet.
Historisk set var det første operativsystem i denne familie BlueBottle (Blue Bottle). Navnet AOS blev først brugt i forbindelse med filsystemet [3] .
På grund af varemærkekrav blev den næste version af operativsystemet officielt navngivet Bluebottle i 2005 [14] . Dette system, med tråde og aktiviteter, kørte direkte på hardwaren i Intel-kompatible uniprocessor-systemer og StrongARM / XScale-processoren , såvel som på QEMU , VMware og Virtual PC 4.0 ( kun Macintosh ) Macintosh virtuelle systemer .
og mange andre applikationer
A2 er i øjeblikket implementeret for:
A2 kan også køres på separate virtuelle maskiner , såsom:
og over host OS Windows, Unix, Linux, Darwin