| GENERAL INFORMATION: | Instructors: Katsiri Eleftheria |
|
| CREDITS: | ECTS Units: 3 |
|
| COURSE PAGE: | https://eclass.duth.gr/courses/TMA478/ | |
Course Description |
||
Operating systems and their types. Core operating principles and desirable features. Process and thread models. Race conditions, synchronisation and mutual exclusion, locks, semaphores, Multiple Readers Single Writer and Producer Consumer problems. Preemptive and non-preemptive scheduling and resource allocation. Deadlocks and livelocks, avoidance and prevention approaches, Banker’s algorithm with single and multiple resource types. Memory management, virtual memory, paging, page replacement algorithms. Principles of filesystems. The course involves four practical sessions providing hands-on experience in the linux operating system as well as a coursework where learnings are applied to simulating parts of an operating system using C or python. |
||