prof. Nunzio Brugaletta |
atapSO |
EnneBi –
Computer Science
Avanti – Indietro – Inizio
Lo scopo di questi appunti è quello di trattare alcuni aspetti teorici dei sistemi operativi e, nel contempo, fornire un riscontro pratico con aspetti amministrativi. In pratica in ogni paragrafo vengono affrontate problematiche generali della progettazione di un sistema operativo, laddove nei suoi sotto-paragrafi si tratta lo stesso argomento attraverso l'esame di alcuni comandi, soluzioni pratiche e caratteristiche implementative del sistema operativo Linux. Le due trattazioni procedono, quindi, in parallelo.
Per una maggiore comprensione degli argomenti trattati, è necessaria una conoscenza dei principi generali del funzionamento di un computer e della sue componenti. Per poter provare le applicazioni pratiche, e avere maggiori possibilità di memorizzarle, nel computer deve essere installato Linux o è necessario, almeno, dotarsi di un live-CD. La particolare distribuzione, in linea generale, non ha importanza poiché si farà riferimento alle caratteristiche di Linux, presenti in qualunque distribuzione che contiene tale nome al suo interno. Tuttavia qualche directory di configurazione potrebbe, in qualche distribuzione, avere un'allocazione diversa da quella riportata in queste note: la distribuzione di riferimento in questi appunti è Ubuntu.
È inoltre richiesta una conoscenza base dei comandi della bash e del sistema Linux in generale (fare riferimento a BasicLinux).
Negli esempi concreti sono utilizzate le convenzioni evidenziate di seguito:
$ ls
bfsh-koc.zip duex prova scan2.sxw uno.c
Blowf.c Esempio_A01.java prova1 stringhe unox
Blowf.h Main.c prova.cpp stinghe.cpp
due.cc prova.s storia1
i caratteri in grassetto rappresentano l'eco su video dei ciò che è digitato da tastiera (in questo caso il comando ls per visualizzare l'elenco dei file contenuti nella directory di lavoro), il resto in caratteri normali rappresenta la risposta del sistema al comando impartito.
In questi appunti si esamineranno molto spesso file di configurazione del sistema. Si tratta di file in formato testo:
# Remove home directory and mail spool when user is removed
REMOVE_HOME = 0
# Remove all files on the system owned by the user to be removed
REMOVE_ALL_FILES = 0
# Backup files before removing them. This options has only an effect if
# REMOVE_HOME or REMOVE_ALL_FILES is set.
BACKUP = 0
# target directory for the backup file
BACKUP_TO = "."
I file di configurazione di Linux sono abbondantemente commentati. Le righe precedute dal simbolo # sono commenti. Tutte le opzioni possibili sono presenti e se una opzione non si vuole rendere attiva, semplicemente, viene anteposto il simbolo # e diventa un commento, se si vuole riabilitarla successivamente basta togliere il simbolo di commento.
Una cosa importante da ricordare è che, spesso, nel corso di queste note verranno utilizzati comandi impartiti con diritti di super-utente. In questi casi si ha accesso completo a tutte le risorse di sistema e si possono impartire comandi il cui uso improprio può causare gravi malfunzionamenti. Occorre porre estrema attenzione nell'uso di tali comandi ed essere sicuri di quello che si sta facendo. Anche se tutti comandi riportati sono stati testati l'autore di queste note non si assume alcuna responsabilità per l'uso improprio ed eventuali danni provocati dalle istruzioni riportate nelle note stesse.
http://ennebi.solira.org |
ennebi@solira.org |