A2 | |
---|---|
Utvecklaren | HTS Zürich |
OS-familjen | AOS |
Plattformar som stöds | x86 , ARM , x86_64 och Cell |
Typ av kärna | Modulär mikrokärna med delat minne |
Gränssnitt | grafisk, skalbar |
Licens | BSD-liknande , separata moduler, applikationer och mjukvaruramverk distribuerade under andra gratislicenser |
stat | Faktisk |
Källkodsförråd | svn.inf.ethz.ch/svn/lect... |
Hemsida | wiki.oberon.org/ao/a2/ |
A2 (tidigare Bluebottle ) är ett modulärt objektorienterat operativsystem med automatisk minneshantering och ett mjukt realtidsundersystem, utvecklat vid ETH Zürich , baserat på Active Object System-kärnan - en vidareutveckling av ETH Oberon- systemet . Det ger en kompakt runtime-miljö för Active Oberon- språket , vilket möjliggör utveckling av effektiva system baserade på aktiva objekt som körs direkt på hårdvaran utan en mellanliggande tolk eller virtuell maskin. A2 innehåller alla verktyg du behöver för utveckling - kompilator, IDE , formulärredigerare, profilerare, XML-redigerare, assembler och så vidare.
Ett aktivt objekt i A2 representeras som en kombination av konceptet "objekt" som är traditionellt för moderna OOP- språk och en "aktivitet" (tråd) som körs i sammanhanget för detta objekt. I denna implementering av Active Oberon kan ett aktivt objekt, utöver sin aktivitet, även ha aktiviteter som förfäderobjekt.
Andra skillnader mellan A2 och mer vanliga operativsystem är dess strama design, ett användargränssnitt som stöder "peka och klicka"-metaforen för att utföra kommandon direkt från text i vilket fönster som helst, liknande hyperlänkar i en webbläsare. Typsäkert programmeringsspråk, automatisk minneshantering, sophämtning, en uppsättning primitiver för att synkronisera åtkomst till interna element i objekt från många konkurrerande trådar (aktiviteter).
Ovanför kärnlagret tillhandahåller en flexibel samling moduler vanliga abstraktioner för enheter och tjänster, såsom filsystem , användargränssnitt , nätverksanslutningar, codecs och så vidare.
Huvuddelen av källkoden för den ursprungliga Oberon gick in i A2-projektet med prefixet "Oberon." (mitten av diagrammet) . När det gäller funktionalitet motsvarar denna del av koden funktionerna i MS-DOS med en textredigerare på skärmen . .
Parallellt med AOS (A2) arbetade eleverna med systemet Native Oberon (NO). Följande grafikmoduler har skapats i NO: GD54xx.Display.Mod, S3C805.Display.Mod, DisplayLinear.Mod, DisplayMach64.Mod, DisplayVGA4.Mod, Display3.Mod, DisplayGTF.Mod (INGEN displaymodulhierarki ) . Ändringar har gjorts i Active Oberon (A2) miljö och operativsystem. A2 stöder inte en mängd olika hårdvara, eftersom det inte är möjligt för en liten grupp utvecklare att skriva moduler för de flesta videoenheter under skapandet av A2 [1] .
I A2 har möjligheten att arbeta med grafiska interaktiva objekt - Gadgets (övre mitten av diagrammet) bevarats. Funktioner nära Windows 3.x , eftersom båda operativsystemen delade samma prototyp från Xerox PARC , där Wirth arbetade två gånger samma år (1976–1977 och 1984–1985) .
A2-konceptet handlar om interaktiva och oberoende grafiska fönster och element i fönster, som vart och ett körs på en separat tråd med sin egen tillståndsmaskin eller aktivitetstråd (höger sida av diagrammet). Alla modulnamn i denna del av systemet börjar med "WM", vilket är en förkortning för "Window Manager". Detta gränssnitt motsvarar funktionellt de grafiska fönsterhanterarna i Unix/Linux- systemet. .
Ytterligare utveckling av systemet skedde i förbättringen av applikationer för audio- och video-multimediainteraktion av applikationer genom en nätverksanslutning med hjälp av A2-mekanismer. Moduler för olika video- och ljudkodekar och kodning av överförd information skrevs också.
Som ett sätt för fjärrinteraktion med A2 föreslås en VNC fjärråtkomstserver (vänster sida av diagrammet).
A2 har möjlighet att utbyta meddelanden och objektinställningar mellan applikationer över nätverket via egenskaper. Egenskaper är en uppsättning metoder och objektbeskrivningar i XML-format för att spara objektkonfiguration. Egenskaper kan användas för att instansiera objekt i A2. Sådana möjligheter kan jämföras med länkning av gränssnitt som DCOM / SOAP i Windows NT , Windows NT 4.0- system och Java -ramverket .
Detta system har många alternativ (upp till monteringskod) i konfigurationsfilen, som faktiskt var laddaren [1] .
De mest populära ytterligare konfigurationsalternativen var TraceModules=1, ATADetect=legacy.
Oberon-projektet startades av Niklaus Wirth 1985. Operativsystem baserade på Oberon-språket utvecklades av unga forskare från Federal Institute of Technology i Schweiz. A2-projektet kan villkorligt delas upp i 3 etapper (AOS (2003), Bluebottle (2005), A2 (2008)) [2] . Varje steg är associerat med en förändring av de viktigaste underhållarna och utvecklarna av systemet.
Historiskt sett var det första operativsystemet i denna familj BlueBottle (Blue Bottle). Namnet AOS användes först i kontexten av filsystemet [3] .
På grund av varumärkesanspråk fick nästa version av OS officiellt namnet Bluebottle 2005 [14] . Detta system, med trådar och aktiviteter, kördes direkt på hårdvaran i Intel-kompatibla enprocessorsystem och StrongARM / XScale-processorn , såväl som på QEMU , VMware och Virtual PC 4.0 ( endast Macintosh ) Macintosh virtuella system .
och många andra applikationer
A2 implementeras för närvarande för:
A2 kan också köras på separata virtuella maskiner , till exempel:
och över värd OS Windows, Unix, Linux, Darwin