LiiS:CorsiPSR
Da Wikipedia, l'enciclopedia libera.
Contents |
Programmazione di Sistema e di Rete
Anno: I magistrale (Programmazione di Sistema e di Rete) Periodo: primo Crediti Formativi Universitari: 6 Corso di Laurea: Ingegneria dell'Informazione
Docente
Prof. Franco Tommasi
Obiettivi del corso
Premessa: L'attuale corso Programmazione di Sistema e di Rete è in larga parte simile ai precedenti Sistemi Operativi II e Programmazione di Sistema in ambiente UNIX. L'unica sostanziale differenza consiste nel maggior rilievo dato alla programmazione di rete rispetto ai corsi precedenti.
L'obiettivo del corso è avviare alla conoscenza della programmazione di sistema nel caso di un sistema operativo reale. Il sistema operativo prescelto è UNIX, nelle sue varianti Linux e FreeBSD (MacOS X): di esse sono discusse affinità e peculiarità dal punto di vista della programmazione di sistema. Del sistema UNIX viene illustrata gran parte delle API di sistema (le "System Calls"). Sempre privilegiando un approccio pratico (durante lo svolgimento delle lezioni gli studenti hanno accesso a delle macchine UNIX sulle quali sono invitati a verificare di persona quanto spiegato), ogni System Call (o gruppo di System Call) è analizzata con il ricorso ad esempi di programmazione.
Requisiti
Conoscenza del linguaggio C. Propedeuticità: Sistemi Operativi I.
Programma
Le varianti UNIX: standards, compatibilita' e differenze. Le System Calls UNIX.
Testi d'esame consigliati
Sugli argomenti trattati dal corso è disponibile un gran quantità di testi liberamente consultabili o scaricabili dalla rete. Il testo di riferimento per il corso è "Advanced Programming in the UNIX(R) Environment" (2a ed.) di W. Richard Stevens e Stephen A. Rago (ISBN 0201433079), un classico della materia, molto consigliato a chi desideri occuparsene seriamente. Oltre alla documentazione on-line su ogni macchina UNIX (pagine man e info, della cui consultazione si richiede perfetta padronanza) si suggerisce la consultazione del testo, gratuitamente disponibile in rete, Guida alla programmazione in Linux. Sono di fondamentale importanza le documentazioni relative alle due maggiori famiglie di standard oggi presenti in ambito UNIX. In particolare la Single UNIX Specification versione 3 e la Linux Standard Base. Merita anche attenzione la nuova Single UNIX Specification versione 4
Modalita' d'esame
Svolgimento di un compito di programmazione personalizzato per ciascuno studente, da svolgere a casa o in laboratorio con scelta di tempo propria.
