Operating Systems Ii

A.Y. 2019/2020
6
Max ECTS
48
Overall hours
SSD
ING-INF/05
Language
Italian
Learning objectives
The course will allow the student to understand the main concepts underneath the realization of an operating system, its main functionalities and to acquire mastery in the use of the main API of the Linux operating system. In order to provide students with a better understanding of the different topics addressed, the study of the main components of an educational operating system will be addressed.
Expected learning outcomes
At the end of the course the student will be able to: identify the main features of an operating system, evaluate its criticalities and strengths, write programs that use the main operating system APIs, read and comment on the code of a real operating system
Single course

This course cannot be attended as a single course. Please check our list of single courses to find the ones available for enrolment.

Course syllabus and organization

Single session

Responsible
Course syllabus
The course analyses architectures, features, mechanisms, policies, and management of operating systems with respect to the management of the central memory, the input/output devices, the file systems, the user interface and the distributed operating systems for different information processing architectures (mono-processors, multi-processors, clusters, distributed systems, embedded systems) targeted to the main application areas (transactional systems, interactivity, multimedia, office automation, telecommunications, industrial control, robotics, embedded applications). This course is directed to deepen the competences in designing and managing operating systems, with specific reference to design techniques, configuration, and optimization with respect to the management of the central memory, the input/output devices, the file systems, the user interface and the distributed operating systems.

· Virtualization of the main memory: storage policies; architectural support; consistency, fault and software errors tolerance, security and protection; design of algorithms and data structures for main memory virtualization.

· Virtualization of the input/output devices: management mechanisms and policies for different kinds of devices and interfaces, clock, time ordering of events in distributed systems, coordination; disks; terminals; printers; special peripherals and operating systems' support for IT networks; real-time aspects, fault and software errors tolerance, security and protection; design of algorithms and data structures for input/output device virtualization.

· Abstraction of the representation of physical and information resources: files, file system, network and distributed file system, resources identification policies; consistency, caching, backup, fault and software errors tolerance, protection and access security, design of algorithms and data structures for resources abstraction.

· User interface: kinds of interpreters and user interfaces (programmed, text, graphics, multimedia, distributed, mobile agents); management mechanisms and policies for user interfaces; management and access security, fault and software errors tolerance, design of algorithms and data structures for the user interface.

· Operating systems for distributed architectures: processes execution, synchronization and communication between processes, deadlock management, devices management, file system management.
Prerequisites for admission
Knowledge of basic concepts of computer science, computer architecture, computer programming.
Due to requirements established by the Academic Programs Committee, it is compulsory to have first passed the exam of Computer Programming.
Teaching methods
Recorded lectures.
Teaching Resources
A. Silberschatz, G. Gagne, P.B. Galvin, Operating Systems Concepts, Wiley
or any similar book covering all topics

Slides and videorecorded lectures will be available on the course website: https://vpiuriso.ariel.ctu.unimi.it/
Assessment methods and Criteria
Written exam aimed at verifying the student's knowledge and understanding of the subject. The written exam consists of theory questions. The duration of the exam is 1:45h. The mark is expressed in thirtieths and the grading will consider the correctness, completeness, and clarity of the answers to the questions. The exam is not sufficient if one or more answers are not sufficient. The exam is closed book.
ING-INF/05 - INFORMATION PROCESSING SYSTEMS - University credits: 6
Lessons: 48 hours
Professor: Piuri Vincenzo
Shifts:
-
Professor: Piuri Vincenzo
Professor(s)