• A
  • A
  • A
  • АБВ
  • АБВ
  • АБВ
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта

Бакалаврская программа «Прикладная математика и информатика»

Операционные системы 2

2025/2026
Учебный год
RUS
Обучение ведется на русском языке
5
Кредиты
Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус:
Курс по выбору
Когда читается:
3-й курс, 1, 2 модуль

Преподаватель


Андреев Александр Николаевич

Программа дисциплины

Аннотация

При разработке высоконагруженных систем приходится обращать повышенное внимание на то, в каком окружении работает код. В компаниях типа Яндекса это как правило многочисленные сервера с несколькими многоядерными x86 процессорами под операционной системой Linux. Понимание того как работает процессор и операционная система позволяет понять некоторые особенности работы реального кода. Основу курса составляет изложение теоретических и практических вопросов построения современных операционных систем, их концепций и алгоритмов. Изучаются аспекты взаимодействия с аппаратурой компьютера, организация виртуальной памяти, аллокаторы, многозадачность и многопоточность, средства синхронизации, блочные устройства, файловые системы и т.п.
Цель освоения дисциплины

Цель освоения дисциплины

  • Понимать как устроена шина PCI Express.
  • Знать устройство кэшей процессора и уметь писать код, который эффективно ими пользуется.
  • Понимать устройство виртуальной памяти.
  • Разбираться в архитектуре аллокаторов памяти общего назначения и уметь выбирать среди них подходящий для конкретной задачи.
  • Понимать назначение и механизмы работы прерываний и исключений.
  • Знать алгоритмы работы планировщиков процессов.
Планируемые результаты обучения

Планируемые результаты обучения

  • Посмотреть как создаются, планируются и изолируются процессы.
  • Разобрать уязвимость Meltdown, как её фикс замедляет работу всей ОС и причём здесь TLB.
  • Пройти привычные примитивы синхронизации вроде спинлоков и мьютексов и увидеть, какие сложности появляются в контексте ОС.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в курс.
  • Прерывания процессора.
  • Базовая периферия и время.
  • Управление памятью в ОС.
  • Процессы, ч. 1.
  • Процессы, ч. 2.
  • Мультипроцессорность.
  • Модель памяти x86.
  • Хранилища данных и работа с ними.
  • Файловые системы, ч. 1.
  • Файловые системы, ч. 2.
Элементы контроля

Элементы контроля

  • неблокирующий Домашнее задание
  • неблокирующий Домашнее задание
Промежуточная аттестация

Промежуточная аттестация

  • 2025/2026 2nd module
    ОДЗ = ОкруглениеВБольшуюСторону(СуммаБалловЗаЗадачи / 1500) Итог = Если ОДЗ < 0.4 то 0 иначе ОДЗ
Список литературы

Список литературы

Рекомендуемая основная литература

  • Кудин, А. В. Архитектура и операционные системы параллельных вычислительных систем : учебно-методическое пособие / А. В. Кудин, А. В. Линёв. — Нижний Новгород : ННГУ им. Н. И. Лобачевского, 2007. — 73 с. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/153263 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

Рекомендуемая дополнительная литература

  • Пиляй, А. И. Базы данных и операционные системы : учебно-методическое пособие / А. И. Пиляй, А. М. Якубович. — Москва : МИСИ – МГСУ, 2021. — 46 с. — ISBN 978-5-7264-2951-9. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/262271 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.