AKOS 2024: различия между версиями

Материал из Public ATP Wiki
Перейти к навигации Перейти к поиску
 
(не показаны 3 промежуточные версии этого же участника)
Строка 11: Строка 11:
* '''[https://drive.google.com/drive/folders/1wWWyxy1ZUJ-yAW3VxUQ1YDzi2_RdR9Kx?usp=share_link Материалы курсa]'''
* '''[https://drive.google.com/drive/folders/1wWWyxy1ZUJ-yAW3VxUQ1YDzi2_RdR9Kx?usp=share_link Материалы курсa]'''
* '''[Таблица с оценками]'''
* '''[Таблица с оценками]'''
* '''[Продление дедлайнов]'''
* '''[https://forms.gle/2nQKo1fUVSE8w6gs5 Продление дедлайнов]'''


== Требования ==
== Требования ==
Строка 19: Строка 19:


== План курса ==
== План курса ==
Операционные системы – неотъемлимая часть всех компьютеров. На АКОС вы уже изучали как взаимодействовать с ОС и какие-то базовые принципы их построения. В курсе «Операционные системы 2» мы тоже будем рассматривать принципы построения современных ОС, но уже с «обратной стороны» – со стороны пространства ядра.
Мы с вами:
* узнаем как ОС управляют виртуальной и физической памятью;
* изучим как они взаимодействуют с дисками, контроллерами прерываний и другой периферией;
* на примере актуальных файловых систем поймём как хранятся файлы и каталоги, и как устроен кэш дисковых страниц в Linux;
* посмотрим как создаются, планируются и изолируются процессы;
* вспомним уязвимость Meltdown, узнаем почему же её фикс замедляет работу всей ОС, причём здесь TLB и как с этим можно бороться;
* заново пройдём привычные примитивы синхронизации и увидим новые сложности, которые появляются в контексте ОС;
* и, конечно, почувствуем себя немного kernel hacker`ами 😏
Курс состоит из семинаров, на которых мы будем изучать теоретический материал и реализацию игрушечной ОС. Также будет несколько лабораторных работ, в ходы выполнения которых вы реализуете недостающий функционал в HellOS.


{|  class="wikitable"
{|  class="wikitable"
Строка 36: Строка 49:
*  
*  
#
#
== Команда курса ==
== Дедлайны ==
*
#
= Команда курса =
* Преподаватели:
* Преподаватели:
** Андреев Александр
** Андреев Александр


* Ассистенты:
* Ассистенты:
** coming soon!
** Горбунов Сергей

Текущая версия от 18:29, 1 марта 2024

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

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

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

Требования

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

План курса

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

Мы с вами:

  • узнаем как ОС управляют виртуальной и физической памятью;
  • изучим как они взаимодействуют с дисками, контроллерами прерываний и другой периферией;
  • на примере актуальных файловых систем поймём как хранятся файлы и каталоги, и как устроен кэш дисковых страниц в Linux;
  • посмотрим как создаются, планируются и изолируются процессы;
  • вспомним уязвимость Meltdown, узнаем почему же её фикс замедляет работу всей ОС, причём здесь TLB и как с этим можно бороться;
  • заново пройдём привычные примитивы синхронизации и увидим новые сложности, которые появляются в контексте ОС;
  • и, конечно, почувствуем себя немного kernel hacker`ами 😏

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

№ недели Тема
1 Введение. Знакомство
2

Оценивание

Оценка по курсу состоит из нескольких частей:

Тесты

Дедлайны

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

  • Преподаватели:
    • Андреев Александр
  • Ассистенты:
    • Горбунов Сергей