Research Unix: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Modifica tabella |
m Bot: sintassi dei link e modifiche minori |
||
(3 versioni intermedie di un altro utente non mostrate) | |||
Riga 1:
{{NN|informatica|luglio 2022
'''Research Unix''' è un termine che si riferisce alle varie versioni del [[sistema operativo]] [[Unix]] sviluppate per i [[computer]]
== Storia ==
Riga 29:
| Edizione 1
| 3 novembre 1971
| La prima edizione del manuale Unix, pubblicata il 3 novembre 1971, è stata modellata sulla versione del manuale del PDP-11. Questa edizione includeva la ''Thompson shell'',<ref>La Thompson shell è stata la prima shell di Unix, introdotta nella prima versione del sistema operativo Unix nel 1971 e sviluppata da Ken Thompson. Questa shell fungeva da semplice interprete di comandi, non progettato per la scrittura di script, ma ha comunque introdotto diverse funzionalità innovative per l'interfaccia a riga di comando.</ref> i comandi ''<code>mail</code>, <code>[[Cp (Unix)|cp]]</code> e <code>[[Su (Unix)|su]]</code>''. Il sistema operativo era stato sviluppato per due anni
|-
| Edizione 2
| 12 giugno 1972
| Nella seconda edizione del manuale Unix, il numero totale di installazioni era di 10, una cifra che fu considerata "più di quello che ci si aspettava" secondo la prefazione al manuale. Questa edizione includeva il comando <code>echo</code>
|-
| Edizione 3
| febbraio 1973
|
|-
| Edizione 4
| novembre 1973
|
|-
| Edizione 5
| giugno 1974
| Fu
|-
| Edizione 6
| maggio 1975
|
|-
| Edizione 7
| gennaio 1979
| Furono introdotti strumenti fondamentali come la [[Bourne shell]], <kbd>[[cpio]]</kbd>, <kbd>[[sed (Unix)|sed]]</kbd>, <kbd>[[ioctl]]</kbd><ref>In ambito Unix, ioctl (Input/Output Control) è una chiamata di sistema utilizzata per controllare i parametri di dispositivi speciali e interagire con i driver di dispositivo. Questa funzione consente di eseguire operazioni che non possono essere facilmente gestite tramite le normali chiamate di I/O, come leggere e scrivere dati.</ref>, <kbd>[[awk]]</kbd>, <kbd>[[f77]]</kbd><ref>In ambito Unix, F77 si riferisce a un compilatore per il linguaggio di programmazione Fortran 77. È stato uno dei primi compilatori completi per Fortran 77 e ha giocato un ruolo significativo nello sviluppo di software scientifico e ingegneristico.</ref>, <kbd>[[spell (Unix)|spell]]</kbd><ref>In ambito Unix, spell è un programma di controllo ortografico standard per la lingua inglese. Introdotto nella sesta edizione di Unix, è stato originariamente sviluppato da Stephen C. Johnson presso i Bell Labs nel 1975.</ref> e <kbd>[[stdio]]</kbd><ref>In ambito Unix, STDOUT (Standard Output) è il flusso predefinito attraverso il quale un programma scrive i suoi output. Questo flusso è rappresentato dal file descriptor numero 1 e, per impostazione predefinita, è collegato al terminale dell'utente.</ref>. Questa versione incorporò la maggior parte degli strumenti provenienti da [[Pwd (Unix)|PWB/UNIX]] e presentava un [[kernel]] ampiamente modificato, con oltre l'80% di codice nuovo rispetto alla sesta edizione. Nel febbraio 1979, fu progettato un port chiamato 32V<ref>in ambito Unix si riferisce alla creazione di una versione del sistema operativo Unix, denominata 32V, progettata specificamente per l'hardware DEC VAX. Questo port rappresenta un'importante evoluzione nella portabilità di Unix, consentendo al sistema operativo di funzionare su architetture diverse da quelle originariamente supportate, come il PDP-11.</ref> per l'hardware DEC VAX<ref>In ambito Unix, DEC VAX si riferisce a una serie di computer sviluppati dalla Digital Equipment Corporation (DEC), caratterizzati da un'architettura a 32 bit e dalla gestione della memoria virtuale. Il termine VAX è un acronimo per Virtual Address eXtension.</ref>; 32V divenne la base per la [[Berkeley Software Distribution|4BSD]].
|-
| Edizione 8
| febbraio 1985
|È una versione modificata
|-
| Edizione 9
| settembre 1986
|In questa edizione venne incorporato il codice sorgente di 4.3BSD ma venne distribuito solo per uso interno all'azienda. Questa versione includeva una generalizzazione degli Streams [[Comunicazione tra processi|ICP]]<ref>In ambito Unix, la frase "generalizzazione degli Streams ICP" si riferisce all'estensione e all'adattamento del framework STREAMS per la comunicazione interprocesso (ICP, Inter-Process Communication).
|Venne incorporato il codice di 4.3BSD e distribuito solo internamente. Incorpora una versione generalizzata degli Streams [[Comunicazione tra processi|ICP]] introdotti nella versione 8. La chiamata al mount system era estesa a uno streaming di un file, a sua volta collegato a un programma user level. Questo meccanismo serviva a implementare la connessione di rete nello [[spazio utente]].<ref>{{cita pubblicazione |autore1=David L. Presotto |autore2=Dennis M. Ritchie |anno=1990 |rivista=[[Software—Practice and Experience]] |volume=19 |titolo=Interprocess Communication in the Ninth Edition Unix System |url=http://cm.bell-labs.com/cm/cs/who/dmr/ipcpaper.html |urlmorto=sì |accesso=26 aprile 2015 |urlarchivio=https://web.archive.org/web/20150203070655/http://cm.bell-labs.com/cm/cs/who/dmr/ipcpaper.html |dataarchivio=3 febbraio 2015 }}</ref> Altre innovazioni includono <kbd>[[make (Unix)|make]]</kbd> and <kbd>[[Sam (text editor)|Sam]]</kbd>.<ref name="reader0">[[Doug McIlroy|M. D. McIlroy]] (1987). [http://pic.plover.com/UnixReader/ A Research Unix reader: annotated excerpts from the Programmer's Manual, 1971–1986] {{webarchive|url=https://web.archive.org/web/20120710085846/http://pic.plover.com/UnixReader/|data=10 luglio 2012}}. CSTR 139, Bell Labs.</ref> Secondo Denni Ritchie la V9 e la V10 erano “concettuali”: i manuali esistevano ma nessuna distribuzione del sistema operativo “in maniera completa e coerente” fu rilasciata.<ref name="dmrV8910"/>▼
Dettagli
STREAMS è un'architettura modulare che consente di gestire flussi di dati tra processi in user space e driver nel kernel. La "generalizzazione" implica che il sistema è stato reso più flessibile e applicabile a una varietà di scenari di comunicazione, non limitandosi a un singolo tipo di interazione.
Incorporazione di ICP: L'integrazione degli Streams ICP significa che il sistema ora supporta una gamma più ampia di protocolli e modalità di comunicazione, facilitando la creazione di applicazioni che richiedono interazioni complesse tra diversi processi o dispositivi.
▲
|-
| Edizione 10
| ottobre 1989
| L'ultimo ''Research Unix''. Nonostante il manuale
Cos'è un sistema di build?
Un sistema di build è un insieme di strumenti e procedure che gestiscono la trasformazione del codice sorgente in un prodotto finale, come un'applicazione o una libreria. Questo processo può includere la compilazione, il linking e altre operazioni necessarie per preparare il software per l'esecuzione o la distribuzione.
Mk (Make)
Il termine "Mk" si riferisce specificamente a Make, uno dei più noti tool di build. Make utilizza file di configurazione (tipicamente chiamati <code>Makefile</code>) per definire come i vari componenti del software devono essere costruiti e quali dipendenze devono essere soddisfatte. È stato ampiamente utilizzato in vari progetti software, ma presenta alcune limitazioni in termini di velocità e scalabilità, specialmente in progetti di grandi dimensioni come Android
1
3
.</ref>e la shell [[Rc (shell)|rc]]. La versione 10 fu anche la base per il sistema operativo IX di Doug McIlroy e James A. Reeds.<ref>{{cita web|url=http://www.cs.dartmouth.edu/~doug/IX/|titolo=The IX Multilevel-Secure UNIX System}}</ref>
|}
|