LiiS:CorsiSOII

Da Wikipedia, l'enciclopedia libera.

Contents

Sistemi Operativi II

Anno: I specialistica (Programmazione di Sistema in ambiente UNIX) II Specialistica (Sistemi Operativi II)
Periodo: primo
Crediti Formativi Universitari: 6
Corso di Laurea: Ingegneria dell'Informazione

Docente

Prof. Franco Tommasi

Obiettivi del corso

Premessa: Sistemi Operativi II e Programmazione di Sistema in ambiente UNIX condividono il medesimo programma.

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.

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.

Personal tools