Differenze tra le versioni di "Sistemi operativi e distribuiti T1/2005-2006"
(→Links utili) |
|||
(27 versioni intermedie di 6 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
− | [[Categoria:Corsi | + | [[Categoria:Corsi 2005-2006]] |
<!-- non cancellare le righe precedenti --> | <!-- non cancellare le righe precedenti --> | ||
Riga 39: | Riga 39: | ||
=== Modalità d'esame === | === Modalità d'esame === | ||
+ | ''AVVISO: IL SECONDO COMPITINO SI TERRA' MERCOLEDI 21 GIUGNO 2006'' | ||
Gli step sono 2: teoria e progetto. | Gli step sono 2: teoria e progetto. | ||
− | * La Teoria è indispensabile per accedere al progetto e la sua validità è infinita (quindi anche dopo gennaio 2007 per intenderci). Ci sono due modi per superarla: il primo consiste nel superamento di due compitini in itinere, oppure affrontare il classico scritto di fine corso. Per questa parte non e' prevista scrittura di codice. | + | * La Teoria è indispensabile per accedere al progetto e la sua validità è infinita (quindi anche dopo gennaio 2007 per intenderci). Ci sono due modi per superarla: il primo consiste nel superamento di due compitini in itinere (che presentano domande a risposta multipla, a risposta aperta e degli esercizi), oppure affrontare il classico scritto di fine corso. Per questa parte non e' prevista scrittura di codice. |
* Il Progetto è individuale e sarà realizzato in Java. E' consigliabile quindi aver già sostenuto l'esame di FAP (I° Semestre). A discrezione dei docenti, potra` essere richiesta una discussione dell'elaborato. La traccia del progetto sarà disponibile martedì mattina, la consegna sarà fissata il venerdì della stessa settimana (sera). Il progetto chiaramente è proporzionato al tempo di svolgimento. Il sito per lo scaricamento della traccia e la sua consegna e' http://netdev.usr.dico.unimi.it/teaching/homeworks/sod.php | * Il Progetto è individuale e sarà realizzato in Java. E' consigliabile quindi aver già sostenuto l'esame di FAP (I° Semestre). A discrezione dei docenti, potra` essere richiesta una discussione dell'elaborato. La traccia del progetto sarà disponibile martedì mattina, la consegna sarà fissata il venerdì della stessa settimana (sera). Il progetto chiaramente è proporzionato al tempo di svolgimento. Il sito per lo scaricamento della traccia e la sua consegna e' http://netdev.usr.dico.unimi.it/teaching/homeworks/sod.php | ||
Riga 101: | Riga 102: | ||
=== LUN 20.03.06 - Dischi=== | === LUN 20.03.06 - Dischi=== | ||
− | + | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/006_disk_optimization.pdf '''Ottimizzazione dei Dischi'''] | |
* Rotating Media | * Rotating Media | ||
* Dentro all'Hard Disk | * Dentro all'Hard Disk | ||
* Disk Optimization | * Disk Optimization | ||
− | * | + | * FCFS |
* SSTP | * SSTP | ||
* Scan | * Scan | ||
Riga 114: | Riga 115: | ||
=== LUN 27.03.06 - Processi=== | === LUN 27.03.06 - Processi=== | ||
− | ''Slide''[http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/007_processi.pdf '''Processi'''] | + | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/007_processi.pdf '''Processi'''] |
=== MER 29.03.06 - Scheduling the CPU=== | === MER 29.03.06 - Scheduling the CPU=== | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/008_scheduling.pdf '''Scheduling'''] | ||
+ | |||
* Model of process execution | * Model of process execution | ||
* Lo scheduler è un processo | * Lo scheduler è un processo | ||
* Voluntary CPU sharing | * Voluntary CPU sharing | ||
− | * | + | * Yield |
− | * | + | * Policies consideration |
* Talking about Scheduling | * Talking about Scheduling | ||
* Deadline Scheduling | * Deadline Scheduling | ||
* Multi-level Queues | * Multi-level Queues | ||
+ | |||
+ | === LUN 03.04.06 - === | ||
+ | |||
+ | === MER 05.04.06 - Esercitazione per il primo compitino=== | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/009_esercitazioni_1.pdf '''Esercitazione'''] | ||
+ | |||
+ | === LUN 10.04.06 - Sincronizzazione === | ||
+ | ''(gli argomenti successivi saranno oggetto del secondo compitino)'' | ||
+ | |||
+ | * Concorrenza | ||
+ | * Critical Section (come si risolve?) | ||
+ | ** Disabling Interrupt | ||
+ | ** Busy-wait condition | ||
+ | *** Deadlocked pirates | ||
+ | ** I semafori di Dijkstra | ||
+ | *** Definizione dei semafori di Dijkstra | ||
+ | ** Bounded Buffer problem | ||
+ | |||
+ | === MER 12.04.06 - LEZIONE ANNULLATA === | ||
+ | |||
+ | === MER 19.04.06 - I compitino === | ||
+ | tempo disponibile 1h e 45min | ||
+ | |||
+ | *10 quesiti a risposta multipla (4 possibilità) | ||
+ | *2 domande a risposta aperta | ||
+ | *4 esercizi riguardanti lo scheduling e la lettura da disco (2 per ognuno) | ||
+ | |||
+ | === MER 26.04.06 - Sincronizzazione === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/010_sincronizzazione.pdf '''Sincronizzazione'''] | ||
+ | |||
+ | === VEN 05.05.06 - Sincronizzazione === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/011_deadlock.pdf '''Deadlock'''] | ||
+ | * Sincronizzazione | ||
+ | * Deadlock parte I | ||
+ | |||
+ | === LUN 08.05.06 - Deadlock + Sincronizzazione hl === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/012_sincronizzazione_hl.pdf '''Sincronizzazione high level'''] | ||
+ | * Avoidance | ||
+ | * Prevention | ||
+ | * Attesa circolare | ||
+ | |||
+ | * Sincronizzazione ad alto livello | ||
+ | ** Generale | ||
+ | ** and Synch | ||
+ | ** Simultaneous semaphores | ||
+ | ** eventi | ||
+ | ** i segnali di Unix | ||
+ | |||
+ | === MER 10.05.06 - Sincronizzazione ad alto livello === | ||
+ | * Sincronizzazione ad alto livello | ||
+ | |||
+ | === LUN 15.05.06 - Gestione della memoria === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/013_gestione_memoria.pdf '''Gestione memoria'''] | ||
+ | * Gestione della memoria | ||
+ | |||
+ | === MER 17.05.06 === | ||
+ | |||
+ | === LUN 22.05.06 - Gestione della memoria II === | ||
+ | * (continua) Gestione della memoria | ||
+ | |||
+ | === MER 24.05.06 === | ||
+ | |||
+ | === LUN 29.05.06 - Memoria Virtuale === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/014_memoria_virtuale.pdf '''Memoria virtuale'''] | ||
+ | |||
+ | * File Management | ||
+ | |||
+ | === MER 31.05.06 - File Management === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/015_file_management.pdf '''File Management'''] | ||
+ | |||
+ | === LUN 05.06.06 - Security === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/016_sicurezza.pdf '''Sicurezza'''] | ||
+ | |||
+ | * Introduzione | ||
+ | ** Computer Security | ||
+ | ** Network Security | ||
+ | * Principali problemi | ||
+ | * Aspetti fondamentali | ||
+ | ** Attacchi sicurezza | ||
+ | ** Meccaniscmi di sicurezza | ||
+ | ** Servizi di sicurezza | ||
+ | * Attacchi alla sicurezza | ||
+ | ** Interruption | ||
+ | ** Interception | ||
+ | ** Modification | ||
+ | ** Fabrication | ||
+ | * Attacchi passivi e attivi | ||
+ | ** Release of message contents | ||
+ | ** Traffic analysis | ||
+ | ** Masquerable | ||
+ | ** Replay | ||
+ | ** Modification of message content | ||
+ | ** Denial of service | ||
+ | * Servizi di sicurezza per attacchi passivi | ||
+ | ** Attacco attivo | ||
+ | ** Servizi di sicurezza | ||
+ | * Autenticazione | ||
+ | * Controllo degli accessi | ||
+ | * Integrità | ||
+ | * Disponibilità | ||
+ | ** Crittografia | ||
+ | ** Meccanismi di sicurezza | ||
+ | ** Symmetric Key Cryptografy | ||
+ | ** Public Key Cryptografy | ||
+ | ** Simmetricità delle chiavi | ||
+ | ** Meccanismi di sicurezza: integrità e non ripudiabilità | ||
+ | ** Firewall | ||
+ | ** I Livelli | ||
+ | * La Pila ISO-OSI | ||
+ | ** Layer 1 Fisico | ||
+ | ** Layer 2 Datalink | ||
+ | ** Layer 3 Network | ||
+ | ** Layer 4 Transport | ||
+ | ** Layer 5 Session | ||
+ | ** Layer 7 Applicazione | ||
+ | |||
+ | === MER 07.06.06 LEZIONE ANNULLATA - FINE TEORIA === | ||
+ | |||
+ | === LUN 12.06.06 - I lezione Java Concorrente === | ||
+ | ''Slide'' [http://netdev.usr.dico.unimi.it/teaching/2005-2006/SOD/017_java_concorrente.pdf '''Java Concorrente I'''] | ||
+ | |||
+ | * Introduzione alla programmazione concorrente | ||
+ | |||
+ | === MER 14.06.06 - II lezione Java Concorrente === | ||
+ | * | ||
+ | * Svolgimento ultimo elaborato | ||
+ | |||
+ | === VEN 16.06.06 - III lezione Java Concorrente === | ||
+ | * Svolgimento ultimo elaborato - continua | ||
+ | * Svolgimento parziale elaborato (macchine sulla pista) |
Versione attuale delle 17:23, 2 ago 2006
Indice
- 1 Informazioni generali
- 2 Diario del corso
- 2.1 LUN 6.03.06 - Intro
- 2.2 MER 8.03.06 - Organizzazione dei Sistemi Operativi
- 2.3 LUN 13.03.06 - Architettura dei Sistemi di Calcolo
- 2.4 MER 15.03.06 - Device Management
- 2.5 LUN 20.03.06 - Dischi
- 2.6 MER 22.03.06 - LEZIONE ANNULLATA
- 2.7 LUN 27.03.06 - Processi
- 2.8 MER 29.03.06 - Scheduling the CPU
- 2.9 LUN 03.04.06 -
- 2.10 MER 05.04.06 - Esercitazione per il primo compitino
- 2.11 LUN 10.04.06 - Sincronizzazione
- 2.12 MER 12.04.06 - LEZIONE ANNULLATA
- 2.13 MER 19.04.06 - I compitino
- 2.14 MER 26.04.06 - Sincronizzazione
- 2.15 VEN 05.05.06 - Sincronizzazione
- 2.16 LUN 08.05.06 - Deadlock + Sincronizzazione hl
- 2.17 MER 10.05.06 - Sincronizzazione ad alto livello
- 2.18 LUN 15.05.06 - Gestione della memoria
- 2.19 MER 17.05.06
- 2.20 LUN 22.05.06 - Gestione della memoria II
- 2.21 MER 24.05.06
- 2.22 LUN 29.05.06 - Memoria Virtuale
- 2.23 MER 31.05.06 - File Management
- 2.24 LUN 05.06.06 - Security
- 2.25 MER 07.06.06 LEZIONE ANNULLATA - FINE TEORIA
- 2.26 LUN 12.06.06 - I lezione Java Concorrente
- 2.27 MER 14.06.06 - II lezione Java Concorrente
- 2.28 VEN 16.06.06 - III lezione Java Concorrente
Informazioni generali
Sistemi operativi e distribuiti è un corso per la laurea triennale in Comunicazione Digitale.
Docenti
Orari delle lezioni
- Lunedì 10:30-12:30 (effettiva 10.45 - 12.15)
- Mercoledì 09:30-11:30 (effettiva 09.45 - 11.15)
Dove: V1, Via Venezian 15 Settore Didattico (6)
Orario di ricevimento studenti
Mercoledì h. 14.00 in Via Comelico, 8
Sito del corso
All'url [1] sito del prof. Bellettini Forum DiCo del Corso
Materiale didattico
I prof. Bellettini e Maggiorini grazie alla Pearson hanno redatto una selezione dei paragrafi del precedente libro utilizzato negli scorsi anni (Operating Systems - Gary Nutt) che saranno il punto di riferimento del corso, ma sempre in inglese.
Il libro è: "Sistemi Operativi e Distribuiti" (ISBN 1-84658-582387) ed è possibile trovarlo presso la libreria CLUED di Via Celoria 20, solo qui, in quanto ne sono state stampate solamente 100 copie (52€).
Links utili
Modalità d'esame
AVVISO: IL SECONDO COMPITINO SI TERRA' MERCOLEDI 21 GIUGNO 2006
Gli step sono 2: teoria e progetto.
- La Teoria è indispensabile per accedere al progetto e la sua validità è infinita (quindi anche dopo gennaio 2007 per intenderci). Ci sono due modi per superarla: il primo consiste nel superamento di due compitini in itinere (che presentano domande a risposta multipla, a risposta aperta e degli esercizi), oppure affrontare il classico scritto di fine corso. Per questa parte non e' prevista scrittura di codice.
- Il Progetto è individuale e sarà realizzato in Java. E' consigliabile quindi aver già sostenuto l'esame di FAP (I° Semestre). A discrezione dei docenti, potra` essere richiesta una discussione dell'elaborato. La traccia del progetto sarà disponibile martedì mattina, la consegna sarà fissata il venerdì della stessa settimana (sera). Il progetto chiaramente è proporzionato al tempo di svolgimento. Il sito per lo scaricamento della traccia e la sua consegna e' http://netdev.usr.dico.unimi.it/teaching/homeworks/sod.php
Non sono previsti orali.
Diario del corso
LUN 6.03.06 - Intro
Slide Presentazione del corso
Slide Introduzione ai Sistemi Operativi
- Uso del Forum, mezzi di comunicazione con il docente
- Introduzione ai sistemi operativi
MER 8.03.06 - Organizzazione dei Sistemi Operativi
Slide Organizzazione dei Sistemi Operativi
- Device Management
- Process, Thread, and resuorce management
- Memory Management
- OS Design Constraints
- Performance
- Protection and Security
- Protezione Hardware
- Protezione CPU
- The UNIX Architecture
- Microkernel organization
LUN 13.03.06 - Architettura dei Sistemi di Calcolo
Slide Architettura dei Sistemi di calcolo
- Architettura dei Sistemi Operativi
- Windows NT/2000 Architecture
- Program Specification
- Machine Language
- The Von Neumann Architecture
- ALU
- CU
- Primary Memory Unit
- Device Controller Interface
- Addressing Devices
- Performing a write operation
- Accesso diretto alla memoria (DMA)
MER 15.03.06 - Device Management
Slide Gestione delle periferiche
- Input/Output Devices
- The device driver interface
- System call interface
- Device Management Organization
- Device Independent Function call
- Overlapping the operation of a device and the CPU
- Overlapping processing and I/O
- Interrupt drive I/O operation
- Differenziazione dei Device
- A generic communication device
- Rootating Media
- Disk Optimization
LUN 20.03.06 - Dischi
Slide Ottimizzazione dei Dischi
- Rotating Media
- Dentro all'Hard Disk
- Disk Optimization
- FCFS
- SSTP
- Scan
- CD - Compact Disk
- CD - Struttura logica
MER 22.03.06 - LEZIONE ANNULLATA
LUN 27.03.06 - Processi
Slide Processi
MER 29.03.06 - Scheduling the CPU
Slide Scheduling
- Model of process execution
- Lo scheduler è un processo
- Voluntary CPU sharing
- Yield
- Policies consideration
- Talking about Scheduling
- Deadline Scheduling
- Multi-level Queues
LUN 03.04.06 -
MER 05.04.06 - Esercitazione per il primo compitino
Slide Esercitazione
LUN 10.04.06 - Sincronizzazione
(gli argomenti successivi saranno oggetto del secondo compitino)
- Concorrenza
- Critical Section (come si risolve?)
- Disabling Interrupt
- Busy-wait condition
- Deadlocked pirates
- I semafori di Dijkstra
- Definizione dei semafori di Dijkstra
- Bounded Buffer problem
MER 12.04.06 - LEZIONE ANNULLATA
MER 19.04.06 - I compitino
tempo disponibile 1h e 45min
- 10 quesiti a risposta multipla (4 possibilità)
- 2 domande a risposta aperta
- 4 esercizi riguardanti lo scheduling e la lettura da disco (2 per ognuno)
MER 26.04.06 - Sincronizzazione
Slide Sincronizzazione
VEN 05.05.06 - Sincronizzazione
Slide Deadlock
- Sincronizzazione
- Deadlock parte I
LUN 08.05.06 - Deadlock + Sincronizzazione hl
Slide Sincronizzazione high level
- Avoidance
- Prevention
- Attesa circolare
- Sincronizzazione ad alto livello
- Generale
- and Synch
- Simultaneous semaphores
- eventi
- i segnali di Unix
MER 10.05.06 - Sincronizzazione ad alto livello
- Sincronizzazione ad alto livello
LUN 15.05.06 - Gestione della memoria
Slide Gestione memoria
- Gestione della memoria
MER 17.05.06
LUN 22.05.06 - Gestione della memoria II
- (continua) Gestione della memoria
MER 24.05.06
LUN 29.05.06 - Memoria Virtuale
Slide Memoria virtuale
- File Management
MER 31.05.06 - File Management
Slide File Management
LUN 05.06.06 - Security
Slide Sicurezza
- Introduzione
- Computer Security
- Network Security
- Principali problemi
- Aspetti fondamentali
- Attacchi sicurezza
- Meccaniscmi di sicurezza
- Servizi di sicurezza
- Attacchi alla sicurezza
- Interruption
- Interception
- Modification
- Fabrication
- Attacchi passivi e attivi
- Release of message contents
- Traffic analysis
- Masquerable
- Replay
- Modification of message content
- Denial of service
- Servizi di sicurezza per attacchi passivi
- Attacco attivo
- Servizi di sicurezza
- Autenticazione
- Controllo degli accessi
- Integrità
- Disponibilità
- Crittografia
- Meccanismi di sicurezza
- Symmetric Key Cryptografy
- Public Key Cryptografy
- Simmetricità delle chiavi
- Meccanismi di sicurezza: integrità e non ripudiabilità
- Firewall
- I Livelli
- La Pila ISO-OSI
- Layer 1 Fisico
- Layer 2 Datalink
- Layer 3 Network
- Layer 4 Transport
- Layer 5 Session
- Layer 7 Applicazione
MER 07.06.06 LEZIONE ANNULLATA - FINE TEORIA
LUN 12.06.06 - I lezione Java Concorrente
Slide Java Concorrente I
- Introduzione alla programmazione concorrente
MER 14.06.06 - II lezione Java Concorrente
- Svolgimento ultimo elaborato
VEN 16.06.06 - III lezione Java Concorrente
- Svolgimento ultimo elaborato - continua
- Svolgimento parziale elaborato (macchine sulla pista)