Skip to main content
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
If you continue browsing this website, you agree to our policies:
  • Condizioni di utilizzo e trattamento dei dati
Continue
x
e-Learning - UNIMIB
  • Home
  • My Media
  • More
Listen to this page using ReadSpeaker
English ‎(en)‎
English ‎(en)‎ Italiano ‎(it)‎
You are currently using guest access
 Log in
e-Learning - UNIMIB
Home My Media
Percorso della pagina
  1. Science
  2. Bachelor Degree
  3. Informatica [E3102Q - E3101Q]
  4. Courses
  5. A.A. 2023-2024
  6. 2nd year
  1. Operating Systems and Networks (blended)
  2. Summary
Insegnamento Course full name
Operating Systems and Networks (blended)
Course ID number
2324-2-E3101Q110
Course summary SYLLABUS

Course Syllabus

  • Italiano ‎(it)‎
  • English ‎(en)‎
Export

Obiettivi

Alla fine del corso lo studente conoscerà e saprà usare le principali astrazioni e i principali servizi offerti dai moderni sistemi operativi, ed avrà acquisito conoscenze di base relative alle architetture ed alle tecniche implementative dei moderni sistemi operativi. Inoltre, avrà acquisito le conoscenze fondamentali per comprendere l’architettura e i protocolli principali delle reti di telecomunicazioni basate sullo stack TCP/IP.

Contenuti sintetici

Introduzione ai sistemi operativi, Processi e thread, Scheduling della CPU, Gestione della memoria - memoria centrale, Gestione della memoria - memoria virtuale, File system, Introduzione alle Reti e a Internet, Strato di Applicazione, Strato di Trasporto, Strato di Rete - Piano dei Dati, Strato di Rete - Piano di Controllo, Strato di Collegamento e Reti Locali.

Programma esteso

Sistemi operativi

1: Introduzione ai sistemi operativi:

  • Struttura dei sistemi operativi
  • Servizi dei sistemi operativi
  • Chiamate di sistema

2: Processi e thread:

  • Processi e loro gestione
  • Comunicazione fra processi
  • Thread e programmazione multithreading

3: Scheduling della CPU:

  • Principali algoritmi di scheduling della CPU (in ordine di arrivo, per brevità, round-robin, con priorità)
  • Code multilivello con retroazione

4: Gestione della memoria - memoria centrale:

  • Allocazione contigua
  • Paginazione
  • Swapping

5: Gestione della memoria - memoria virtuale:

  • Memoria virtuale
  • Grado di multiprogrammazione
  • Allocazione e sostituzione pagine
  • Thrashing

6: File system:

  • File e attributi
  • Modelli di organizzazione del file system
  • Organizzazione della memoria secondaria

Reti

7: Introduzione alle Reti di Calcolatori e Internet:

  • Architettura delle reti
  • Definizione di protocollo
  • La commutazione di pacchetto
  • Architettura a strati e incapsulamento

8: Strato di Applicazione:

  • Domain Name System (DNS)

9: Strato di Trasporto:

  • Protocollo UDP
  • Principi del trasferimento dati affidabile (Stop-and-Wait, Go-Back-N, Selective Repeat)
  • Protocollo TCP

10: Strato di Rete - Piano dei Dati:

  • Architettura di un Router
  • Protocollo IPv4 e Indirizzamento IPv4
  • Network Address Translation (NAT)

11: Strato di Rete - Piano di Controllo:

  • Algoritmi di Instradamento (Link State, Distance Vector)
  • Instradamento Interno ai Sistemi Autonomi (OSPF)
  • Instradamento tra Sistemi Autonomi (BGP)
  • Internet Control Message Protocol (ICMP)

12: Strato di Collegamento e Reti Locali:

  • Servizi offerti
  • Protocolli di Accesso Multiplo (Protocolli ad Accesso Casuale, Protocolli a Rotazione)
  • Architettura di uno Switch
  • Protocollo Ethernet
  • Indirizzi a Livello di Collegamento e Address Resolution Protocol (ARP)

Prerequisiti

Conoscenze informatiche acquiste nei corsi di Architettura degli Elaboratori, Programmazione 1 e Programmazione 2

Modalità didattica

Lezioni in aula. Esercitazioni in e-learning mediante esercizi, test di autovalutazione e tutoraggio on-line.

Il corso verrà erogato in lingua italiana.

Materiale didattico

A. Silberschatz, P. Galvin, G. Gagne, "Sistemi Operativi - concetti ed esempi", 10ma Edizione, Pearson, ISBN: 978-88-9190-455-3

J. Kurose, K. Ross, "Reti di Calcolatori e Internet", 8va Edizione, Pearson, ISBN: 978-88-9191-600-6

Slides delle lezioni, esercizi ed altri materiali disponibili on-line

Periodo di erogazione dell'insegnamento

Secondo anno, primo semestre.

Modalità di verifica del profitto e valutazione

La verifica dell'apprendimento comprende una prova scritta, con la possibilità di prove intermedie parziali (in itinere).

Le prove in itinere sono due e si tengono a metà ed alla fine del corso. È necessario superarle entrambe per passare l'esame. Nel caso in cui una delle due prove in itinere non sia stata superata o non sia stata sostenuta, è possibile recuperarla nella prima sessione d'esame, purchè l'altra prova sia stata positivamente superata. Il superamento di una sola delle due prove in itinere non dà luogo ad alcun bonus per le successive prove d’esame completo.

Le prove comprendono sia domande a risposta chiusa sia domande a risposta aperta, in cui viene chiesta una argomentazione ragionata relativa ad uno degli argomenti del corso.

Orario di ricevimento

Prof. Braione: su appuntamento via email.

Prof. Savi: su appuntamento via email.

Export

Aims

The student shall learn what are the main abstractions and services that a modern operating system offers, how to use them, and the basic concepts about the architectures and implementation strategies of modern operating systems. Moreover, the student will acquire knowledge about the fundamental architecture and protocols of TCP/IP telecommunication networks.

Contents

Introduction to operating systems, Processes and threads, CPU scheduling, Memory management - main memory, Memory management - virtual memory, File system, Introduction to Networks and the Internet, Application Layer, Transport Layer, Network Layer - Data Plane, Network Layer - Control Plane, Link Layer and Local Area Networks.

Detailed program

Operating Systems

1: Introduction to operating systems:

  • Structure of operating systems
  • Services offered by operating systems
  • System calls

2: Processes and threads:

  • Processes and their management
  • Interprocess communication
  • Threads and multithreading programming

3: CPU scheduling:

  • Main CPU scheduling algorithms (first-come first-served, shortest job first, round-robin, priority)
  • Multilevel queues with feedback

4: Memory management - main memory:

  • Contiguous allocation
  • Paging
  • Swapping

5: Memory management - virtual memory:

  • Virtual memory
  • Degree of multiprogramming
  • Page allocation and substitution
  • Thrashing

6: File system:

  • Files and attributes
  • File system structure and organization models
  • Secondary storage organization

Networks

7: Introduction to Computer Networks and the Internet:

  • Network architecture
  • Definition of protocol
  • Packet switching
  • Layered architecture and encapsulation

8: Application Layer:

  • Domain Name System (DNS)

9: Transport Layer:

  • UDP protocol
  • Principles of reliable data transfer (Stop-and-Wait, Go-Back-N, Selective Repeat)
  • TCP protocol

10: Network Layer - Data Plane:

  • Router architecture
  • IPv4 protocol and IPv4 addressing
  • Network Address Translation (NAT)

11: Network Layer - Control Plane:

  • Routing algorithms (Link State, Distance Vector)
  • Interior Gateway Routing Protocols (OSPF)
  • Border Gateway Protocol (BGP)
  • Internet Control Message Protocol (ICMP)

12: Link Layer and Local Networks:

  • Offered services
  • Multiple Access Protocols (Random Access Protocols, Taking-Turns Protocols)
  • Switch architecture
  • Ethernet protocol
  • Link Layer addresing and Address Resolution Protocol (ARP)

Prerequisites

The fundamental concepts taught in the following courses: Computer Architecture, Programming 1 and Programming 2

Teaching form

Classroom lectures, e-learning exercises and self-assessments and on-line tutoring.

The course will be held in Italian.

Textbook and teaching resource

A. Silberschatz, P. Galvin, G. Gagne, "Sistemi Operativi - concetti ed esempi", 10th Edition, Pearson, ISBN: 978-88-9190-455-3 (also available in English, entitled "Operating Systems Concepts", 10th Edition)

J. Kurose, K. Ross, "Reti di Calcolatori e Internet", 8va Edizione, Pearson, ISBN: 978-88-9191-600-6 (also available in English, entitled “Computer Networking: A Top-Down Approach”, 8th Edition)

Slides of lessons, exercises and other material will be available on-line

Semester

Second year, first semester.

Assessment method

The assessment consists in a written test, with the possibility of partial intermediate tests (in itinere).

There are two in itinere tests and are held in the middle and at the end of the course. It is necessary to pass both of them to pass the exam. In the event that one of the two in itinere tests has not been passed or has not been sustained, it is possible to recover it in the first exam session, provided that the other test has been positively passed. Passing only one of the two in itinere tests does not give rise to any bonus for the subsequent full examination tests.

The tests include both multiple choice questions and open-ended questions, requiring a reasoned argument on one of the course topics.

Office hours

Prof. Braione: by appointment via email.

Prof. Savi: by appointment via email.

Enter

Key information

Field of research
INF/01
ECTS
8
Term
First semester
Activity type
Mandatory
Course Length (Hours)
72
Degree Course Type
Degree Course
Language
Italian

Staff

    Teacher

  • Pietro Braione
    Pietro Braione
  • Jacopo Maltagliati
    Jacopo Maltagliati
  • SR
    Samuele Redaelli
  • Marco Savi
    Marco Savi

Students' opinion

View previous A.Y. opinion

Bibliography

Find the books for this course in the Library

Enrolment methods

Manual enrolments
Self enrolment (Student)

You are currently using guest access (Log in)
Policies
Get the mobile app
Powered by Moodle
© 2025 Università degli Studi di Milano-Bicocca
  • Privacy policy
  • Accessibility
  • Statistics