Проектирование ОС и их компонентов
1 Разработка компонентов прикладного уровня с заданной функциональностью,
реализация в виде: приложения, утилиты, демона, сервиса, службы
1а Разработка компонентов прикладного уровня: прикладной файловой системы с заданными свойствами
2 Инсталляция, применение заданных и выбранных инсталляторов
2а Разработка собственных фрагментов инсталляторов программ и ОС
3 Обфускация, обработка кода заданными методами и применение и сравнение заданных и выбранных обфускаторов
3а Разработка фрагментов обфускатора на основе заданных методов
4 Управление памятью. Создание библиотек разных типов и их размещение.
Загрузка программ и библиотек, анализ дампа (на примере компонента из пункта 1)
5 Разработка первичных загрузчиков выбранными средствами. Мультизагрузка.
5а Разработка вторичных загрузчиков. Загрузка ОС
6 Системные вызовы: анализ, обработка, перехват, модификация на примере заданных вызовов из ИСВ (3-4 вызова)
7 Встраивание модулей в ядро.
Разработка драйвера
(на примере символьного устройства)
Реализация различных (min двух) слоев, в том числе нижнего уровня с обработкой событий и обращением к портам
7а Разработка многослойного драйвера
8 Планирование и диспетчеризация, политики, распараллеливание (многопоточность, многоядерность и мультипроцессирование)
8а Замещение и встраивание планировщиков
Работы выполняются в двух операционных системах: Linux и Windows
Обязательный минимум – задания с номером без символа а. Эти задания должны быть выполнены и сданы не позднее окончания зачетной недели.
Задания с номером и символом «а» являются дополнительными, более сложными и предназначены для студентов, претендующих на отличные оценки.