Ugrás a tartalomhoz

Plan 9 from Bell Labs

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
(Plan 9 szócikkből átirányítva)
Plan 9 from Bell Labs
Glenda, a Plan 9 nyuszi
Glenda, a Plan 9 nyuszi
FejlesztőBell Labs
Forráskódnyílt
OS-családUnix-szerű
Programozási nyelvC
Stabil verzióNegyedik kiadás (2002)
(napi fejlesztési pillanatképek)
Kernelhibrid
Felhasználói felületrio / rc
LicencLucent Public License Version 1.02
Státuszaktuális
WeboldalPlan 9 from Bell Labs

A Plan 9 a Bell Labs-tól egy elosztott operációs rendszer. Főleg egyetemek használják, illetve többen a szabadidejükben, de beágyazott rendszerként kereskedelmi termékekben is előfordul. A Bell Labs Computing Sciences Research Center részlege fejlesztette ki az 1980-as évek végétől kezdve. Az eredeti programozók Ken Thompson, Rob Pike, Dave Presotto, és Phil Winterbottom voltak, hozzájuk a 90-es évek elejétől a mai napig többen csatlakoztak. A legutóbbi negyedik kiadás 2002-ben készült el, azóta is folyamatosan fejlesztik.

Áttekintés

[szerkesztés]
Grafikus telepítés, rio felhasználói felületen

A Plan 9-et a Unix utódjának szánták. A teljes operációs rendszer és a rajta használt legtöbb alkalmazás fejlesztése tiszta lappal indult. Ezzel azt kívánták elérni, hogy a tervezési irányelvek maradéktalanul érvényesülhessenek, ne kelljen a korábbi technológiákkal való kompatibilitás miatt kompromisszumokat kötni. Idővel azonban biztosítottak egy Posix-kompatibilis API-t (APE - ANSI/POSIX Environment), és lemondtak az alkalmazások kizárólag Alef programozási nyelven történő fejlesztéséről (mára már az összes érintett alkalmazást a Plan 9 saját C nyelvjárásában újraírták).

A rendszer felépítése három elven alapszik:

  • Az erőforrásoknak nevük van, és fájlokként lehet hozzájuk férni egy hierarchikus fájlrendszerben.
  • Létrehoztak egy 9P nevű szabványos protokollt, az erőforrások eléréséhez.
  • A különböző szolgáltatások fájlhierarchiái egy saját névtérben vannak egyesítve, ezzel a Plan 9 munkaállomástól független környezetet biztosít a felhasználóknak.

A fejlesztés abban az időszakban kezdődött, amikor elterjedtek a növekvő teljesítményű mikroszámítógépek. Ezért a Plan 9-et a UNIX-szal ellentétben nem "buta" terminálokat kiszolgáló, nagy szerverekre tervezték, hanem kisebb gépek összekapcsolásából álló, elosztott rendszerekre ("felhő"). Ezek a gépek lehetnek fájlszerverek (a felhasználók adataival), CPU-szerverek (erőforrásokat szolgáltatnak, felhasználókat nem kezelnek), különálló autentikációs szerverek, illetve terminálok. Említést érdemel, hogy nincs mindenható rendszergazda, helyette dedikált felhasználók vannak, akiknek az adminisztratív jogosultságaik korlátozottak.

2003 júniusa óta a Plan 9 teljes forráskódja nyílt, melyre a Lucent Public License 1.02-es[1] verziójának feltételei vonatkoznak, mely az FSF állásfoglalása szerint szabad szoftver szerződésnek minősül, a GNU General Public License-szel pedig nem kompatibilis.[2] A Plan 9-re vonatkozó jogok a párizsi székhelyű francia Alcatel-Lucent tulajdonában vannak. A Plan 9 fejlesztési koncepcióján alapul, ennek a továbbfejlesztése a Bell Labs egy másik operációs rendszere, az Inferno.

A Plan 9 from Bell Labs elnevezés egy 1959-es alacsony költségvetésű sci-fi film címének átköltése: Plan 9 from Outer Space.[3]

Története

[szerkesztés]

Az első kiadás 1992-ben jelent meg, akkor még kizárólag egyetemek számára. Ebben már több fontos eleme megjelent a rendszernek, mint a sajátos kernel, ndb, sam (szövegszerkesztő), upas, alef, és Unicode támogatás. Az acme korai formája is helyet kapott benne, súgóként. CPU szerverként Sun SPARCstationt, SGI Power-t, és SGI Magnum-ot használtak, terminálként pedig NeXTstation-t és IBM kompatibilis PC-ket.

A második (kereskedelmi) kiadás 1995-ben volt az első nyilvános megjelenése a Plan 9-nek, könyv és CD-melléklet formájában. Megjelent benne az acme (sokoldalú szövegszerkesztő, fájlkezelő, és shell), és több kisebb segédalkalmazás. A megjelenéssel egy időben a fejlesztőcsapat a rendszer újraimplementálásán dolgozott „Brazil” néven. 1999-ben, a harmadik kiadás előestéjén a „Brazil” nevet visszaváltoztatták Plan 9-re.

A Lucent Technologies (ahová a Bell Labs-t időközben kiszervezték) nem látott anyagi lehetőségeket a Plan 9-ben, ezért a harmadik kiadás 2000 júniusában, immár az Interneten ingyen letölthető formában jelent meg. Bevezetett egy új grafikus illesztő eszközt, a draw-t, és egy új, programok közötti kommunikációt biztosító mechanizmust, a plumbing-ot. A kiadásban a wrap-pal egy új frissítés menedzser kapott helyet.

A 2002-es negyedik kiadással megjelent a 9P2000 protokoll (az eredeti 9P továbbfejlesztése), melyből biztonsági kiegészítőbe vitték ki az azonosítás és a kulcsok kezelését, mint a factotum és a secstore.[4] Valamint a kfs helyett bevezették a venti blokkos társzervert. A fossil, mely egy venti alapú fájlrendszer, illetve fájlrendszer-kiszolgáló, 2003 elején mutatkozott be. A felsorolt változtatások mellett felállítottak egy nyilvános fossil-szervert: sources.cs.bell-labs.com Archiválva 2008. szeptember 19-i dátummal a Wayback Machine-ben, mely az aktuális fájlhierarchiát szolgáltatja bármely, Internethez kapcsolódott Plan 9 rendszernek. A gyakori változtatások miatt a kliensek a replica nevű eszközt használják a forrásszerverrel történő szinkronizációhoz.

A Plan 9-ből számos technológiai újítás talált magának utat népszerű operációs rendszerekben, közülük talán a legfontosabb az UTF-8 Unicode karakterkészlet. A Linux kernelben és más UNIX-szerű rendszerekben implementálták a 9P protokollt, valamint az rfork-hoz hasonló rendszerhívásokat.

Jegyzetek

[szerkesztés]
  1. http://www.opensource.org/licenses/lucent1.02.php Lucent Public License Version 1.02
  2. http://www.fsf.org/licensing/licenses/ Licenses - Free Software Foundation
  3. Raymond, Eric: The Art of UNIX Programming. [2005. augusztus 18-i dátummal az eredetiből archiválva]. (Hozzáférés: 2007. május 7.)
  4. http://plan9.bell-labs.com/sys/doc/auth.html Archiválva 2007. március 2-i dátummal a Wayback Machine-ben Security in Plan 9

Kapcsolódó szócikkek

[szerkesztés]

További információk

[szerkesztés]