Infern (sistem de operare)
Iad sistem de operare | |
---|---|
Dezvoltator | Laboratoarele Bell / New Life Holdings |
Familie | Evoluția Unix |
Eliberarea inițială | Inferno Beta (1996 | )
Lansare curentă | Ediția a patra (28 septembrie 2015 | )
Tipul de nucleu | Mașină virtuală |
Platforme acceptate | ARM , PA-RISC , MIPS , PowerPC , SPARC , x86 |
Tipul licenței | Software gratuit |
Licență | GPL / LGPL / MIT |
Etapă de dezvoltare | Grajd |
Predecesor | Planul 9 |
Site-ul web | www.vitanuova.com/inferno/ |
Inferno este un sistem de operare care permite crearea și suportul serviciilor distribuite. Numele sistemului de operare și al programelor asociate acestuia, precum și al companiei care îl produce, Vita Nuova Holdings , a fost inspirat din operele literare ale lui Dante Alighieri , în special Divina Comedie .
Inferno poate fi rulat găzduit pe o varietate de sisteme de operare sau în mod nativ pe o gamă bine definită de arhitecturi hardware. În fiecare dintre aceste configurații, sistemul de operare interacționează cu aplicațiile sale fără nicio diferență.
Protocolul de comunicație numit Styx este aplicat uniform pentru accesarea resurselor, indiferent dacă este la distanță sau locală. A patra ediție a Inferno include o revizuire a lui Styx, care este practic identică cu cea mai recentă versiune a protocolului 9P Plan 9 , 9P2000 .
Aplicațiile sunt scrise în limbajul de programare Limbo de tip sigur , a cărui reprezentare binară este identică pe toate platformele și poate fi rulată într-o mașină virtuală utilizând tehnici de compilare just-in-time .
Principii de proiectare
Prima versiune a Inferno a fost făcută în 1995 de către unii membri ai secțiunii de cercetare a computerelor din Bell Labs pentru a aduce unele elemente ale Planului 9 către alte sisteme de operare. Inferno, la fel ca Planul 9, este un sistem de operare distribuit bazat pe trei principii fundamentale derivate din acesta:
- Resursele sunt fișiere: toate resursele sunt reprezentate de fișiere, plasate într-un sistem de fișiere ierarhic ;
- Spațiu de nume: viziunea rețelei de către o aplicație este aceea a unui spațiu de nume unic și coerent care arată ca un sistem de fișiere ierarhic, dar care poate corespunde unor resurse distincte fizic, fie că sunt locale sau la distanță;
- Protocol de comunicare standard: un protocol standard, numit Styx, este utilizat pentru a accesa toate resursele, atât locale, cât și la distanță.
Relațiile cu Planul 9
Inferno și Plan 9 au în comun faptul că provin din versiunea stabilă a Planului 9 lansată în 1996. Amândoi împărtășesc aceleași principii de proiectare, cu unele diferențe:
Planul 9 | Iad | |
---|---|---|
Nivel utilizator | Rulează codul nativ, majoritatea scris în C , cu o mică parte în asamblare | Acesta rulează printr-un interpret de bytecode sau un compilator just-in-time numit Dis, scris aproape în întregime în Limbo |
Nucleu | Kernel hibrid | Vechiul kernel Plan 9, modificat: include o mașină virtuală |
Modul de execuție a nucleului | Comutați de la modul utilizator (programe) la modul supervizor (nucleu) | Nu părăsește niciodată modul supervizor (kernel), ci oferă protecție pentru programele care rulează printr-o mașină virtuală. |
Inferno are puncte în comun cu mașina virtuală Java .
Suport pentru rețea
Numărul din martie-aprilie 1997 al IEEE Internet Computing a apărut cu o reclamă despre software-ul de rețea Inferno. Acesta a afirmat că perifericele eterogene ar putea comunica prin „orice rețea”, inclusiv prin internet, rețele de telecomunicații și rețele locale . S-a susținut, de asemenea, că jocurile video ar putea comunica cu computerele (exista o imagine a unei PlayStation , telefoanele mobile puteau avea acces la e-mail și că există suport pentru mesageria vocală pentru televizoare).
Port
Inferno poate rula pe hardware nativ sau ca o aplicație care oferă un sistem de operare virtual care rulează pe alte platforme. Aplicațiile pot fi dezvoltate și rulate pe oricare dintre arhitecturile suportate de Inferno, fără nicio modificare sau recompilare.
Porturile native includ: x86 , MIPS , XScale , ARM , PowerPC , SPARC . În schimb, printre porturile găzduite sau virtuale: Microsoft Windows , Linux , FreeBSD , Plan 9 , macOS ,Solaris , IRIX , UnixWare .
Inferno poate fi găzduit și de un pluginInternet Explorer . Potrivit Vita Nuova, sunt dezvoltate pluginuri pentru alte browsere. [1]
Recent s-a născut și o versiune a sistemului de operare Nintendo DS, bazată pe Inferno4, numită InfernoDS
Licență
A patra ediție a Inferno a fost lansată la începutul anului 2005 ca software liber . Mai exact, se bucură de o licență dublă . Utilizatorii îl pot obține fie în condițiile unei serii de licențe de software gratuit, fie printr-o licență comercială tradițională. Dacă alegeți prima opțiune, diferite părți ale sistemului aplică cât mai multe licențe, inclusiv Licența publică generală GNU , Licența publică generală mai mică GNU , Licența publică Lucent și Licența MIT . Ulterior, Vita Nuova a făcut posibilă obținerea întregului sistem (cu excepția fonturilor, care au fost re-licențiate de Bigelow și Holmes ) în condițiile licenței GPLv2 . Toate cele trei posibilități sunt disponibile în prezent.
Cărți
Cartea Inferno Programming with Limbo de Phillip Stanley-Marbell descrie a treia ediție a sistemului de operare Inferno, deși se concentrează mai mult pe limbajul Limbo și interfețele sale cu sistemul Inferno decât pe acesta din urmă. De exemplu, sunt oferite puține informații despre versatile Inferno shell , ceea ce este de înțeles având în vedere destinația textului.
O altă carte, The Inferno Programming Book: An Introduction to Programming for the Inferno Distributed System de Martin Atkins , Charles Forsyth , Rob Pike și Howard Trickey , a fost concepută pentru a oferi un punct de vedere centrat pe SO, dar nu a fost niciodată finalizată. autorii săi.
Notă
Bibliografie
- Phillip Stanley-Marbell, Inferno Programming with Limbo , Chichester, John Wiley & Sons, 2003. ISBN 0470843527 .
Elemente conexe
linkuri externe
Principal
- ( RO ) Inferno Project pe Google Code , pe code.google.com .
- ( RO )Descărcați Inferno Fourth Edition, cod sursă inclus , pe vitanuova.com .
- ( RO ) Documentație pentru cea mai recentă versiune Inferno
- ( RO ) Alte documente interesante , pe doc.cat-v.org .
- ( EN ) Principiile de proiectare a infernului , pe vitanuova.com .
- ( EN ) Lista de distribuție și alte resurse , pe vitanuova.com .
- ( EN ) Captură de ecran , pe vitanuova.com .
- ( RO ) Blogul „Dezvoltarea cu Inferno” , pe inferno-os.blogspot.com .
- ( EN ) Plugin pentru browsere Inferno , pe vitanuova.com .
- ( EN ) Proiecte pentru proiecte Inferno în timpul GSoC .
- (EN) Hell on OLPC , pe wiki.laptop.org.
Alte legături
- ( RO ) Întrebări frecvente neoficiale , la ftp.bme.hu. Adus la 23 februarie 2008 (arhivat din original la 17 aprilie 2009) .
- ( EN ) Caietul programatorului Inferno - Jurnal scris de un utilizator Inferno
- ( RO ) Tutorial despre Inferno pe site-ul web al Centrului e-Science al Universității din Reading
- ( RO ) Copie a site-ului original Lucent Inferno , la doc.cat-v.org .
- ( RO ) Arhivele primei liste de corespondență Inferno , pe doc.cat-v.org .