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

Материал из Public ATP Wiki
Перейти к навигации Перейти к поиску
Нет описания правки
 
(не показано 7 промежуточных версий 2 участников)
Строка 1: Строка 1:
= Общие сведения =
= Общие сведения =
* Семестр: 2 (второй и третий курс)
* Формат: очный
* Формат: очный
* Форма контроля: дифференцированный зачет
* Форма контроля: дифференцированный зачет
* Запись вводного занятия
* Запись вводного занятия


== Важные ссылки ==
= Команда курса =
* '''[https://forms.gle/8XTrmnUMYQvJ8GK99 Регистрация на курс]'''
* Андреев Александр Николаевич, лектор
* '''[https://t.me/+UlVQFGD4wEoyYzg6 Телеграм-чат курса]'''
* Манаков Данила Дмитриевич, ассистент
* '''[ План курса]'''
* Копанов Антон Олегович, ассистент
* '''[https://drive.google.com/drive/folders/1wWWyxy1ZUJ-yAW3VxUQ1YDzi2_RdR9Kx?usp=share_link Материалы курсa]'''
* Лыков Иван Александрович, ассистен
* '''[Таблица с оценками]'''
* '''[https://forms.gle/2nQKo1fUVSE8w6gs5 Продление дедлайнов]'''
 
== Требования ==
* Физтех-почта (домен phystech.edu)
* Аккаунт на GitHub
* Ноутбук на семинарах


== План курса ==
== План курса ==
Операционные системы – неотъемлимая часть всех компьютеров. На АКОС вы уже изучали как взаимодействовать с ОС и какие-то базовые принципы их построения. В курсе «Операционные системы 2» мы тоже будем рассматривать принципы построения современных ОС, но уже с «обратной стороны» – со стороны пространства ядра.


* 1. Вводная лекция
* 1. Вводная лекция
Строка 30: Строка 20:
* 7. Мультипроцессорность и особенности синхронизации в ОС
* 7. Мультипроцессорность и особенности синхронизации в ОС
* 8. Файловые системы: FAT, Unix FFS и семество ext*, ReiserFS, log-structured, CoW
* 8. Файловые системы: FAT, Unix FFS и семество ext*, ReiserFS, log-structured, CoW
Операционные системы – неотъемлимая часть всех компьютеров. На АКОС вы уже изучали как взаимодействовать с ОС и какие-то базовые принципы их построения. В курсе «Операционные системы 2» мы тоже будем рассматривать принципы построения современных ОС, но уже с «обратной стороны» – со стороны пространства ядра.


Мы с вами:
Мы с вами:
Строка 42: Строка 34:
Курс состоит из семинаров, на которых мы будем изучать теоретический материал и реализацию игрушечной ОС. Также будет несколько лабораторных работ, в ходы выполнения которых вы реализуете недостающий функционал в HellOS.
Курс состоит из семинаров, на которых мы будем изучать теоретический материал и реализацию игрушечной ОС. Также будет несколько лабораторных работ, в ходы выполнения которых вы реализуете недостающий функционал в HellOS.


{|  class="wikitable"
== Важные ссылки ==
|-
* '''[https://docs.google.com/forms/d/e/1FAIpQLSdWprzsmMgWij2uAfhvRnga8aidd58wE8JgbW88g5oxtHuEfw/viewform?usp=header Регистрация на курс]'''
! № недели
Ограничений по регистрации на курс нет.
! Тема
* '''[https://t.me/+CS4a4rDq9DUxNzcy Телеграм-чат курса]'''
|-
* '''[https://gitlab.carzil.ru/os-advanced/lectures Материалы курсa]'''
|1|| Введение. Знакомство
|-
|2||
|}


== Оценивание ==
== Требования ==
Оценка по курсу состоит из нескольких частей:
* Физтех-почта (домен phystech.edu)
#
* Аккаунт на GitHub
=== Тесты ===
* Ноутбук на семинарах
*
#
== Дедлайны ==
*
#
= Команда курса =
* Преподаватели:
** Андреев Александр
 
* Ассистенты:
** Горбунов Сергей

Текущая версия от 18:06, 31 января 2025

Общие сведения

  • Формат: очный
  • Форма контроля: дифференцированный зачет
  • Запись вводного занятия

Команда курса

  • Андреев Александр Николаевич, лектор
  • Манаков Данила Дмитриевич, ассистент
  • Копанов Антон Олегович, ассистент
  • Лыков Иван Александрович, ассистен

План курса

  • 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.

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

Ограничений по регистрации на курс нет.

Требования

  • Физтех-почта (домен phystech.edu)
  • Аккаунт на GitHub
  • Ноутбук на семинарах