Introduzione a UNIX
 
UNIX e' un sistema operativo molto diffuso. Per sistema operativo si intende un insieme di programmi che fa funzionare il computer.  Altri sistemi operativi sono:   VMS, MacOS,  DOS, Windows95, 98, NT, XP etc.

Un' interfaccia grafica per sistemi UNIX e' data dal sistema  X windows.

Per alcune operazioni non coperte dalle funzionalita' esistenti in ambiente grafico e' utile  saper utilizzare i comandi di linea in ambiente UNIX.


Il sistema operativo  UNIX

UNIX e' composto da tre parti: il  kernel, la  shell ed i   programmi.

Il  kernel

Il  kernel di UNIX e' il cuore del sistema operativo:  alloca risorse (twempo e memoria)  ai programmi e manipola i files e le comunicazioni come risposta a chiamate a  funzioni di sistema.

Come illustrazione della cooperazione tra shell e kernel, supponiamo che un utente dia il comando   rm myfile (che ha l' effeto di cancellare  il  file "myfile"). La  shell cerca il file corrispondente al comando  rm e quindi lo esegue. Il comando rm da origine a chiamate a primitive di sistema che provocano la cancellazione di myfile dall' elenco dei files del sistema.  Quando il processo corrispondente ha terminato, la shell fa ricomparire sullo schermo il prompt  ( dfisa2.ts.infn.it> by default at the Dipartimento di Fisica)  tindicando cosi' di essere in attesa di nuovi comandi.

La shell

La shell funziona da interfaccia   tra  utente e kernel. Quando un utente si collega, il programma che gestisce il login verifica lo username e la password e quindi inizia l' esecuzione di un altro programma detto la shell.  La shell e' un interprete di comandi
(CLI). Interpreta  i  comandi dati dall' utente  e  provvede alla loro esecuzione.  I comandi sono dei programmi: quando termina la loro esecuzione la shell rida' un nuovo prompt   ( dfisa2.ts.infn.it> ).

L' utente puo' personalizzare la propria  shell e possono essere usate piu' shell sullo stesso sistema.  Su sistemi Linux la shell di default e' bash  ma altre shell sono disponibili   (sh, csh, bash, ksh).
 


Files e processi

Su UNIX tutto appare come un file o un processo.

Un  processo e' un programma in esecuzione caratterizzato da un identificatore (PID).
Un file e' una collezione di dati. Puo' essere creato dall' utente usando text editors,  compilatori etc.

Esempi  di  files:


La struttura delle directories

Tutti i files sono raggruppati nella struttura delle directories. . L' insieme dei files ( file-system)  e' organizzato gerarchicamente come albero invertito. Il punto di partenza della gerarchia e' usualmente chiamato  "root"  ed e' indicato da uno slash ( / ).

Nel precedente diagramma vediamo una directory ee51ab contenente la  subdirectory unixstuff ed un file   proj.txt


Adattato da "UNIX Tutorial for Beginners" di M.Stonebank@surrey.ac.uk (URL: http://www.ee.surrey.ac.uk/Teaching/Unix/ )
Torna all' indice