Přístupnostní navigace
E-application
Search Search Close
Course detail
FIT-IANAcad. year: 2022/2023
This course deepens the knowledge and skill obtained in the course of Machine level programming (ISU) and in the course of Operating systems (IOS) with the main goal of allowing the students to understand the image of a crashed system (the so-called crash dump). Knowledge of programming on the level of assembler and application binary interfaces (ABI) is applied on a real Unix operating system. Within the course, various binary files used in the system are discussed, including their structure and their disassembled contents. The course involves a detailed study of compiler output from the point of view of linkage and run of system code as well as a discussion of differences and relations among various processor architectures, compilers, and application binary interfaces. Next, the course presents selected concepts typical for kernel-level programming whose deep knowledge is necessary for analysing the functionality of an operating system kernel. These concepts include, among others, details of interrupt processing, task queues, process/thread synchronisation and memory management inside the kernel, i.e., the so-called SLAB allocator. Knowledge obtained in this way is used as a basis for presenting possibilities of monitoring the behaviour of an operating system on the binary level during its run as well as analysis of images of system memory after a system crash (crash dump analysis). In both cases, usage of tools shipped within common Unix distributions is accented.
Language of instruction
Number of ECTS credits
Mode of study
Guarantor
Department
Learning outcomes of the course unit
Prerequisites
Co-requisites
Planned learning activities and teaching methods
Assesment methods and criteria linked to learning outcomes
Course curriculum
Work placements
Aims
Specification of controlled education, way of implementation and compensation for absences
The obtained knowledge of students is examined through four projects focused on low-level programming and on discovering the roots causing problems in an operating system from a provided crash dump (4x 15 points) and through a final written test (40 points).
Recommended optional programme components
Prerequisites and corequisites
Basic literature
Recommended reading
Elearning
Classification of course in study plans
branch BIT , 2 year of study, summer semester, elective
Lecture
Teacher / Lecturer
Syllabus
Exercise in computer lab
Project