Skip to main content
Skip header

Implementation in Operating Systems

Type of study Follow-up Master
Language of instruction Czech
Code 460-4158/01
Abbreviation IvOS
Course title Implementation in Operating Systems
Credits 4
Coordinating department Department of Computer Science
Course coordinator Mgr. Ing. Michal Krumnikl, Ph.D.

Osnova předmětu

Lectures
- Operating system architecture, characteristics of mobile and embedded systems.
- Internal structure of operating systems, implementation of system calls and modules.
- Implementation of process management, concurrent processing. Signal handling and processing.
- Features of process schedulers, their setup, real-time (RT) processes.
- Power management, power saving and power planning techniques.
- Implementation of device drivers, communication with peripherals.
- Memory management, implementation of memory management mechanisms (allocation, paging, segmentation)
- I/O operations synchronous and asynchronous; blocking vs. non-blocking mode.
- File systems. Basic features; journaling file systems and flash memory systems.
- Implementation of user file systems and their embedding in user-space.

Exercise (on PC classroom)
- Select and poll functions, blocking and non-blocking I/O communications.
- Sockets, ways of setting their behaviour and properties.
- Memory management – implementation of a simple allocator (malloc/free) over a linear memory block.
- Paging and working with a page table – simulation of address translations.
- Multi-threaded server with interprocess/inter-thread synchronization.
- Implementation of a custom process scheduler with priorities and prevention of process starvation.
- Runtime monitoring of Round-robin (RR) and Lottery Scheduling (LS) schedulers, their comparison.
- Processes, signals and their capture and masking.
- Implementation of a simple file system (FS) in read-only mode.
- Extending the FS implementation to include writing, formatting and possible consistency checking.
- Monitoring of I/O device data flows and network interfaces.

Povinná literatura

[1] TANENBAUM, Andrew a BOS, Herbert. Modern Operating Systems, Global Edition. Pearson, 2023. ISBN 1292459662 .
[2] SILBERSCHATZ, Abraham; PETER B. GALVIN a GAGNE, Greg. Silberschatz's Operating System Concepts. Wiley Global Education, 2020. ISBN 9781119455875 .
[3] STEVENS, W. Richard a RAGO, Stephen A. Advanced programming in the UNIX environment. 3rd ed., Upper Saddle River: Addison-Wesley, [2013]. ISBN 978-0-321-63773-4 .
[4] LOVE, Robert, Linux System Programming: Talking Directly to the Kernel and C Library. 2nd ed., O'Reilly Media, [2013]. ISBN 978-1-449-33953-1 

Doporučená literatura

[1] TANENBAUM, Andrew S. a WOODHULL, Albert S. Operating systems: design and implementation. 3rd ed., The Minix book. Upper Saddle River, N.J.: Pearson Prentice Hall, [2009]. ISBN 978-0-13-505376-8 .
[2] FOX, Richard. Linux with operating system concepts. Second edition. Boca Raton: CRC Press, Taylor & Francis Group, 2022. ISBN 978-1-032-06345-4 .