Docente: G. Ianni Esercitatori: A. Martello (Sistemi Operativi), V. Lio (Reti) Sito del corso: Google ‘sistemi operativi e reti unical’ Gruppo FB («Sistemi Operativi e Reti UNICAL»): https://www.facebook.com/groups/191852054220513/ Corso diviso in due parti distinte: Sistemi Operativi (48 ore) Reti di Calcolatori (48 ore) Studenti in corso * Ci si può presentare all’esame o avere l’assegnazione del progetto solo se si è sostenuto «Programmazione ad Oggetti» * Fortemente richiesta la conoscenza di Java * Esame in tre parti: 1. Scritto in laboratorio 2. Progetto con sua discussione 3. Orale Il voto parziale di 1 e 2 può essere conservato fino al 31 Dicembre del 2199. Studenti V.O. (fuori corso) * Continueranno ad esserci appelli separati per SO e Reti, fino all’esaurimento degli studenti, secondo le vecchie regole * ORARIO Programma del Modulo: * Gestione dei file, dei processi e della memoria. * Linguaggi di scripting: Perl * Programmazione multithreading * Case studies: Linux (tanto), Windows (il giusto), Mobile OSes * Testi suggeriti e materiale: * * * * * * A. Silberschatz: Operating Systems concepts (5 o 6 edizione). Addison-Wesley, Deitel & Deitel, Operating Systems. The Java tutorial online: concurrency. Learning Perl, ed. O’Reilly. Concurrency: State Models & Java Programs, ed. Wiley Materiale disponibile sul sito del corso e sul sito del vecchio corso di SO. * Parte dell’esame che riguarda questo modulo: esame scritto, prova orale. Operating System Concepts Users Human users – Nonhuman users Applications Winword.exe, Excel.exe, emule.exe, firefox.exe, apache.exe…. Operating System Memory Manager Process Scheduler Hardware RAM CPU(s) Operating System Concepts Accounting HAL (Hardware abstraction layer) Mass Memory Network Devices Input Devices Display Devices * * Una raccolta di software predefiniti Scopo primario: Gestire le risorse di un calcolatore 1. 2. 3. 4. 5. 6. 7. Generalizzare l’uso delle periferiche tramite un interfaccia comune Funzioni di libreria comuni per le più grandi categorie di periferiche Gestire la memoria primaria (RAM) Allocazione e Protezione Gestire la memoria secondaria (Dischi fissi, ecc. ) Mappatura sul dispositivo fisico Organizzazione Gestione degli errori Gestire i processi e i thread Scheduling, accesso condiviso alle risorse Gestire gli eventi e l’interfaccia utente Cattura e smistamento degli eventi ai processi Gestire i diritti di accesso e la presenza di più utenti Accesso multiplo, quote, diritti di accesso Gestire la rete Applicazioni distribuite, condivisione di risorse, socket Operating System Concepts MS-DOS CP/M Multics OS/2 Windows 3 Unix Windows NT Windows 95/98/ME Linux Windows 2000/XP FreeBSD, Solaris Mac OS Windows Vista, Windows Server 2008 Windows 7 Mac OS X, iOS Ubuntu, Debian, Mint, Mandriva.. Operating System Concepts Windows 8 Android, Tizen..