© Università degli Studi di Cassino e del Lazio Meridionale
Viale dell'Università - Rettorato - (Campus Universitario)
Loc. Folcara - 03043 CASSINO (FR)
Centralino 0776 2991
Fax 0776 310562
PEC
P.IVA 01730470604
C.F. 81006500607 (5xmille)
Coordinate bancarie: SWIFT BIC: POCAIT3CXXX
IBAN: IT75 B053 7274 3700 0001 0409 621
Scheda Insegnamento
Operating Systems (codice 90832)
Curriculum: Curriculum unico del corso di Telecommunications Engineering - Ingegneria delle TelecomunicazioniProgrammazione per l'A.A.: 2018/2019
Appelli d'esame: Calendario - Prenotazioni
Orari del corso di Telecommunications Engineering - Ingegneria delle Telecomunicazioni: apri
Crediti Formativi Universitari (CFU): 6,00
Settore Scientifico Disciplinare (SSD): ING-INF/05
Ambito disciplinare: Abilità informatiche e telematiche
Attività: Ulteriori attività formative (art.10, comma 5, lettera d) (F)
Ore aula: 28
Ore laboratorio:10
Ore esercitazioni: 10
Canale unico
Obiettivi:
Scopo del corso è quello di presentare i principali strumenti metodologici per l'analisi del software di sistema, con particolare riferimento al Sistema Operativo Linux. Viene introdotto il modello a processi di un S.O., unitamente alla gestione delle risorse hardware di sistema. Vengono inoltre illlustrate le principali caratteristiche di Linux sia come visione utente che come programmazione di sistema.
La parte pratica è dedicata principalmente alla programmazione concorrente.
Programma:
Strutture dei sistemi operativi. Kernel monolitici e microkernel. I processi. La sincronizzazione dei processi. Lo scheduling della CPU. I deadlocks. La gestione della memoria primaria. La memoria virtuale. L'interfaccia del file system. L'implementazione del file system. Logstructured e journaled file systems. La struttura della memoria secondaria strutture RAID. Programmazione di sistema Linux e System Call. Introduzione alla programmazione concorrente mediante threads.
Esercizi ed esempi: la linea di comando e gcc. Presentazione del File System e gestione dei processi in Linux. Ambienti di programmazione (C/C++ e Java) per Linux.
Testi:
Operating System Concepts (8th Edition),
Avi Silberschatz, Peter Galvin, and Greg Gagne,
John Wiley and Sons
Modern Operating Systems (3rd Edition)
A.S. Tannenbaum
Pearson Prentice
Understanding the Linux Kernel, 3rd Edition
Daniel P. Bovet, Marco Cesati
O'Reilly