A tantárgyleírás hatályossága
| Subject name (Hungarian, English) |
Operációs rendszerek
Operating Systems
|
||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Subject code | BMEVIMIAB00 | ||||||||||||
| Subject type | — | ||||||||||||
| Training Level | — | ||||||||||||
| Course types and hours (weekly/semester) |
|
||||||||||||
| Assessment type | vizsga | ||||||||||||
| Credits | 5 | ||||||||||||
| Subject coordinator |
Mészáros Tamás Csaba
position: egyetemi docens
contact:
meszaros.tamas@vik.bme.hu
|
||||||||||||
| Responsible department |
Mesterséges Intelligencia és Rendszertervezés Tanszék
|
||||||||||||
| Faculty | Villamosmérnöki és Informatikai Kar | ||||||||||||
| Subject website | http://www.mit.bme.hu/eng/oktatas/targyak/vimiab00/ | ||||||||||||
| Primary curriculum type | — | ||||||||||||
| Direct prerequisites – Strong prerequisite | none | ||||||||||||
| Direct prerequisites – Weak prerequisite | none | ||||||||||||
| Direct prerequisites – Parallel prerequisite | none | ||||||||||||
| Direct prerequisites – Milestone prerequisite | none | ||||||||||||
| Direct prerequisites – Exclusion | none |
Objectives
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:
- Linux laboratory
- Windows laboratory
- Embedded operating system laboratory (uCOS or FreeRTOS)
Learning outcomes
Ez a tantárgy a KKK rendeletben meghatározott, következő kompetenciák fejlesztését szolgálja:
Knowledge
No learning outcomes recorded.
Skills
No learning outcomes recorded.
Attitudes
No learning outcomes recorded.
Autonomy and responsibility
No learning outcomes recorded.
Oktatási módszertan
Tanulástámogató anyagok
Online források
Recommended preliminary knowledge for completing the subject
General rules
Assessment methods
In-term assessments
No detailed assessments provided.
Weight of in-term assessments
No weights provided.
Exam-period assessments
No detailed assessments provided.
Weight of exam elements
No weights provided.
Grade calculation
No grade thresholds provided.
Attendance requirements
No attendance requirements provided.
Rules for retake and resubmission
Not provided.
Short description
Not provided.
Detailed description
Not provided.
Recommended courses
Not provided.
Workload to complete the subject
No workload breakdown provided.
Validity of subject requirements
Curriculum placement
No curriculum placements recorded for this subject version.