SISTEMI OPERATIVI AVANZATI

Giuseppe CATTANEO SISTEMI OPERATIVI AVANZATI

0522500066
DIPARTIMENTO DI INFORMATICA
CORSO DI LAUREA MAGISTRALE
INFORMATICA
2015/2016



ANNO CORSO 1
ANNO ORDINAMENTO 2015
SECONDO SEMESTRE
CFUOREATTIVITÀ
756LEZIONE
216LABORATORIO
Obiettivi
CONOSCENZA E CAPACITÀ DI COMPRENSIONE:
L’OBIETTIVO PRINCIPALE DEL CORSO È QUELLO DI OFFRIRE UNA PANORAMICA COMPLETA SUI MODERNI SISTEMI OPERATIVI SUPERANDO LA VISIONE ORMAI RIDUTTIVA DEL KERNEL MONOLITICO PER ARCHITETTURE BASATE SU UN'UNICA CPU.
IL CORSO INTENDE FORNIRE TUTTI I NECESSARI APPROFONDIMENTI PER CONSENTIRE LA CONDIVISIONE DA PARTE DEGLI STUDENTI DEI RISULTATI RAGGIUNTI NELL'ULTIMO DECENNIO DA PARTE DELLA RICERCA DI BASE NEL SETTORE DEI SISTEMI OPERATIVI AVANZATI E DELLE ARCHITETTURE MULTICORE.

CAPACITÀ DI APPLICARE LA COMPRENSIONE:
IN PARTICOLARE IL CORSO INTENDE PRESENTARE L'EVOLUZIONE CHE I MODERNI SISTEMI OPERATIVI HANNO SUBITO CON L'INTRODUZIONE SISTEMATICA DELLE TECNICHE PER LA VIRTUALIZZAZIONE E PIÙ IN GENERALE CON LA PRESENTAZIONE DEL CONCETTO DI VIRTUAL DATA CENTER, RIDISEGNANDO L'ARCHITETTURA DEL SISTEMA OPERATIVO E INTRODUCENDO TUTTI I NUOVI MODULI NECESSARI. TALE CONOSCENZE ABILITERANNO GLI ALLIEVI ALLA PROGETTAZIONE DEI MODERNI SISTEMI DI CALCOLO.

AUTONOMIA DI GIUDIZIO:
DURANTE LE LEZIONI SARÀ PRESENTATO IN AULA UN AMPIO SPETTRO DI SOLUZIONI ARCHITETTURALI CHE VANNO DAL MULTIPROCESSING SIMMETRICO ALLE ARCHITETTURE PIÙ SPECIALIZZATE PER L'HIGH PERFORMANCE COMPUTING. GLI ALLIEVI SARANNO PERTANTO MESSI CONDIZIONE DI VALUTARE CASO PER CASO LE SCELTE OTTIMALI PER OTTENERE LE MIGLIORI PRESTAZIONI E RENDERE SOSTENIBILE IL SISTEMA DI CALCOLO.
GLI STUDENTI SONO SPRONATI AD ARRICCHIRE LE LORO CONOSCENZE CON CRITICITÀ E RESPONSABILITÀ, SIA RIVISITANDO IN MANIERA CRITICA L'APPROCCIO CLASSICO GIÀ STUDIATO ALLA TRIENNALE SIA INTEGRANDO IL MATERIALE DIDATTICO CON ULTERIORI ARTICOLI SCIENTIFICI. IN QUESTO MODO GLI STUDENTI SVILUPPERANNO CAPACITÀ DI GIUDIZIO IN AUTONOMIA ED IMPARERANNO A GESTIRE E A RISOLVERE I PROBLEMI PER APPROSSIMAZIONI SUCCESSIVE.

ABILITÀ COMUNICATIVE:
GLI STUDENTI SONO STIMOLATI A COMUNICARE IN MODO CHIARO E PERSUASIVO E DURANTE L'ANNO, ORGANIZZATI IN GRUPPI, AFFRONTERANNO UN TEMA SPECIFICO DEL CORSO DEL QUALE PRESENTERANNO IN AULA I RISULTATI, PARTENDO DA ARTICOLI FONDAMENTALI PRESENTI NELLA LETTERATURA SCIENTIFICA SUL TEMA.
DURANTE IL CONFRONTO IN AULA SARANNO STIMOLATE LE CAPACITÀ DI VALUTAZIONE DEI VANTAGGI E DEGLI SVANTAGGI DELLE VARIE PROPOSTE AFFINANDO ANCHE CAPACITÀ DI MEDIAZIONE E DI SINTESI. IL CONCORSO COMUNE ALLE SOLUZIONI DEI PROBLEMI FAVORIRÀ ANCHE LA CAPACITÀ DI LAVORARE IN GRUPPO.

