АКОС II осень 2025: различия между версиями

Материал из Public ATP Wiki
Перейти к навигации Перейти к поиску
Содержимое страницы заменено на «== Важные ссылки == * '''[https://t.me/+e7rYD9f8-Hc1MGI6 Телеграм-чат курса]'''»
 
(не показана 1 промежуточная версия этого же участника)
Строка 1: Строка 1:
= Общие сведения =
* Формат: очный
* Форма контроля: дифференцированный зачет
* Запись вводного занятия
= Команда курса =
* Андреев Александр Николаевич, лектор
* Манаков Данила Дмитриевич, ассистент
* Копанов Антон Олегович, ассистент
* Лыков Иван Александрович, ассистен
== План курса ==
* 1. Вводная лекция
* 2. Процессор и I/O устройства
* 3. Прерывания процессора и работа со временем
* 4. Работа с памятью в ОС: виртуальная память, кэши процессора, buddy и SLAB аллокаторы
* 5. Аллокация памяти в ОС
* 6. Процессы: пространство пользователя, переключение контекста и системные вызовы
* 7. Мультипроцессорность и особенности синхронизации в ОС
* 8. Файловые системы: FAT, Unix FFS и семество ext*, ReiserFS, log-structured, CoW
Операционные системы – неотъемлимая часть всех компьютеров. На АКОС вы уже изучали как взаимодействовать с ОС и какие-то базовые принципы их построения. В курсе «Операционные системы 2» мы тоже будем рассматривать принципы построения современных ОС, но уже с «обратной стороны» – со стороны пространства ядра.
Мы с вами:
* узнаем как ОС управляют виртуальной и физической памятью;
* изучим как они взаимодействуют с дисками, контроллерами прерываний и другой периферией;
* на примере актуальных файловых систем поймём как хранятся файлы и каталоги, и как устроен кэш дисковых страниц в Linux;
* посмотрим как создаются, планируются и изолируются процессы;
* вспомним уязвимость Meltdown, узнаем почему же её фикс замедляет работу всей ОС, причём здесь TLB и как с этим можно бороться;
* заново пройдём привычные примитивы синхронизации и увидим новые сложности, которые появляются в контексте ОС;
* и, конечно, почувствуем себя немного kernel hacker`ами 😏
Курс состоит из семинаров, на которых мы будем изучать теоретический материал и реализацию игрушечной ОС. Также будет несколько лабораторных работ, в ходы выполнения которых вы реализуете недостающий функционал в HellOS.
== Важные ссылки ==
== Важные ссылки ==
* '''[https://docs.google.com/forms/d/e/1FAIpQLSdWprzsmMgWij2uAfhvRnga8aidd58wE8JgbW88g5oxtHuEfw/viewform?usp=header Регистрация на курс]'''
Ограничений по регистрации на курс нет.
* '''[https://t.me/+e7rYD9f8-Hc1MGI6 Телеграм-чат курса]'''
* '''[https://t.me/+e7rYD9f8-Hc1MGI6 Телеграм-чат курса]'''
* '''[https://gitlab.carzil.ru/os-advanced/lectures Материалы курсa]'''
== Требования ==
* Физтех-почта (домен phystech.edu)
* Аккаунт на GitHub
* Ноутбук на семинарах

Текущая версия от 16:25, 1 сентября 2025

Важные ссылки