Plan 9
Plan 9 | ||||
---|---|---|---|---|
rio, de gebruikersinterface van Plan 9
| ||||
Ontwikkelaar(s) | Bell Labs | |||
OS-familie | Unix(geen variant, wel afgeleid) | |||
Voorganger | Unix | |||
Bronmodel | Opensource | |||
Uitgebracht | 1992 | |||
Recentste uitgave | 4e (2015) | |||
Kerneltype | Hybride kernel | |||
Programmeertaal | C, Assembleertaal, Shell script | |||
Licentie(s) | MIT | |||
Status | Inactief | |||
Website | http://p9f.org/ | |||
|
Plan 9 from Bell Labsis een gedistribueerdbesturingssysteem,ontwikkeld doorBell LabsinNew Jersey,als opvolger vanUNIX.De eerste versies van Plan 9 werden ontworpen door (onder anderen)Ken Thompson,Rob Pike, Dave Presotto, and Phil Winterbottom.[1]De mascotte van Plan 9 heet Glenda[2],en de naam is afgeleid van decultfilmPlan 9 from Outer Space.
Het doel van Plan 9 is om een netwerk van verschillende computers, te laten functioneren als één samenhangend systeem.
Architectuur
[bewerken|brontekst bewerken]In grote lijnen bestaat Plan 9 uit eenkernel,en een collectieservers,die zichzelf presenteren alsbestandssystemenbinnen een namespace[3].Deze servers draaien niet noodzakelijk op dezelfde machine als de kernel. Maar kunnen via het 9P[4]protocolhun functionaliteit aanbieden. Elk proces heeft zijn eigen bewerkbare namespace, hierdoor kunnen twee processen totaal verschillende inzichten op het systeem hebben.
Een primair voorbeeld van een 9P server: Cwfs[5].Deze server koppelt een opslag medium (zoals eenharde schijf,ofssd), en stelt de data (via 9P) beschikbaar als eenbestandssysteem.Hierdoor kunnen bestanden persistent gelezen en geschreven worden.
Devices
[bewerken|brontekst bewerken]De Plan 9kernelbiedt toegang tot een aantal virtuele apparaten (devices).[6]Sommige devices bieden toegang tot eenfysiek randapparaat,zoals eenharde schijf,oftoetsenbord;andere bieden systeem functionaliteit aan, zoals het beheren vanprocessen[7],ennetwerken[8].Ook deze devices presenteren zichzelf alsbestandssystemen.
Het is ook mogelijk om deze devices tussencomputerste importeren en exporteren. Hierdoor kunnenrandapparaten,en functionaliteiten; van een computer, gebruikt worden op de andere computer, en vice versa.
Union directories
[bewerken|brontekst bewerken]Met zogenoemdeunion directorieskunnen verschillende delen van de namespace, op een transparante manier, aan elkaar gebonden worden.[9]
Compilers
[bewerken|brontekst bewerken]Plan 9 is primair geschreven in een dialect vanC,die standaard meegeleverd wordt. Het is ook mogelijk eenGocompilerte verkrijgen[10];omdat twee van de origineleGoauteurs (Ken Thompsonen Rob Pike) ook de mede-auteurs zijn van Plan 9.
Versies
[bewerken|brontekst bewerken]Plan 9 heeft vier officiële uitgaven gehad. Deze zijn sinds maart 2021 opnieuw gelicenseerd onder deopensourcelicentie vanMIT.Deze versies zijnhierte verkrijgen.
Editie | Jaartal |
---|---|
1e | 1992 |
2e | 1995 |
3e | 2000 |
4e | 2002 |
4e, Finale | 2015 |
Distributies & Varianten
[bewerken|brontekst bewerken]Plan 9 heeft een aantal distributies en varianten die actief onderhouden worden.
Compatibiliteit met UNIX
[bewerken|brontekst bewerken]Hoewel Plan 9 voortborduurt op concepten uit UNIX, is het geen UNIX variant. Plan 9 kan echter wel eenPOSIX-omgeving simuleren.
Bronnen
[bewerken|brontekst bewerken]- ↑(en)Plan 9 from Bell Labs: Overview.
- ↑Glenda, the Plan 9 Bunny.
- ↑(en)The Use of Name Spaces in Plan 9.
- ↑(en)Introduction to the Plan 9 File Protocol, 9P.
- ↑(en)Cwfs: Cached–worm file server.
- ↑(en)Intro: Introduction to the Plan 9 devices.
- ↑(en)Proc: Running processes.
- ↑(en)Network protocols over IP.
- ↑(en)Bind, mount, unmount: Change name space.
- ↑(en)9legacy: Downloads.