Corso di Laboratorio di Sistemi Operativi
(Corso di Laurea in Informatica - A.A. 2008/2009).

In questa pagina gli studenti del GRUPPO B troveranno le informazioni sull'obbiettivo, il metodo, il programma, la bibliografia e la modalita' di superamento per la PRIMA META' del corso di laboratorio, assieme agli orari di lezione e di ricevimento, agli avvisi ed ai lucidi delle lezioni.

Obiettivo:

Il corso ha l'obiettivo di fornire allo studente di Sistemi Operativi strumenti pratici per giungere ad una migliore comprensione del materiale proposto in tale corso, in particolare per quanto riguarda l'utilizzo da amministratore e programmatore del sistema UNIX.

Metodo:

Le lezioni del corso sono costituite in prevalenza da esercitazioni guidate dal docente sui sistemi di calcolo del Laboratorio 2. Ogni esercitazione sara' introdotta dalla spiegazione dei concetti, dei comandi e dei costrutti necessari.

Programma:

  1. Il sistema Operativo UNIX: struttura, interfaccia utente, varianti (Solaris, Linux).
    • La shell UNIX: ruolo e varianti, procedura di login, organizzazione del file system, manuale online, la shell bash, espansione del pathname, ridirezione del I/O, pipe, job in background, il comando history, editing della linea di comando, completamento di comandi, editor testuali.
    • Comandi principali della shell: gestione di file, gestione di processi, monitoraggio della memoria, comandi filtro, ricerca, ordinamento, editing.
    • Shell script: variabili, passaggio dei parametri, strutture di controllo, login script.
  2. Basi di Linguaggio C.

Sono anche previste due lezioni facoltative sulla scelta, l'installazione (su macchina reale o virtuale) e la configurazione di un sistema GNU/Linux.

Bibliografia:

  1. G. Glass, K. Ables, "UNIX for Programmers and Users", Prentice Hall, 2a edizione, 1999.
  2. B.W. Kernighan, D.M. Ritchie, "Linguaggio C", Jackson, 2a edizione, 1989.

Modalita' di superamento:

Per superare la prima meta' del corso di laboratorio e' necessario svolgere i due progetti che saranno assegnati durante le lezioni. I progetti svolti, corredati da una breve relazione, devono essere inviati via e-mail entro il 15 luglio 2009. La votazione riportata per ogni progetto sara' espressa in trentesimi. I voti concorreranno alla formulazione del voto finale dell'esame di Sistemi Operativi. I progetti devono essere svolti individualmente o in un gruppo di due persone.

Progetto I - La shell Unix.

Progetto II - La programmazione C.

Orario delle lezioni:

Le lezioni per la prima parte del corso per il gruppo B si terranno il lunedi' ed il martedi', dalle 12.30 alle 14.15, in Laboratorio 2. Il corso per il gruppo A e la seconda parte del corso per entrambi i gruppi saranno tenuti dalla prof. Staniszkis il mercoledi' dalle 8.30 alle 10.15 e dalle 16.30 alle 18.15.

Ricevimento studenti:

Su appuntamento. Contattare fabio.buttussi@dimi.uniud.it.

Avvisi:

I lucidi delle lezioni di ciascuna settimana saranno disponibili, salvo imprevisti, entro lunedi' mattina della stessa.

Le lezioni facoltative saranno tenute il 3 ed il 4 novembre dalle 12.30 alle 14.15 a gruppi unificati. In tale settimana, quindi, anche gli studenti del gruppo A avranno lezione lunedi' e martedi', anziche' mercoledi'. Tali giornate saranno dedicate anche allo svolgimento del progetto shell assegnato la settimana precedente. Pertanto, gli studenti che non fossero interessati alle lezioni facoltative (comunque caldamente consigliate) potranno dedicare il relativo tempo allo svolgimento del progetto.

I lucidi della Lezione 6 sono stati aggiornati, introducendo uno schema riassuntivo con i comandi della shell Bash visti a lezione.

Si ricorda che dal 24 novembre le lezioni di Laboratorio di Sistemi Operativi saranno tenute a gruppi unificati dalla prof. Maria Staniszkis. Pertanto anche gli studenti del gruppo B dovranno seguire le lezioni del mercoledi', anziche' quelle del lunedi' e del martedi'.

Le slide relative al progetto per la terza parte del corso sono disponibili al seguente link: Progetto III - La programmazione di sistema.

IMPORTANTE: I progetti assegnati nell'anno accademico 2008/2009 dal 16 luglio 2009 non sono piu' validi per superare l'esame. Gli studenti che hanno seguito il corso nell'anno accademico 2008/2009 o negli anni precedenti dovranno svolgere i nuovi progetti per l'anno accademico 2009/2010, disponibili alla pagina del nuovo corso con le tempistiche ed i regolamenti ivi indicati.

Lucidi delle lezioni e soluzioni degli esercizi:

Parte 1: la shell Unix

Lezione 1

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 2

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 3

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 4

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 5

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 6

Lucidi della lezione. Soluzioni degli esercizi.

Parte facoltativa: installazione e configurazione di un sistema GNU Linux

Lezione 7

Lucidi del primo approfondimento. Lucidi del secondo approfondimento.

Lezione 8

Lucidi del primo approfondimento. Lucidi del secondo approfondimento.

Parte 2: introduzione al C

Lezione 9

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 10

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 11

Lucidi della lezione. Soluzioni degli esercizi.

Lezione 12

Lucidi della lezione. Soluzioni degli esercizi.