CAOS-2021/Exam

Материал из Wiki - Факультет компьютерных наук
Версия от 16:22, 9 июня 2022; AlexMyltsev (обсуждение | вклад)

(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Темы для тестов по теории

Язык ассемблера x86-32. Инструкции, регистры, стек, соглашения о вызовах.

Числа с плавающей точкой. IEEE 754, float/double/long double, представление в памяти, класификация чисел с плавающей точкой, операции над ними.

Виртуальная память. MMU, page fault, таблица страниц, TLB, mmap.

Иерархия физической памяти: регистры, кэши, оперативная память. SRAM, DRAM.

Ядро ОС. Функции ядра, системные вызовы.

Процессы. PID, fork, таблица файловых дескрипторов, адресное пространство процесса.

Файлы и файловые дескрипторы. open/close/dup/…, file descriptions, позиция чтения-записи.

Файловая система. Структура директорий, имена файлов, dentry, inode, жёсткие и символические ссылки.

Каналы. Неименованные каналы (pipe), именованные каналы (FIFO), поведение операций чтения и записи над каналами.

Сигналы. Обработчики сигналов, стандартные действия (dispositions), маски заблокированных и ожидающих доставки сигналов, поведение при fork/exec.

Работа с общей памятью. Синхронизация, модели памяти, data races, атомики, спинлоки, мьютексы, условные переменные.

Треды. Создание и завершение тредов в POSIX threads.

Стандартная библиотека языка Си. Stdio (printf/scanf/fopen/…, буферизация потоков ввода-вывода), аллокатор (malloc/free/realloc).

Стадии сборки программы на языке Си: препроцессирование, трансляция в ассемблер, ассемблирование, компоновка. Формат ELF, стандартные секции .text и .data.

Загрузка программ на исполнение. Статическая и динамическая компоновка, разделяемые библиотеки, перемещаемый код (PIC). Динамический загрузчик.