CAPACITÀ DI APPRENDIMENTO
TUTTA L'ATTIVITÀ FORMATIVA INTENDE FAR LEVA SULLA EFFETTIVO INTERESSE DEI SINGOLI STUDENTI, STIMOLANDO CURIOSITÀ E VOGLIA DI CONOSCENZA.
LE CAPACITÀ DI APPRENDIMENTO, SARANNO STIMOLATE ATTRAVERSO ATTIVITÀ DI TIPO SEMINARIALE TENUTE DAGLI STUDENTI ORGANIZZATI IN PICCOLI GRUPPI. LA PROVA FINALE COMPRENDERÀ ANCHE UN PROGETTO, ESEGUITO SU UN CLUSTER DI WORKSTATION DURANTE IL QUALE SI AUSPICA CHE GLI STUDENTI PIÙ PORTATI PER LE ATTIVITÀ PRATICHE (PROGRAMMAZIONE) POSSANO FONDERE LE PROPRIE COMPETENZE CON I COLLEGHI PIÙ ORIENTATI ALL'APPLICAZIONE DELLE BASI TEORICHE FORNITE DURANTE LE LEZIONI.
Prerequisiti
LO STUDENTE DEVE CONOSCERE L’ARCHITETTURA DEI SISTEMI DI ELABORAZIONE, I SISTEMI OPERATIVI TRADIZIONALI, IL LINGUAGGIO DI PROGRAMMAZIONE C.
Contenuti
ORE DI LEZIONI FRONTALI: 48
ORE DI LABORATORIO: 36
IL CORSO È SUDDIVISO IN 4 PARTI:

LA PRIMA PARTE È DEDICATA AD UNA SINTETICA RIVISITAZIONE DELL'APPROCCIO TRADIZIONALE PER LA PROGETTAZIONE DI SISTEMI OPERATIVI PER ARCHITETTURE BASATE SU SINGOLO PROCESSORE, RINTRODUCENDO IN PARTICOLARE LE SOLUZIONI PER LA SINCRONIZZAZIONE TRA PROCESSI E LA GESTIONE DEI DEADLOCK. IN PARTICOLARE SARANNO ANALIZZATI I LIMITI DI TALI SOLUZIONI RISPETTO ALLE ARCHITETTURE MULTIPROCESSORE.

LA SECONDA PARTE INTRODUCE I SISTEMI MULTIPROCESSORE PRESENTANDO LE DIVERSE TECNICHE O SOLUZIONI PER LA REALIZZAZIONE DI UN SISTEMA OPERATIVO PER SISTEMI MULTIPROCESSORE MOSTRANDONE LE PRINCIPALI CARATTERISTICHE E CRITICITÀ. PARTICOLARE ATTENZIONE SARÀ DEDICATA AI SISTEMI PER GESTIONE EFFICIENTE DEL MULTITHREADING. INFINE SARANNO TRATTATE ANCHE LE TECNICHE PER LA REINGEGNERIZZAZIONE DEI VECCHI KERNEL MONOLITICI.

LA TERZA PARTE INTRODUCE SOLUZIONI DEDICATE ALLO STORAGE ED AI FILE SYSTEM PER SISTEMI DISTRIBUITI O AD ALTE PRESTAZIONI (AFFIDABILITÀ, CAPACITÀ, ACCESSIBILITÀ, ECC.) TRA CUI RAID, NFS, CODA, AFS, HDFS ED IL GOOGLE FILE SYSTEM.

L'ULTIMA PARTE SARÀ DEDICATA AL CONCETTO DI VIRTUALIZZAZIONE, INTRODUCENDO LE DUE PRINCIPALI TECNICHE PER LA VIRTUALIZZAZIONE BASATE SU DUE SOLUZIONI MOTO DIFFUSE: XEN PER LA PARA VIRTUALIZATION E VMWARE PER LA FULL VIRTUALIZATION.

