Бакалавриат
2022/2023





Проектирование операционных систем
Статус:
Курс по выбору (Программная инженерия)
Направление:
09.03.04. Программная инженерия
Когда читается:
4-й курс, 2 модуль
Формат изучения:
без онлайн-курса
Охват аудитории:
для своего кампуса
Преподаватели:
Башев Владимир Николаевич
Язык:
русский
Кредиты:
8
Контактные часы:
28
Программа дисциплины
Аннотация
В курсе описаны принципы построения операционных систем для встраиваемых систем. Встраиваемая система предназначена для решения одной или нескольких заранее определенных задач в конкретной предметной области. Например, интернет вещей (IoT), робототехники, умный дом, автомобильных систем, машиностроении, станки с ЧПУ, 3D печать и т.п.
Курс затрагивает проблематику в области построения современных операционных систем и возможные пути её разрешения, используя технологический стандарт АОМК (ACOM), на котором построена запатентованная отечественная архитектура ОС не имеющая аналогов в мире.
Курс учит работе с техническими спецификациями (datasheet)
к микроконтроллерам (MCU), микропроцессорам (CPU), систем на кристалле (SoC)
и программированию «голого железа» (bare metal).
Теоретическая и практическая части состоят из двух разделов: Технология АОМК и Архитектура ОС. Лекции содержат базовые понятия, фундаментальные принципы построения операционных систем и применяемых технологий. Практические занятия помогают применить теоретические знания, приобретенные в рамках курса, при решении конкретных задач и получить оценку(баллы) за выполненные работы.
Цель освоения дисциплины
- Дать специалисту основные знания об архитектуре ОС.
- Формирование практических навыков построения ОС используя компонентный подход
Планируемые результаты обучения
- Создавать решения используя основные подходы проектирования ОС
- Создавать компоненты для решения как системных так и прикладных задач
Содержание учебной дисциплины
- Введение
- Компоненты и интерфейсы.
- Интерфейс IEcoUnknown, UGUID
- Повторная применяемость, Обратный вызов, Фабрика
- Микроядро
- Интерфейсная шина, Загрузчик
- Планировщик, Объекты синхронизации
- Менеджер памяти
Элементы контроля
- Лабораторная работа 1Необходимо согласно из приведенного списка заданий, создать новый компонент для калькулятора, который включает в себя компонент реализующий функции сложения и вычитания.
- Лабораторная работа 2Необходимо согласно из приведенного списка заданий, провести исследование, создать новый компонент для заданной архитектуры (x86, AVR, ARM, MIPS, RISC-V) и платформы Eco OS, Windows OS, Linux OS.
Промежуточная аттестация
- 2022/2023 учебный год 2 модуль0.5 * Лабораторная работа 2 + 0.5 * Лабораторная работа 1
Список литературы
Рекомендуемая основная литература
- Современные операционные системы, Таненбаум, Э., 2015
- Таненбаум Э. - Современные операционные системы. 3-е изд. - 978-5-496-00301-8 - Санкт-Петербург: Питер - 2013 - 344100 - https://ibooks.ru/bookshelf/344100/reading - iBOOKS
- Таненбаум Э., Остин Т. - Архитектура компьютера. 6-е изд. - 978-5-496-00337-7 - Санкт-Петербург: Питер - 2018 - 21890 - https://ibooks.ru/bookshelf/21890/reading - iBOOKS
- Таненбаум Эндрю С, Вудхалл Альберт С. - Операционные системы. Разработка и реализация (+СD). Классика CS. 3-е изд. - 978-5-469-01403-4 - Санкт-Петербург: Питер - 2007 - 339939 - https://ibooks.ru/bookshelf/339939/reading - iBOOKS
Рекомендуемая дополнительная литература
- Архитектура компьютера, Таненбаум, Э., 2014