Codice insegnamento: E3101Q008
Docente responsabile:
Flavio De Paoli (turno A) – Roberto Bisiani (turno B)
PROGRAMMA:
Obiettivi e contenuti:
L'insegnamento fornisce conoscenze sulla struttura dei sistemi operativi, sui modelli della concorrenza e dei sistemi distribuiti e loro realizzazione in Java, infine sulle attuali tecnologie informatiche per la comunicazione wireless. Una parte di attività, svolta in laboratorio, fornisce competenze pratiche di base.
Programma:
- Architettura a livelli di un Sistema Operativo;
- Kernel; Scheduling dei processi; Gestione della memoria;
- Shell di Unix e system call;
- Comunicazione fra processi; Gestione del file system;
- Modellazione di sistemi concorrenti con automi a stati finiti;
- Realizzazione di programmi concorrenti in Java: threads e monitors
- Le socket: il modello di comunicazione e architettura di semplici sistemi client-server.
- Architettura delle applicazioni Web: Servlet e JSP.
- Sistemi distribuiti: i modelli peer-to-peer e RPC. Esemplificazioni con Java-RMI.
- Reti wireless: architettura generale, livello fisico e livello MAC;
- Protocolli wireless: WiFi, Bluetooth, WiMax; Protocolli GSM e UMTS;
Risultati di apprendimento previsti:
- Capacità di configurare e amministrare un sistema operativo di un elaboratore,
- Capacità di sviluppare programmi concorrenti e con funzioni distribuite su rete,
- Capacità di utilizzare canali di comunicazione digitale senza fili
Prerequisiti:
Architettura degli Elaboratori
Aims and contents:
To gain knowledge of the internal structure of operating systems, concurrency models and distributed architectures, and wireless networking technologies. Practical activities will also be performed in the laboratory.
Program details:
- Layers in Operating Systems Architecture
- Kernel; Process scheduling; Memory Management
- Unix shell and systems calls
- Process inter-communication; File systems
- Modelling concurrency by finite state automata
- Development of Java concurrent programs: threads and monitors
- Sockets: communication model and simple client-server systems architecture.
- The architecture of Web applications: Serlets and JSP.
- Distributed systems: peer-to-peer models and RPC. Examples with Java-RMI.
- Wireless networks: architecture, physical and MAC levels
- Wireless protocols: WiFi, Bluetooth, WiMax; GSM and UMTS protocols
Learning outcomes:
- Skills: tuning and administration of the operating system of a computer,
- development of concurrent software systems, with network-distributed services
- optimized use of wireless digital communication networks
Prerequisites:
Computer Architecture
Tipo esame:
Scritto con domande aperte ed esercizi in laboratorio
Tipo valutazione:
Voto finale