OPERATING SYSTEMS - PART 2

Academic year
2024/2025 Syllabus of previous years
Official course title
SISTEMI OPERATIVI - MOD.2
Course code
CT0125 (AF:451304 AR:256607)
Modality
On campus classes
ECTS credits
6 out of 12 of OPERATING SYSTEMS
Degree level
Bachelor's Degree Programme
Educational sector code
INF/01
Period
2nd Semester
Course year
2
Where
VENEZIA
Moodle
Go to Moodle page
The course illustrates the structure and the functions of modern operating systems. It introduces the basic concepts related to modern operating systems, describes the theoretical models and techniques for process management, memory management, file system organization, I/O devices and secondary memory structure. The course discusses the principles of concurrent programming and the concepts and techniques related to process and thread synchronization. Lab practice experiments in C and Java are part of the course. The Unix / Linux and Windows operating systems are analyzed as case studies.
- knowledge of basic concepts related to modern operating systems;
- knowledge of theoretical models and techniques for process management, memory management, file system organization, I/O and secondary memor;
- knowledge of the principles of concurrent programming;
- skills and techniques for process and thread synchronization in C and Java.
Computer programming and computer architectures
Functions and structure of an operating system; virtual machines. Processes and threads. Principles of concurrent programming. CPU management; scheduling algorithms. Memory management; virtual memory, paging and segmentation. File system; functions and implementation. I/O devices and secondary memory; RAID architectures. Unix/Linux and Windows operating systems. Laboratory practice: concurrent programming in C and Java.
Andrew S. Tanenbaum, Herbert Bos. I moderni sistemi operativi (quarta edizione), Pearson 2016.
William Stallings. Operating Systems: Internals and Design Principles (9th edition), Pearson 2018.
Richard Stevens, Stephen A. Rago, Advanced Programming in the UNIX Environment (terza edizione), Addison Weseley, 2013.
The assessment of learning takes place through a written test aimed at verifying the knowledge acquired on the various topics of the course. The assignments during the second semester are optional and aim to put into practice the knowledge acquired and to assess the skills related to synchronization and cooperation between processes and threads in C and Java languages. These assignments consist of a problem to solve, and the solution provides a bonus on the score achieved in the written test.

Grading criteria for the written test:

A. Scores in the range of 18-22 will be awarded in the presence of:
- Sufficient knowledge of the course subjects;
- Limited skills in carrying out practical exercises related to the course labs;
- Sufficient communication skills, especially regarding the use of the specific language related to operating systems and concurrent programming.
B. Scores in the range of 23-26 will be awarded in the presence of:
- Fair knowledge of the course subjects;
- Fair skills in carrying out practical exercises related to the course labs;
- Fair communication skills, especially regarding the use of the specific language related to operating systems and concurrent programming.
C. Scores in the range of 27-30 will be awarded in the presence of:
- Good or excellent knowledge of the course subjects;
- Good or excellent skills in carrying out practical exercises related to the course labs;
- Fully appropriate communication skills, especially regarding the use of the specific language related to operating systems and concurrent programming.
D. Honors will be awarded in the presence of excellent knowledge, skills, and communication abilities.

Criteria for assigning bonus points for challenges:

A. Score from 0.1 to 0.3
- Sufficient skills in completing the exercise;
- Sufficient communication skills in explaining the design and functionality of the proposed solution.
B. Score from 0.4 to 0.5
- Good skills in completing the exercise;
- Good communication skills in explaining the design and functionality of the proposed solution.
C. Score from 0.6 to 0.7
- Excellent skills in completing the exercise;
- Excellent communication skills in explaining the design and functionality of the proposed solution.
Lectures, exercises, laboratory classes.
Italian
Information in this page is related to the whole Operating System course.
There will be a course tutor.
written
Definitive programme.
Last update of the programme: 23/10/2024