Plan 9

Plan 9 from Bell Labs is een gedistribueerd besturingssysteem, ontwikkeld door Bell Labs in New Jersey, als opvolger van UNIX. De eerste versies van Plan 9 werd…

Plan 9
Plan 9
Logo
rio, de gebruikersinterface van 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 stabiele uitgave 4e 
(2015)
Kerneltype Hybride kernel
Programmeertaal C, Assembleertaal, Shell script
Licentie(s) MIT
Status Inactief
Versiebeheer Officiële broncode
Website http://p9f.org/
Portaal  Portaalicoon   Informatica

Plan 9 from Bell Labs is een gedistribueerd besturingssysteem, ontwikkeld door Bell Labs in New Jersey, als opvolger van UNIX. 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 de cultfilm Plan 9 from Outer Space.

Het doel van Plan 9 is om een netwerk van verschillende computers, te laten functioneren als één samenhangend systeem.

Architectuur

In grote lijnen bestaat Plan 9 uit een kernel, en een collectie servers, die zichzelf presenteren als bestandssystemen binnen een namespace[3]. Deze servers draaien niet noodzakelijk op dezelfde machine als de kernel. Maar kunnen via het 9P[4] protocol hun 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 een harde schijf, of ssd), en stelt de data (via 9P) beschikbaar als een bestandssysteem. Hierdoor kunnen bestanden persistent gelezen en geschreven worden.

Devices

De Plan 9 kernel biedt toegang tot een aantal virtuele apparaten (devices).[6] Sommige devices bieden toegang tot een fysiek randapparaat, zoals een harde schijf, of toetsenbord; andere bieden systeem functionaliteit aan, zoals het beheren van processen[7], en netwerken[8]. Ook deze devices presenteren zichzelf als bestandssystemen.

Het is ook mogelijk om deze devices tussen computers te importeren en exporteren. Hierdoor kunnen randapparaten, en functionaliteiten; van een computer, gebruikt worden op de andere computer, en vice versa.

Union directories

Met zogenoemde union directories kunnen verschillende delen van de namespace, op een transparante manier, aan elkaar gebonden worden.[9]

Compilers

Plan 9 is primair geschreven in een dialect van C, die standaard meegeleverd wordt. Het is ook mogelijk een Go compiler te verkrijgen[10]; omdat twee van de originele Go auteurs (Ken Thompson en Rob Pike) ook de mede-auteurs zijn van Plan 9.

Versies

Plan 9 heeft vier officiële uitgaven gehad. Deze zijn sinds maart 2021 opnieuw gelicenseerd onder de opensource licentie van MIT. Deze versies zijn hier te verkrijgen.

Uitgaven
Editie Jaartal
1e 1992
2e 1995
3e 2000
4e 2002
4e, Finale 2015

Distributies & Varianten

Plan 9 heeft een aantal distributies en varianten die actief onderhouden worden.

Compatibiliteit met UNIX

Hoewel Plan 9 voortborduurt op concepten uit UNIX, is het geen UNIX variant. Plan 9 kan echter wel een POSIX-omgeving simuleren.

Bronnen

  1. (en) Plan 9 from Bell Labs: Overview.
  2. Glenda, the Plan 9 Bunny.
  3. (en) The Use of Name Spaces in Plan 9.
  4. (en) Introduction to the Plan 9 File Protocol, 9P.
  5. (en) Cwfs: Cached–worm file server.
  6. (en) Intro: Introduction to the Plan 9 devices.
  7. (en) Proc: Running processes.
  8. (en) Network protocols over IP.
  9. (en) Bind, mount, unmount: Change name space.
  10. (en) 9legacy: Downloads.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.