Logo ČVUT
Loading...
CZECH TECHNICAL UNIVERSITY IN PRAGUE
STUDY PLANS
2011/2012

Operating Systems

The course is not on the list Without time-table
Code Completion Credits Range Language
XE36OSY Z,ZK 5 2+2s
The course is a substitute for:
Operating Systems (E36OSY)
Operating Systems (X36OSY)
Lecturer:
Neurčen (gar.)
Tutor:
Neurčen (gar.)
Supervisor:
Department of Computer Science and Engineering
Synopsis:

The course is an introduction into the classical theory of operating systems (OS). Students learn about basic notions, such as processes and threads and their communication, scheduling algorithms, race conditions, critical sections and synchronization problems and mechanisms, process deadlock, virtual memory using paging or segmentation, management of I/O devices, file systems and finally the basic issues of security. Experience with programming in the C language is expected.

Requirements:

Credit will be given only to students that have completed all lab exercises. Requirements for the exam are equal to the topics presented in the lecture.

http://service.felk.cvut.cz/courses/XE36OSY/

Syllabus of lectures:

1. Introduction to OS. Architecture and types of OSs.

2. Processes and threads, their implementation. Scheduling algorithms.

3. Interprocess communication (IPC) - race conditions, critical sections, synchronization mechanisms.

4. Classical IPC problems - definitions and solutions.

5. Deadlock - definition, Coffman's conditions, strategies for dealing with deadlock.

6. Memory management - basic techniques.

7. Virtual memory - paging.

8. Virtual memory - page replacement algorithms.

9. Virtual memory - segmentation. Swapping.

10. Input/output - drivers of peripheral devices.

11. Files systems.

12. Distributed computation, client/server, clusters.

13. Security in OS.

14. Reserve

Syllabus of tutorials:

1. C/C++ programming in Unix.

2. Unix: processes, process communication, process synchronization.

3. Unix: threads, threads synchronization, thread's library (POSIX, Solaris, Linux).

4. Unix: 1. semestral project.

5. Unix: 1. semestral project.

6. Kernel modules in Linux.

7. C/C++ programming in MS Windows.

8. MS Windows: processes, process communication, process synchronization.

9. MS Windows: threads, threads synchronization, threads library (POSIX, Windows XP).

10. MS Windows: 2. semestral project.

11. MS Windows: 2. semestral project.

12. Monitors (Java, .NET).

13. Reserve.

14. Credit.

Study Objective:
Study materials:

1. Tanenbaum, A.: Modern Operating Systems, 2nd Ed., Prentice Hall, ISBN 0-13-031358-0, 2001.

2. Stallings, W.: Operating Systems, 4th Ed., Prentice Hall, ISBN 0-13-031999-6, 2001.

3. Materials in Internet.

Note:
Further information:
No time-table has been prepared for this course
The course is a part of the following study plans:
Generated on 2012-7-9
For updated information see http://bilakniha.cvut.cz/en/predmet11857204.html