• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Computer Architecture and Operating Systems 1

2026/2027
Academic Year
RUS
Instruction in Russian
5
ECTS credits
Course type:
Compulsory course
When:
2 year, 1, 2 module

Instructors


Волков Иван Андреевич


Ковешников Владимир Владимирович


Коробейников Николай Андреевич


Крапивин Богдан Александрович


Мацкевич Валерий Васильевич


Mineev, Igor


Некрасов Николай Николаевич


Новгородский Андрей Андреевич


Новицкий Григорий Андреевич


Пономарев Евгений Максимович


Сафронов Евгений Владимирович


Струнков Степан Тимофеевич


Филиппова Надежда Владимировна


Филитов Михаил Егорович


Чебряков Данила Сергеевич

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

Аннотация

При разработке высоконагруженных систем невозможно не обращать внимание на то, в каком окружении работает код. В компаниях типа Яндекса это как правило многочисленные сервера с несколькими многоядерными x86 процессорами под операционной системой Linux. Понимание того как работает процессор и операционная система позволяет понять некоторые особенности работы реального кода. В курсе будет разобрана работа ядра миниатюрной UNIX-подобной операционной системы — xv6. Начнём с того как работает процессор и языка ассемблера, далее разберём управление процессами, памятью, работу в мультипроцессорной среде.
Цель освоения дисциплины

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

  • Дать понимание принципов работы компьютеров и деталей взаимодействия прикладного и системного программного обеспечения (ПО) с аппаратурой ЭВМ. Дисциплина предусматривает изучение конкретных реализаций аппаратного обеспечения, операционных систем и т.п.
Планируемые результаты обучения

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

  • Уметь проектировать законченную программную систему.
  • Уметь находить в общедоступных источниках готовые программные модули и компоненты.
  • Быть способность провести интеграцию программной системы с готовыми программными модулями и компонентами.
  • Объяснять устройство компьютера: роль CPU, памяти, шин и устройств ввода-вывода.
  • Понимать как ОС управляет процессами, памятью и файловыми системами.
  • Анализировать работу процессора на уровне команд и кэшей.
  • Применять знания о многозадачности и синхронизации процессов.
  • Использовать системные утилиты для мониторинга и анализа работы ОС.
Содержание учебной дисциплины

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

  • Процессы и программы в UNIX.
  • Ассемблер x86.
  • Разделение памяти: сегменты, таблицы страниц.
  • Прерывания, исключения, сигналы.
  • Поддержка многоядерности в x86.
  • Выполнение процессов в многозадачных ОС.
  • Постоянная память и файловые системы.
  • Виртуализация.
  • Архитектура компьютера и операционные системы 1
  • Вводная лекция, указатели
  • Базовый ввод-вывод в Linux
  • Управление файловой системой
  • Подсистема памяти в Linux, часть 1
  • Подсистема памяти в Linux, часть 2
  • Процессы
  • Ассемблер x86_64 – часть 1
  • Ассемблер x86_64 – часть 2
  • Ассемблер x86_64 – часть 3
  • Введение в многопоточное программирование
  • Многопоточное программирование, сетевое взаимодействие
  • Event loop, epoll
  • Сигналы в Linux – часть 1
  • Сигналы в Linux – часть 2
Элементы контроля

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

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

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

  • 2026/2027 2nd module
    0.2 * Коллоквиум + 0.25 * Домашнее задание + 0.2 * Экзамен + 0.05 * Активность на семинарах
Список литературы

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

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

  • Архитектура компьютера 6-е изд. - 978-5-4461-1103-9 - Таненбаум Э., Остин Т. - 2020 - Санкт-Петербург: Питер - https://ibooks.ru/products/361850 - 361850 - iBOOKS
  • Архитектура компьютера, Таненбаум, Э., 2011
  • Архитектура компьютера, Таненбаум, Э., 2014
  • Программирование на языке Rust : быстрое и безопасное системное программирование, Блэнди, Дж., 2018
  • Язык программирования Си, Керниган, Б., 2001

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

  • Garg, R., & Verma, G. (2017). Operating Systems : An Introduction. [Place of publication not identified]: Mercury Learning & Information. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1809145
  • Гостев, И. М.  Операционные системы : учебник и практикум для среднего профессионального образования / И. М. Гостев. — 2-е изд., испр. и доп. — Москва : Издательство Юрайт, 2021. — 164 с. — (Профессиональное образование). — ISBN 978-5-534-04951-0. — Текст : электронный // Образовательная платформа Юрайт [сайт]. — URL: https://urait.ru/bcode/472333 (дата обращения: 04.07.2025).
  • Операционные системы : практикум: учеб. пособие для вузов, Назаров, С. В., 2012
  • Цифровая схемотехника и архитектура компьютера RISC-V - Харрис Д. М., Харрис С. Л. - Издательство "ДМК Пресс" - 978-5-97060-961-3 - 2022 - русский - https://e.lanbook.com/book/241166 - ЛАНЬ - 241166

Авторы

  • Яковлева Илона Александровна
  • Фисенко Анна Сергеевна
  • Алиева Эльмира Махир Кызы