Advanced Operating Systems

Course Description

Operating systems are vital parts of every computer system and their security is very important. An operating system is a set of programs that act as an intermediary between a user of a computer, the computer hardware and the applications programs. The objective of this course is to study theories, principles and techniques of communication and synchronization mechanisms in distributed systems, device management, computer security, system availability and reliability.

Learning Outcomes

  1. apply intraprocessor communication mechanisms and communication mechanisms in distributed systems
  2. modify mutual exclusion protocols in real distributed systems
  3. explain and illustrate authentication protocols
  4. describe device management procedures
  5. calculate mean time to data loss
  6. design computer system with redundant array of independent disks (RAID)

Forms of Teaching


Once a week.


Laboratory exercises are done independently as part of homework.

Grading Method

Continuous Assessment Exam
Type Threshold Percent of Grade Threshold Percent of Grade
Laboratory Exercises 0 % 20 % 0 % 0 %
Quizzes 0 % 10 % 0 % 0 %
Mid Term Exam: Written 0 % 30 % 0 %
Final Exam: Written 0 % 40 %

Week by Week Schedule

  1. Intraprocessor communication. File sharing. Sharing memory.
  2. Message queues. Pipelines.
  3. Mutual exclusion in distributed systems. Lamport's distributed mutual exclusion protocol. Ricart–Agrawala protocol.
  4. Device management. Direct memory access.
  5. Serial and parallel I/O devices. Drivers.
  6. Abstracting device by using unified driver interface.
  7. Security mechanisms. Threats and attacks. Backup principles. Protection mechanisms.
  8. Midterm exam
  9. Access control and authorisation. Authentication Protocol Kerberos. Digital certificate.
  10. Security mechanisms of operating system. Authentication and authorization.
  11. Security protocols.
  12. Fundamental concepts (reliable and available systems), Spatial and temporal redundancy.
  13. RAID. Methods used to implement fault tolerance
  14. Operating system support for RAID. Examples of OS mechanisms for detection, recovery, restart to implement fault tolerance. Use of these techniques for the OS’s own services.
  15. Final exam

Study Programmes

University graduate
Audio Technologies and Electroacoustics (profile)
Free Elective Courses (1. semester)
Communication and Space Technologies (profile)
Free Elective Courses (1. semester)
Computational Modelling in Engineering (profile)
Free Elective Courses (1. semester)
Computer Engineering (profile)
Core-elective courses (1. semester)
Computer Science (profile)
Core-elective courses (1. semester)
Control Systems and Robotics (profile)
Free Elective Courses (1. semester)
Data Science (profile)
Free Elective Courses (1. semester)
Electrical Power Engineering (profile)
Free Elective Courses (1. semester)
Electric Machines, Drives and Automation (profile)
Free Elective Courses (1. semester)
Electronic and Computer Engineering (profile)
Free Elective Courses (1. semester)
Electronics (profile)
Free Elective Courses (1. semester)
Information and Communication Engineering (profile)
Free Elective Courses (1. semester)
Network Science (profile)
Free Elective Courses (1. semester)
Software Engineering and Information Systems (profile)
Elective Course of the Profile (1. semester)


Budin, L.; Golub, M; Jakobovic, D., Jelenkovc, L (2013.), Operacijski sustavi, Element, Zagreb, Element, Zagreb
Silberschatz, A., P.B. Galvin, G. Gagne (2018.), Operating Systems Concepts, John Wiley&Sons

For students


ID 222506
  Winter semester
L0 English Level
L1 e-Learning
45 Lectures
10 Laboratory exercises

Grading System

88 Excellent
75 Very Good
63 Good
50 Acceptable