Учебные материалы выложенные на сайте являются вспомогательными и представляют собой план изучения дисциплины в очной форме. Для освоения курса требуется более подробно ознакомиться с литературой. Основные книги с которых следует начать изучение курса: «Операционная система UNIX» и «Внутреннее устройство Linux». Для освоения языка командного интерпретатора Shell (bash) рекомендуется использовать материал Advanced Bash Scripting.
Список лабораторных, необходимых для получения зачета:
- Набор лабораторных по архитектуре операционной системы. (скачать в pdf)
- Индивидуальное задание на языке командного интерпретатора Shell.
- Программирование демона (детализация задания на странице 26 в лекции 5).
- Написание Web-server'a с использованием многопроцессного подхода (детализация задания на странице 28 в лекции 7).
- Написание Chat: client, server с использованием неблокирующих сокетов (детализация задания на странице 43 в лекции 7).
Основные материалы по крсу:
Материалы к лекциям.
Лекция 1. (скачать в формате .pdf) Темы лекции:
- История создания ОС UNIX
- Генеалогическое древо UNIX-систем
Лекция 2. (скачать в формате .pdf) Темы лекции:
- Архитектура ОС
- Учетные записи
- Процессы
- Shell
Лекция 3. (скачать в формате .pdf) Темы лекции:
- Файловые системы
- VFS
- Монтирование
- Утилиты для работы с файлами и каталогами
Лекция 4. (скачать в формате .pdf) Темы лекции:
- Процесс загрузки
Лекция 5. (скачать в формате .pdf) Темы лекции:
- Демоны
- Журнализация событий
- Обработка сигналов
- Работа с ФС
Лекция 6. (скачать в формате .pdf) Темы лекции:
- Сокеты
- Установка соединения
- Обмен данными
- Обработка ошибок
- Эхо клиент-сервер
Лекция 7. (скачать в формате .pdf) Темы лекции:
- Обмен датаграммами
- UDP sender/reciever
- Низкоуровневые сокеты
- Функции работы с адресами и DNS
- Параллельное обслуживание клиентов
- Неблокирующие сокеты
Лекция 8. (скачать в формате .pdf) Темы лекции:
- Средства межпроцессного взаимодействия
- Lock-файлы
- Неименованные и именованные каналы
- Семафоры
Лекция 9. (скачать в формате .pdf) Темы лекции:
- Очереди сообщений
- Разделяемая память
Лекция 10. (скачать в формате .pdf) Темы лекции:
- Группы процессов
- Сигналы
- Обработка
- Множества сигналов
- Компиляция приложений
- GNU make
- Автоматическая генерация make
Лекция 11. (скачать в формате .pdf) Темы лекции:
- Архитектура X11
- FreeType и XFT
- Клиенты X Windows System
- Менеджер окон
- Запуск X-сервера
- GNU make
- Display Manager
Лекция 12. (скачать в формате .pdf) Темы лекции:
- Локализация
- Языки, символы, кодировки
- NLS
- Написание программ с поддержкой i18n
Лекция 13. (скачать в формате .pdf) Темы лекции:
- Драйвера устройств
- Классы устройств и модулей
- Символьные устройства
- Блочные устройства
- Сетевые интерфейсы
- Инициализация и завершение модулей
Основной список литературы:
- Робачевский А. Операционная система UNIX. Санкт-Петербург: BHV, 2010.
- Кетов Д. В. Внутреннее устройство Linux. Санкт-Петербург: БХВ-Петербург, 2017.
Дополнительный список литературы:
- Advanced Bash-Scripting Guide
- Advanced Bash-Scripting Guide (рус.)
- BASH Programming Introduction
- W. Richard Stevens. Advanced Programming in the UNIX Environment. Addison-Wesley, 1992