UNA VOLTA INTRODOTTO IL CONCETTO DI SISTEMI DISTRIBUITI E QUINDI DI GRID COMPUTING IN LABORATORIO SARÀ PRESENTATO ED UTILIZZATO PER LE ESERCITAZIONI IL SOFTWARE HADOOP DI APACHE OSF, INSTALLANDONE UNA ISTANZA SU CIASCUN PC DELL'AULA DIDATTICA E REALIZZANDO COSÌ UNA PICCOLA GRIGLIA COMPUTAZIONALE SU CUI SPERIMENTARE E MISURARE LE PRESTAZIONI (SCALABILITÀ) DEI PROGETTI REALIZZATI DAGLI STESSI GRUPPI DI STUDENTI CHE AVRANNO SCELTO QUESTA MODALITÀ DI ESAME.
Metodi Didattici
IL CORSO DI SISTEMI OPERATIVI II PREVEDE LEZIONI A CARATTERE TEORICO PER IL TRASFERIMENTO DELLE CONOSCENZE RELATIVE ALLE SOLUZIONI PROVENIENTI DALLA RICERCA DI BASE NEL CAMPO DEI SISTEMI OPERATIVI ED ESERCITAZIONI PRATICHE IN LABORATORIO PER LA SPERIMENTAZIONE E LA VALUTAZIONE SPERIMENTALE DELLE PRESTAZIONI DELLE SOLUZIONI REALIZZATE NELL'AMBITO DI PROGETTI REALIZZATI DA GRUPPI DI STUDENTI.
Verifica dell'apprendimento
CIASCUN STUDENTE POTRÀ SCEGLIERE TRA DUE MODALITÀ D'ESAME:
LA PRIMA PREVEDE LA PARTECIPAZIONE ASSIDUA ALLE LEZIONI, UN SEMINARIO IN AULA BASATO SU UNA RACCOLTA DI ARTICOLI SCIENTIFICI E LA REALIZZAZIONE DI UN PROGETTO DI FINE ANNO I CUI RISULTATI SARANNO RACCOLTI IN UNA TESINA.
IN QUESTA PRIMA MODALITÀ D'ESAME SARANNO PREMIATE LA CAPACITÀ DI INSEGNAMENTO E DI SINTESI OLTRE CHE LA CHIAREZZA ESPOSITIVA MOSTRATE DURANTE IL SEMINARIO.
LA SECONDA È LA MODALITÀ TRADIZIONALE CON COLLOQUIO D'ESAME DURANTE IL QUALE LO STUDENTE PRESENTERÀ LA PROPRIA PREPARAZIONE SULL'INTERO PROGRAMMA DEL CORSO.
IN QUESTO CASO LA PARTE TEORICA SARÀ VALUTATA SULLA CAPACITÀ CRITICA DEGLI STUDENTI NECESSARIA PER VALUTARE LE SOLUZIONI PRESENTATE.
IN VIRTÙ DELL'AMPIEZZA DEL PROGRAMMA SARÀ PARTICOLARMENTE APPREZZATA LA CAPACITÀ DI SINTESI E LA CAPACITÀ DI INDIVIDUARE SOLUZIONI SPECIFICHE A PROBLEMI REALI.
LA PARTE RELATIVA AL LABORATORIO SARÀ VALUTATA IN FUNZIONE DELL'OTTIMALITÀ DELLE SCELTE EFFETTUATE NEL DISEGNO E L'IMPLEMENTAZIONE DELLA SOLUZIONE.

