HelenOS | |
---|---|
OS-familjen | microkernel multiserver operativsystem |
Källa | gratis mjukvara |
Senaste testversionen |
|
Plattformar som stöds | IA-32 , AMD64 , IA-64 , ARM , MIPS , PowerPC , SPARC V9 |
Typ av kärna | mikrokärna |
Licens | BSD |
Källkodsförråd | github.com/HelenOS/helen... |
Hemsida | helenos.org |
HelenOS är ett operativsystem baserat på en mikrokärna med flera servrar [3] [4] [5] [6] . HelenOS -källkoden är skriven i C och publicerad under BSD-licensen .
Mikrokärnan hanterar multitasking , minneshantering och kommunikation mellan processer . Den tillhandahåller också exekveringstrådar på kärnnivå och stöder multi-core ( SMP ).
På ett typiskt mikrokärnesätt är implementeringar av filsystem, nätverk, enhetsdrivrutiner och grafiska användargränssnitt isolerade från varandra. De är en uppsättning komponenter som körs i användarutrymmet och kommunicerar via en meddelandebuss.
Varje process (kallad en uppgift ) kan använda flera exekveringstrådar ( förebyggande schemalagda av mikrokärnan). Varje tråd kan i sin tur bestå av flera fibrer som är schemalagda från användarutrymmet. Enhets- och filsystemdrivrutiner, såväl som andra systemtjänster, implementeras av en uppsättning användarutrymmesuppgifter ( servrar ) , som bildar multiserverstrukturen för HelenOS.
Uppgifter kommunicerar med hjälp av HelenOS IPC -mekanismen , som ger ett beständigt anslutningsläge med asynkron överföring . Den kan användas för att skicka små meddelanden med fast storlek, block av byte eller för att upprätta ett delat läge för en bit minne. Meddelanden vidarebefordras utan att kopiera stora data och utan minnesmappning till adressutrymmet för den mellanliggande uppgiften.
HelenOS-utvecklingen drivs av utvecklargemenskapen. Den består av ett litet kärnteam, mestadels personal och studenter från fakulteten för matematik och fysik vid Charles University i Prag , och ett antal medarbetare från hela världen. Under 2011, 2012 och 2014 deltog HelenOS i initiativet Google Summer of Code som arrangör av sommarstudentprojekt. [7] [8] Under 2013 deltog projektet även i ESA Summer of Code in Space 2013-programmet. [9]
HelenOS källkod distribueras under BSD-licensen , vissa tredjepartskomponenter är tillgängliga under GNU GPL . Båda licenserna är certifierade som fri programvara licenser , vilket gör HelenOS fri programvara .
HelenOS kan köras på flera processorarkitekturer, inklusive ARM , x86-64 , IA-32 , IA-64 ( Itanium ), MIPS , PowerPC (endast 32-bitars), SPARC V9 och RISC-V [10] . För var och en av arkitekturerna fanns det versioner av HelenOS som kördes på riktig hårdvara snarare än en arkitektursimulator .
HelenOS stöder PATA , SATA , USB-masslagring (USB Flash), USB HID (ingångsenheter), Atheros USB WiFi , flera Ethernet -nätverkskort , SoundBlaster 16 och Intel HDA -ljudchips , serieportar, tangentbord, möss och videoenhet i en enkel frame dot array ("framebuffer").
HelenOS används för forskning [11] [12] inom området mjukvarukomponenter och verifiering vid Prags universitet. Dessutom har HelenOS använts av studenter som en plattform för programvaruprojekt och masteruppsatser. [13]