Belépés címtáras azonosítással
magyar nyelvű adatlap
angol nyelvű adatlap
Operating Systems
A tantárgy neve magyarul / Name of the subject in Hungarian: Operációs rendszerek
Last updated: 2017. június 21.
Tamás Mészáros PhD, assistant professor, MIT
A fenti forma a Neptun sajátja, ezen technikai okokból nem változtattunk.
A kötelező előtanulmányi rend az adott szak honlapján és képzési programjában található.
The subject introduces students to the functions, internal operation, and types of operating systems, and in addition, to the programming model of concurrent, distributed systems. It also demonstrates these concepts using examples, including the task of operating system selection. The lectures and the laboratories, which are inherent part of the subject, concentrates on the relationship of the hardware and the operating system, making possible for student to use operating systems in practical applications.
1st week: Introduction, the short history of operating systems. Generic introduction to operating systems, types of operating systems, requirements and properties, operating system architectures. Monolithic, modular and microkernel architecture. Relationship of hardware, user, and operating system. Concept of virtual machines.
2nd week: The history of Windows and UNIX/Linux, their architecture, and fundamental properties. Solving operating system malfunctions using tools provided by Windows or Linux.
3rn and 4th weeks: Multiprogramming. Theory and practice of CPU scheduling. Basic scheduling algorithms, their properties, complex scheduling algorithms. Multiprocessor scheduling, processor affinity and its consequences. Scheduling in Windows and Linux. Realization of tasks, hardware aspects, processes and threads.
5th and 6th weeks: Resource management, shared resources. Re-entrant functions. Mutual exclusion and critical section. The implementation of mutual exclusion. Handling shared resources, locking. Sleeplocks and spinlocks. Lock bit, semaphore (binary and counter type), mutex. Typical programming errors committed while implementing mutual exclusion, and techniques to avoid them. Alternatives such as lockless programming, transactional memory, etc. The concept of monitors (Hoare and Mesa semantics).
7th week: Inter-process communication (IPC). Methods of message passing, message addressing, buffering and implicit synchronization, acknowledgement, value or reference passing, semantic consistency. Mailbox, message queues, signals, remote procedure calls, System V IPC examples.
8th week: Deadlock and handling of deadlocks. Definition of deadlock in systems with resource contention, conditions , necessary conditions for the existence of deadlocks. Handling time on modern operating systems, hardware and software components of time handling. NTP and IEEE 1588 protocols, and their operating system specific aspects.
9th and 10th weeks: Storage hierarchy and memory handling. Hierarchy levels and their properties including caches and cache coherency. The fundamental idea of virtual memory and its operation, demand and anticipatory paging, hardware requirements, page replacement strategies and their properties. Global and local memory optimization, trashing and working set, balancing the memory subsystem. Handling memory in Windows.
11st week: Embedded systems and operating systems. Types of embedded operating systems and their relation to hardware and applications. The fundamental properties and operation of uCOS.
12nh week: Virtualization. Classification of virtualization techniques. Platform virtualization, CPU, memory and I/O virtualization and their HW support. Virtualization on the x86 HW architecture. Hosted and bare-metal virtualization. Introduction to virtualization solutions and their properties.
13rd and 14th week: Permanent storage handling, data access and allocation strategies. The concept of the block and the file, file systems. RAID, SAN, NAS technologies in modern operating systems. An introduction to UNIX VFS, its properties, operation, and application.
Laboratories:
During the semester a mid-term exam is organized. The mid-term exam can be repeated on an organized repeated mid-term exam during the semester, and on a 2nd organized repeated mid-term in the repetition period following the semester.