5017.19 - Computer Architecture and Operating Systems

Course number
Computer Architecture and Operating Systems
Introduction to Computer Science (7.5 ECTS) and Programming skills and knowledge in JAVA (or C++).
The goal of this course is to introduce fundamental concepts and approaches for constructing contemporary operating systems (including GNU/Linux and Windows), which are studied, analysed, compared and experimented with.
Operating system architecture, fundamental concepts of the OS (the functions, the design and construction of an OS, common concepts of all OS’s, OS evolution, and hardware concepts), process management (process scheduling, concurrency issues, process synchronization, and deadlock management), memory and storage managements (virtual memory and file systems), distributed systems (structures and algorithms for networking, distributed communication, coordination and distributed file systems) and case studies (the Linux system and Windows 7).
Learning and teaching approaches
Lectures, theoretical- and computer-based exercises.
Learning outcomes
By the end of the course the student is expected to be able to: - understand the fundamental principles for the analysis, design, and development of operating systems - identify the major components of an OS - integrate OS and programming language concepts to solve theoretical problems such as interrupts or similar mechanisms for synchronization, process management, and resource scheduling - determine the interfaces between the OS and other components (hardware and applications)
Assessment method
4-hour written examination without helping aids (no computer, no textbook or any other course related materials).
Marking scale
Operating System Concepts, Enhanced Edition, 10th Edition Abraham Silberschatz, Greg Gagne, Peter B. Galvin Publisher: John Wiley & Sons; 9th Edition International Student Language: English ISBN: 978-1-119-32091-3 April 2018 https://www.wiley.com/en- us/Operating+System+Concepts%2C+Enhanced+Edition%2C+10th +Edition-p-9781119320913