Testi
LISTA DEI SEGUENTI ARTICOLI SCIENTIFICI:
THOMAS E. ANDERSON ET AL, SERVERLESS NETWORK FILE SYSTEMS. PAGES 41-79, 1996.
ANDREW W. APPEL AND KAI LI. VIRTUAL MEMORY PRIMITIVES FOR USER PROGRAMS. IN ASPLOS, PAGES 96-107, 1991.
PAUL BARHAM ET AL.,XEN AND THE ART OF VIRTUALIZATION. IN SOSP, PAGES 164-177, 2003.
ANDREW BAUMANN ET AL.,THE MULTIKERNEL: A NEW OS ARCHITECTURE FOR SCALABLE MULTICORE SYSTEMS.IN PROCEEDINGS OF THE ACM SIGOPS 22ND SYMPOSIUM ON OPERATING SYSTEMS PRINCIPLES, SOSP '09, PAGES 29-44, NEW YORK, NY, USA, 2009. ACM.
BRIAN N. BERSHAD ET AL., EXTENSIBILITY, SAFETY AND PERFORMANCE IN THE SPIN OPERATING SYSTEM. IN SOSP, PAGES 267-284, 1995.
EDOUARD BUGNION ET AL. DISCO: RUNNING COMMODITY OPERATING SYSTEMS ON SCALABLE MULTIPROCESSORS. IN SOSP, PAGES 143-156, 1997.
GIUSEPPE CATTANEO, LUIGI CATUOGNO, ANIELLO DEL SORBO, AND PINO PERSIANO. THE DESIGN AND IMPLEMENTATION OF A TRANSPARENT CRYPTOGRAPHIC _LE SYSTEM FOR UNIX. IN USENIX ANNUAL TECHNICAL CONFERENCE, FREENIX TRACK, PAGES 199-212, 2001.
MICHAEL DAHLIN ET AL. COOPERATIVE CACHING: USING REMOTE CLIENT MEMORY TO IMPROVE _LE SYSTEM PERFORMANCE. IN OSDI, PAGES 267-280, 1994.
MATT DEBERGALIS ET AL. THE DIRECT ACCESS _LE SYSTEM. IN FAST, 2003.
DAWSON R. ENGLER, M. FRANS KAASHOEK, AND JAMES O'TOOLE. EXOKERNEL: AN OPERATING SYSTEM ARCHITECTURE FOR APPLICATION-LEVEL RESOURCE MANAGEMENT. IN SOSP, PAGES 251-266, 1995.
BENJAMIN GAMSA, ORRAN KRIEGER, JONATHAN APPAVOO, AND MICHAEL STUMM. TORNADO: MAXIMIZING LOCALITY AND CONCURRENCY IN A SHARED MEMORY MULTIPROCESSOR OPERATING SYSTEM. IN OSDI, PAGES 87-100, 1999.
SANJAY GHEMAWAT ET AL. THE GOOGLE _LE SYSTEM. IN SOSP, PAGES 29-43, 2003.
JEREY DEAN AND SANJAY GHEMAWAT. MAPREDUCE: SIMPLI_ED DATA PROCESSING ON LARGE CLUSTERS. IN OSDI, PAGES 137-150, 2004.
GARTH A. GIBSON ET AL., A COST-E_ECTIVE, HIGHBANDWIDTH STORAGE ARCHITECTURE. IN ASPLOS, PAGES 92-103, 1998.
HERMANN HARTIG ET AL., THE PERFORMANCE OF KERNEL-BASED SYSTEMS. IN SOSP, PAGES 66-77, 1997.
CARL HAUSER ET AL. USING THREADS IN INTERACTIVE SYSTEMS: A CASE STUDY. IN SOSP, PAGES 94-105, 1993.
JOHN H. HOWARD ET AL. SCALE AND PERFORMANCE IN A DISTRIBUTED _LE SYSTEM. PAGES 51-81, 1988.
M. FRANS KAASHOEK ET AL. APPLICATION PERFORMANCE AND EXIBILITY ON EXOKERNEL SYSTEMS. IN SOSP, PAGES 52-65, 1997.
JUDY KAY AND PIERS LAUDER. A FAIR SHARE SCHEDULER. PAGES 44-55, 1988.
JAMES J. KISTLER AND MAHADEV SATYANARAYANAN. DISCONNECTED OPERATION IN THE CODA _LE SYSTEM. PAGES 3-25, 1992.
JEANNA NEEFE MATTHEWS ET AL. QUANTIFYING THE PERFORMANCE ISOLATION PROPERTIES OF VIRTUALIZATION SYSTEMS. IN EXPERIMENTAL COMPUTER SCIENCE, PAGE 6, 2007.
ATHICHA MUTHITACHAROEN, BENJIE CHEN, AND DAVID MAZIERES. A LOW-BANDWIDTH NETWORK _LE SYSTEM. IN SOSP, PAGES 174-187, 2001.
DAVID A. PATTERSON ET AL. A CASE FOR REDUNDANT ARRAYS OF INEXPENSIVE DISKS (RAID). IN SIGMOD CONFERENCE, PAGES 109-116, 1988.
KARIN PETERSEN ET AL. FLEXIBLE UPDATE PROPAGATION FOR WEAKLY CONSISTENT REPLICATION. IN SOSP, PAGES 288-301, 1997.
RICHARD F. RASHID ET AL. MACHINE-INDEPENDENT VIRTUAL MEMORY MANAGEMENT FOR PAGED UNIPROCESSOR AND MULTIPROCESSOR ARCHITECTURES. PAGES 896- 907, 1988.
MENDEL ROSENBLUM AND JOHN K. OUSTERHOUT. THE DESIGN AND IMPLEMENTATION OF A LOG-STRUCTURED _LE SYSTEM. PAGES 26-52, 1992.
BIANCA SCHROEDER AND GARTH A. GIBSON. DISK FAILURES IN THE REAL WORLD: WHAT DOES AN MTTF OF 1, 000, 000 HOURS MEAN TO YOU? IN FAST, PAGES 1-16, 2007.
A. SILBERSCHATZ, P.B. GALVIN, G. GAGNE, V. MARRA, AND P. CODARA. SISTEMI OPERATIVI. CONCETTI ED ESEMPI. PEARSON, 2009 VIII EDIZIONE.
A. THEKKATH, ET AL. SEPARATING DATA AND CONTROL TRANSFER IN DISTRIBUTED OPERATING SYSTEMS. IN ASPLOS, PAGES 2-11, 1994.
Altre Informazioni
E-MAIL DEL DOCENTE: CATTANEO@UNISA.IT
  BETA VERSION Fonte dati ESSE3 [Ultima Sincronizzazione: 2016-09-30]