Plan 9 | |
---|---|
Kehittäjä | Bell Labs |
Ohjelmointikielet | C[1][2][3] |
Julkaistu | 1992 |
Viimeisin vakaa versio | |
Suoritintuki | ARM, x86, x86-64, MIPS, Alpha, SPARC, PowerPC |
Käyttöliittymä | rio / rc |
Lähdekoodimalli | avoin lähdekoodi |
Lisenssi | GPLv2 |
Aiheesta muualla | |
Verkkosivusto |
Plan 9 on Bell Labsin kehittämä hajautettu käyttöjärjestelmä, jonka kehitys aloitettiin 1980-luvun lopulla.[4] Alkuperäiset suunnittelijat ja kehittäjät ovat Ken Thompson, Rob Pike, Dave Presotto, ja Phil Winterbottom.[4]
Käyttöjärjestelmän kehittäjiä ovat useat samat henkilöt jotka kehittivät Unix-käyttöjärjestelmän.[4] Käyttöjärjestelmä on kehitetty tutkimuskäyttöön.[4]
Ensimmäinen julkaisu toimitettiin vuonna 1992 yliopistoille.[4] Toinen julkaisu vuonna 1995 oli saatavilla kaupallisen lisenssin alla.[4] Kolmas julkaisu vuonna 2000 on avoimen lähdekoodin lisenssillä.[4] Neljäs julkaisu vuonna 2002 on uudella vapaan ohjelmiston lisenssillä.[4]
Helmikuussa 2014 käyttöjärjestelmä on julkaistu uudelleen GNU GPLv2 -lisenssillä.[5]
Maaliskuussa 2021 Bell Labsin omistaja Nokia siirsi tekijänoikeudet Plan 9 Foundationille.[6] Siirron myötä lähdekoodit tulivat MIT-lisenssille.[7]
Käyttöjärjestelmä tukee ARM, x86, x86-64, MIPS, Alpha, SPARC ja PowerPC suorittimia.[1][4]
Myös NeXTstation (Motorola 68000 -sarja) ja BeBox tietokoneita on tuettu varhaisissa versioissa.[4][8][9]
9P protokolla on kehitetty vähentämään erikoistarkoitukseen tehtyjä ohjelmointirajapintoja.
9P protokolla tarjoaa useimmat ominaisuudet tiedostojärjestelmän kaltaisena rajapintana palvelin- ja asiakassovelluksien välillä.[1]
Protokolla mahdollistaa tiedostojärjestelmien etäkäytön Network File Systemin (NFS) tapaan (ks. hajautettu levyjärjestelmä).[10]
Linux-ydin tukee protokollaa.[11][10]
Protokollan määritelmästä on luonnos sen standardoimiseksi.[12]
Yksi Plan 9 ominaisuuksista on tiedostojärjestelmä, joka sallii muodostaa yhdistelmähakemistoja, joissa saman hakemiston alla näkyy käyttäjälle useiden muiden sijaintien sisältö.
Linux sisältää nykyään vastaavan mekanismin nimellä overlayfs.[13]
Nimiavaruudet (engl. namespace) mahdollistavat käyttäjäkohtaiset näkymät tiedostojärjestelmään.[1]
Vastaavanlainen ominaisuus on lisätty Linux ytimeen versiossa 3.8 (ks. Linux-nimiavaruudet).[14]
Fossil on Plan 9:lle tehty tiedostojen arkistopalvelin, joka tyypillisesti pitää perinteistä tiedostojärjestelmää paikallisella levyllä ja säännöllisesti arkistoi tilannekuvia Venti-palvelimelle.[15]
Käyttöjärjestelmä käyttää kauttaaltaan Unicoden UTF-8 merkistökoodausta, joka kehitettiin Plan 9:ää varten.[4][16][17]
Plan 9 kehitettiin käytettäväksi graafisella käyttöliittymällä.
Käyttöliittymänä toimii rio ikkunointijärjestelmä, joka korvasi aikaisemman 8½ ikkunointijärjestelmän.[1]
Ikkunointijärjestelmän on toteutettava yhtä aikaa kolmea asiaa ilmeisimpien lisäksi:[18]
Rio on epätavallinen ikkunointijärjestelmien keskuudessa koska se on toteutettu tiedostopalvelimena.[18] Plan 9:ssä lähes kaikki on tiedostopalveluina tai ainakin esitetty sellaisena.[18]
Plan 9 on ohjelmoitu C-kielen muunnoksella, jossa on eräitä eroavaisuuksia ANSI C -standardiin verrattuna.[2][3]
Osa Plan 9:stä on ohjelmoitu C-kielen kaltaisella rinnakkaisohjelmointiin tarkoitetulla Alef -kielellä. Alefin käyttö on kuitenkin jäänyt vähäiseksi vuoden 1995 toisen julkaisun jälkeen.[19][20]
Plan 9:n "everything is a file" -konseptia on kritisoitu koska tyyppijärjestelmä on ajonaikainen eikä helposti määriteltävissä tai dokumentoitavissa.[21]