Infern (sistem de operare)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare
Iad
sistem de operare
Inferno 4th Edition.png
Dezvoltator Laboratoarele Bell / New Life Holdings
Familie Evoluția Unix
Eliberarea inițială Inferno Beta (1996 ; acum 25 de ani )
Lansare curentă Ediția a patra (28 septembrie 2015 ; acum 5 ani )
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ă

  1. ^(EN) Plugins , New Life.

Bibliografie

  • Phillip Stanley-Marbell, Inferno Programming with Limbo , Chichester, John Wiley & Sons, 2003. ISBN 0470843527 .

Elemente conexe

linkuri externe

Principal

Alte legături