460-4112/04 – Programming in Operating Systems (PVOS)

Gurantor departmentDepartment of Computer ScienceCredits6
Subject guarantorIng. Petr Olivka, Ph.D.Subject version guarantorIng. Petr Olivka, Ph.D.
Study levelundergraduate or graduateRequirementCompulsory
Year1Semesterwinter
Study languageEnglish
Year of introduction2018/2019Year of cancellation2021/2022
Intended for the facultiesFEIIntended for study typesMaster, Follow-up Master
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 Graded credit 2+2

Subject aims expressed by acquired skills and competences

The course goal is to introduce advanced programming methods in operating systems. The student will be able to design his programs effectively and use available programming techniques of operating system to design efficient programs. The student will be able to apply gained experience into additional programming languages.

Teaching methods

Lectures
Tutorials

Summary

Advanced programming techniques of operating system will be discussed in this subject. The student will learn more ways to communicate with the devices and sockets. He will also learn effective methods of interprocess communication.

Compulsory literature:

[1} W. Richard Stevens, Stephen A. Rago, Advanced Programming in the Unix environment, Addison-Wesley Professional; 3rd edition (May 24, 2013), ISBN: 0321637739 [2] Robert Love, Linux System Programming: Talking Directly to the Kernel and C Library, O'Reilly Media; Second Edition edition (June 8, 2013), ISBN: 1449339530 [3] Andrew S. Tanenbaum, Modern Operating Systems, Prentice Hall; 4 edition (March 20, 2014), ISBN: 013359162X

Recommended literature:

[1] Richard Stones, Neil Matthew, Beginning Linux Programming, Wrox, 4. edition, ISBN-10: 0470147628

Way of continuous check of knowledge in the course of semester

Students will be fullfill asigned task during labs. The results of these tasks will form the basis for the final evaluation. Overall knowledge and skills are verified during the final test, when students program an application on a computer according to the assignment.

E-learning

Other requirements

Experiences with programming in C/C++ language.

Prerequisities

Subject has no prerequisities.

Co-requisities

Subject has no co-requisities.

Subject syllabus:

Lecture: 1. Working with processes, process creation and control. Signals processing. 2. Files processing and I/O device programming. Memory mapped files. 3. Blocking and nonblocking I/O operations. Synchronous and asynchronous I/O operation. 4. Sockets, settings parameters and behavior. Basic security. 5. Secure communication over SSL. 6. Advanced principles of inter-process communication, its efficiency, suitability. 7. OS diagnostics, data flow monitoring of I/O devices and processes. 8. Task scheduler features, RT processes. 9. Virtual OS types. 10. File systems, base features, journaling file systems, flash memory FS. 11. File system implementation in user space. 12. Device drivers - features, development and debugging. Labs: 1. Processes, signals, signal masking. 2. Select and poll functions, blocking and nonblocking operation. 3. Asynchronous I/O operation. 4. Socket manipulation, setting of socket options. 5. Secure SSL communication. 6.-7. Inter-process communication. 8.-9. Communication with I/O devices. 10. File system implementation in user space. 11. Data flow monitoring. 12. Priority of processes and threads.

Conditions for subject completion

Full-time form (validity from: 2018/2019 Winter semester, validity until: 2021/2022 Summer semester)
Task nameType of taskMax. number of points
(act. for subtasks)
Min. number of pointsMax. počet pokusů
Graded credit Graded credit 100 (100) 51 3
        Tasks in Labs Other task type 40  21
        Project Project 20  10
        Final Test Written test 40  20 2
Mandatory attendence participation: Compulsory attendance corresponds to the requirement to get a minimum number of points specified by tasks.

Show history

Conditions for subject completion and attendance at the exercises within ISP:

Show history

Occurrence in study plans

Academic yearProgrammeBranch/spec.Spec.ZaměřeníFormStudy language Tut. centreYearWSType of duty
2021/2022 (N0612A140005) Information and Communication Security P English Ostrava 1 Compulsory study plan
2020/2021 (N0612A140005) Information and Communication Security P English Ostrava 1 Compulsory study plan
2020/2021 (N2647) Information and Communication Technology (1801T064) Information and Communication Security P English Ostrava 1 Compulsory study plan
2019/2020 (N2647) Information and Communication Technology (1801T064) Information and Communication Security P English Ostrava 1 Compulsory study plan
2019/2020 (N0612A140005) Information and Communication Security P English Ostrava 1 Compulsory study plan
2018/2019 (N2647) Information and Communication Technology (1801T064) Information and Communication Security P English Ostrava 1 Compulsory study plan

Occurrence in special blocks

Block nameAcademic yearForm of studyStudy language YearWSType of blockBlock owner

Assessment of instruction

Předmět neobsahuje žádné hodnocení.