Навигация
План ответа на билет
На каждый пункт из билета требуется рассказать:
- что это такое;
- зачем оно необходимо;
- как оно реализуется;
- как оно связано со всем остальным, упомянутым в билете.
Первая половина семестра
- Виртуальная память. Физическая память. Страничная адресация. MMU.
- Файловые системы: inode, mount/umount, файловые дескрипторы. Umask. Ссылки.
- Процессы и потоки. Контекст. Дерево процессов. Init. Зомби.
- Пользователи. Права доступа. Real/effective uid. IPC: pipe, named pipe, shared memory.
- Сигналы. Realtime сигналы. Маскирование сигналов. Реентрабельность.
- Job control. Группы процессов. Foreground и background группы процессов. Сессии. Демоны.
- Загрузка. BIOS vs EFI. GRUB. initrd, initramfs. Системы инициализации.
Вторая половина семестра
- Терминалы. UART. Line discipline. Canon/noncanon mode. Псевдотерминалы.
- Мультиплексирование ввода-вывода. Select. Poll. Epoll.
- Сеть. Сетевой стек. Сокеты. Протоколы IP, TCP, UDP, ICMP. Datagram, stream, raw сокеты.
- Формат объектных файлов. Таблицы импорта и экспорта. Таблица релокаций. Запуск статически слинкованных файлов.
- Динамическая линковка. GOT/PLT. LD_PRELOAD. Запуск динамически слинкованных файлов. Ленивая динамическая линковка.
- Системные вызовы. Прерывания. Примеры прерываний. Реализация системных вызовов.
- Реализация железом виртуальной памяти: page directory, интересные биты. Swap. Overcommit memory. OOM Killer.
- Userspace-аллокация памяти. mmap. Реализация malloc.