460-2016/03 – Operating Systems (OSY)

Gurantor departmentDepartment of Computer ScienceCredits5
Subject guarantorIng. Petr Olivka, Ph.D.Subject version guarantorIng. Petr Olivka, Ph.D.
Study levelundergraduate or graduateRequirementOptional
Study languageCzech
Year of introduction2016/2017Year of cancellation
Intended for the facultiesFEIIntended for study typesBachelor
Instruction secured by
LoginNameTuitorTeacher giving lectures
OLI10 Ing. Petr Olivka, Ph.D.
Extent of instruction for forms of study
Form of studyWay of compl.Extent
Full-time Credit and Examination 2+2
Part-time Credit and Examination 7+14

Subject aims expressed by acquired skills and competences

Course goal is to introduce functionality of operating system, describe its parts, explain their usage and show practical implementation.

Teaching methods

Project work


The subject represents basic priciples and implementation methods of operating systems. Principles of modern operating systems, their functions and used methods. Even there are lectured universal methods, this subject is focused to Unix family. After this study, students will bi able write program with processes and threads and some base types of interprocess comunication.

Compulsory literature:

Tanenbaum, Andrew S.: Operating Systems: Design and Implemetation (Prentice-Hall, 1987) Tanenbaum, Andrew S. Bos H.: Modern Operating Systems Prentice Hall Press, 2014 Cvičení: Neil Matthew, Richard Stones: Linux - Beginning Linux Programming A. D. Marshall, Programming in C - UNIX System Calls and Subroutines using C, http://www.cs.cf.ac.uk/Dave/C/

Recommended literature:

Daniel P. Bovet, Marco Cesani: Understanding the Linux Kernel (O'Reilly, 2003) Stevens Richard W.: Advanced programming in the Unix Environment (Addison--Wesley, 1993) Stevens Richard W.: UNIX Network Programming, Volume 1 (Prentice Hall PTR, 1998) Stevens Richard W.: UNIX Network Programming, Volume 2 (Prentice Hall PTR, 1999)

Way of continuous check of knowledge in the course of semester

Evaluated tasks in lab.


Další požadavky na studenta

Knowledges and xperiences with programming in C/C++.


Subject codeAbbreviationTitleRequirement
460-8701 CPP Programming in C/C++ Recommended


Subject has no co-requisities.

Subject syllabus:

1. Operating systems, history, concept, structure. 2. Process, inter-process communication, semaphores, monitors, messages. 3. Well known IPC problems - dining philosophers, readers and writers, sleeping barber. 4. Process scheduling - Round-Robin, priorities, multiple queues, two level scheduling. 5. Memory management, mono and multi programming, memory usage, bitmaps, lists. 6. Virtual memory, paging, page replacement algorithms. 7. Paging algorithms modeling, segmentation 8. File systems - file, directory, implementation. 9. File system safety, save environment, users authentication. 10. Security mechanisms, protected domains, access lists, protection models. 11. Input/output, I/O principles, drivers. 12. Dead lock, conditions of deadlock, models, dead lock detection. 13. Dead lock rising, prevention, two phases locking, apparent dead lock 14. New trends in OS, RT systems, OS for embedded devices. Labs: 1. Unix introduction and basics of programming in C/C++. 2. File redirection, redirection usage for own programs. SSH, remote shell. 3. Usage of make and Makefile. Static and dynamic library usage. 4. Processes, basics interprocess communication using pipes. 5. System call exec, redirection of stdin and stdout. 6. Sockets, socket server, socket client. 7. Usage of threads in processes. 8. Semaphores used for processes synchronization. 9. Message queue, shared memory. 10. File locking. 11. Project development. 12. Project presentation and submission. Project: Implementation of selected well-known IPC problem. Client will communicate with server using sockets.

Conditions for subject completion

Full-time form (validity from: 2017/2018 Winter semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of points
Credit and Examination Credit and Examination 100 (100) 51
        Credit Credit 45 (45) 23
                Úkoly ve cvičeních Other task type 45  23
        Examination Examination 55 (55) 28
                Zkouška Written examination 55  28
Mandatory attendence parzicipation: The obligatory of exercises corresponds to required minimum of points to get credit.

Show history

Occurrence in study plans

Academic yearProgrammeField of studySpec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2020/2021 (B3973) Automotive Electronic Systems P Czech Ostrava 2 Optional study plan
2019/2020 (B3973) Automotive Electronic Systems P Czech Ostrava 2 Optional study plan
2018/2019 (B3973) Automotive Electronic Systems P Czech Ostrava 2 Optional study plan
2017/2018 (B3973) Automotive Electronic Systems P Czech Ostrava 2 Optional study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner