Operating Systems
Code | Completion | Credits | Range | Language |
---|---|---|---|---|
BIK-OSY | Z,ZK | 5 | 13+4 | Czech |
- Lecturer:
- Tomáš Zahradnický
- Tutor:
- Tomáš Zahradnický, Jan Trdlička (gar.), Jakub Hladík, Josef Hlaváč, Michal Šoch, Ladislav Vagner, Jakub Zahradník, Ondřej Žižka
- Supervisor:
- Department of Computer Systems
- Synopsis:
-
Students understand the classical theory of operating systems (OS) in addition to the knowledge gained in the BI-UOS module. They get a solid knowledge of OS kernels, processes and threads implementations. They understand the problems of race conditions and principles and algorithms for critical sections, thread scheduling, resource allocation, deadlocks. They understand the techniques of the management of virtual memory, principles and architectures of disks and disk arrays, file systems, and peripheral devices. They gain basic knowledge necessary for developing system applications or for system administration. They are able to design and implement simple multithreaded applications.
- Requirements:
-
Common user-level knowledge of operating systems. Basic knowledge of C/C++ programming.
- Syllabus of lectures:
-
1. Introduction. OS architecture and functions. OS kernel. Processes and threads, management and implementation.
2. Race conditions. Critical section. Synchronization primitives. Classical interprocess communication problems and their solutions.
3. Thread scheduling. Resource allocation. Deadlock.
4. Memory management - basic methods. Virtual memory. Paging. Segmentation.
5. Page replacement algorithms. Physical disks and RAID.
6. File systems ? properties. File systems ? implementation, examples (fat, ntfs, ufs, zfs).
7. I/O, peripheral devices. Communication of the OS with a peripheral device.
- Syllabus of tutorials:
-
1. Introduction. Project assignment. System calls. Threads. Thread synchronization. [2] Consultation. Presentation of the first project (threads). Processes. Process synchronization. [2] Consultation. Presentation of the second project (processes). Assessment.
- Study Objective:
-
Students gain basic knowledge necessary for developing system applications or for system administration. After completing the course, students will be able to design and implement simple multithreaded applications.
- Study materials:
-
1. Tanenbaum, A. S. ''Modern Operating Systems (2nd Edition)''. Prentice Hall, 2001. ISBN 0130313580.
2. Stallings, W. ''Operating Systems: Internals and Design Principles (5th Edition)''. Prentice Hall, 2004. ISBN 0131479547.
3. Silberschatz, A., Galvin, P. B., Gagne, G. ''Operating System Concepts (7th Edition)''. Wiley, 2004. ISBN 0471694665.
- Note:
- Time-table for winter semester 2011/2012:
- Time-table is not available yet
- Time-table for summer semester 2011/2012:
- Time-table is not available yet
- The course is a part of the following study plans:
-
- Informtion Systems and Management (Presented in Czech) (compulsory course in the program)
- Information Technology (Presented in Czech) (compulsory course in the program)
- Computer engineering (Presented in Czech) (compulsory course in the program)
- Software engineering (Presented in Czech) (compulsory course in the program)
- Computer Science (Presented in Czech) (compulsory course in the program)
- Web and Multimedia (Presented in Czech) (compulsory course in the program)
- Informatics - Plan for Period Before Assignement of Specialization (Presented in Czech) (compulsory course in the program)