Sistemi operativi e reti di calcolatori

A.Y. 2021/2022
Overall hours
Learning objectives
The present course aims at supplying skills in the fields of both modern operating systems and the main services provided by computer networks, directed to gaining abilities in configuring and using one's own computer system, and in controlling and analyzing the computer network the system is connected to, thus wholly leveraging all their potentialities.
The main goal is making students familiar - also under a practical point of view - with the usage of the main tools to control and manage both operating systems and network devices.
Expected learning outcomes
As far as operating systems are concerned, natural outcomes are:
(i) comprehension of the functioning of computer systems,
(ii) ability in configuring and managing the work of one's computer system, with particular attention to the management of program execution, the sharing of resources with other users, and the usage of the computer system's command language.
Other expected results concerning computer networks are:
(i) comprehension of the functioning of the main network protocols and services,
(ii) ability in configuring the mentioned protocols and devices to make a simple home network,
(iii) ability in verifying and controlling the proper work and security of a computer network.
Course syllabus and organization

Single session

Lesson period
Second semester
More specific information on the delivery modes of training activities for academic year 2021/22 will be provided over the coming months, based on the evolution of the public health situation.
Course syllabus
· Operating system architectures
o driver, kernel, shell, memory hierarchy (cache, RAM, disk) and characteristics of the hierarchy levels
command prompt; commands help (Windows) and man (Unix)
· Management of the main and secondary memory units
o peripheral devices format: disk, USB unit, external backup disk
Guidelines for organizing disk space (OS allocation vs. stored user data)
Calculation of disk partition sizes
· File system management
o File system structure; absolute and relative path; relevant system files and folders
Directory browsing → commands for Windows (W) and Unix (U) systems (cd, pwd ...)
Access to / search in file contents (commands echo, cat, more, grep, diff, findstr, fc, comp ...)
Changing file characteristics (e.g. rename commands, change owner and privileges, chown, attrib, cacls commands ...)
File system construction: (u) mount operations
Modifying file system structure (e.g. commands mkdir, rmdir, copy, move, delete, rd ...)
Modifying file system structure: W / U commands for creating links between files (ln commands, mklink ...)
· Managing processes
o Particular system processes; identification processes; execution mode
Execution, generation, killing of processes (commands fork, kill, taskkill ...)
List of active processes (ps commands, tasklist ...)
Use of system resources by processes (vm_stat ... commands)
Execution mode: foreground, background, batch (commands &, at, fg, bg ...)
o Communication between processes
Pipe, fifo, input / output redirection (commands |,>, <...>· Command shell and scripting
o Environment variables
Path commands (U) and together (W)
o Shell programming: shell scripting (U); Windows Scripting Host (W)
for, if structures. Command aliasing.
· Virtual machine management
Installation (VirtualBox); features configuration; host operating system installation; VM communication ← → guest machine

· Network architecture: TCP / IP stack
o System files relevant to the operation of the network
· Fundamental protocols
o Secure Shell
Ssh client installation on your PC; usage of ssh tools for remote host access
or DNS
Search for resources and services on the network (e.g. host commands, nslookup)
o IP: addressing schemes; basic notions of routing
Address configuration (static or dynamic) and PC network parameters
or ARP
PC configuration analysis (e.g. ifconfig, arp, route ... commands)
Network functioning test (e.g. ping, traceroute, tcpdump, wireshark)
· Resource sharing
o Printer configuration; active directory (W); shared folders (W)
· home equipment configuration
o Switch
VLAN configuration
o Router
VPN configuration; security: access control list (e.g. CACLS command on PC)
Prerequisites for admission
Pre-requisites: contents from the courses Programmazione I (computer programming), Algoritmi e strutture dati (algorithms and data structures).
Teaching methods
in-presence (in Italian)
Teaching Resources
to be defined
Assessment methods and Criteria
The exam consists of a written/practical assignment relating to the topics covered in the course. The assignment aims to verify the student's knowledge of all aspects of the subject, both through practical exercises and through open-ended questions.
The exam mark, expressed in thirtieths, takes into account the level of mastery of the topics, the clarity of explanation, and the appropriateness of the technical language.
INF/01 - INFORMATICS - University credits: 6
Laboratories: 12 hours
Lessons: 35 hours
Professor: Pagani Elena
Friday, 2:30 PM - 3:30 PM
online (Zoom) till the end of the Covid emergency