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

Материал из Public ATP Wiki
Перейти к: навигация, поиск
(Новая страница: «= Общие сведения = * Семестр: 2 (второй и третий курс) * Форма контроля: дифференцированный з…»)
 
(Команда курса)
 
(не показано 10 промежуточных версий этого же участника)
Строка 1: Строка 1:
 
= Общие сведения =
 
= Общие сведения =
 
* Семестр: 2 (второй и третий курс)
 
* Семестр: 2 (второй и третий курс)
 +
* Формат: очный
 
* Форма контроля: дифференцированный зачет
 
* Форма контроля: дифференцированный зачет
 +
* Запись вводного занятия
  
 
== Важные ссылки ==
 
== Важные ссылки ==
* '''[ Регистрация на курс]'''
+
* '''[https://forms.gle/8XTrmnUMYQvJ8GK99 Регистрация на курс]'''
* '''[https://drive.google.com/drive/folders/1fhIgMMDtrgCpanzkom_D99essNHA2oer?usp=share_link Материалы курсa]'''
+
* '''[https://t.me/+UlVQFGD4wEoyYzg6 Телеграм-чат курса]'''
* '''[https://t.me/+UlVQFGD4wEoyYzg6 Чат курса]'''
+
* '''[ План курса]'''
* '''Таблица с оценками - coming soon!'''
+
* '''[https://drive.google.com/drive/folders/1wWWyxy1ZUJ-yAW3VxUQ1YDzi2_RdR9Kx?usp=share_link Материалы курсa]'''
 +
* '''[Таблица с оценками]'''
 +
* '''[https://forms.gle/2nQKo1fUVSE8w6gs5 Продление дедлайнов]'''
  
 
== Требования ==
 
== Требования ==
Строка 15: Строка 19:
  
 
== План курса ==
 
== План курса ==
 +
 +
Операционные системы – неотъемлимая часть всех компьютеров. На АКОС вы уже изучали как взаимодействовать с ОС и какие-то базовые принципы их построения. В курсе «Операционные системы 2» мы тоже будем рассматривать принципы построения современных ОС, но уже с «обратной стороны» – со стороны пространства ядра.
 +
 +
Мы с вами:
 +
* узнаем как ОС управляют виртуальной и физической памятью;
 +
* изучим как они взаимодействуют с дисками, контроллерами прерываний и другой периферией;
 +
* на примере актуальных файловых систем поймём как хранятся файлы и каталоги, и как устроен кэш дисковых страниц в Linux;
 +
* посмотрим как создаются, планируются и изолируются процессы;
 +
* вспомним уязвимость Meltdown, узнаем почему же её фикс замедляет работу всей ОС, причём здесь TLB и как с этим можно бороться;
 +
* заново пройдём привычные примитивы синхронизации и увидим новые сложности, которые появляются в контексте ОС;
 +
* и, конечно, почувствуем себя немного kernel hacker`ами 😏
 +
 +
Курс состоит из семинаров, на которых мы будем изучать теоретический материал и реализацию игрушечной ОС. Также будет несколько лабораторных работ, в ходы выполнения которых вы реализуете недостающий функционал в HellOS.
  
 
{|  class="wikitable"
 
{|  class="wikitable"
Строка 28: Строка 45:
 
== Оценивание ==
 
== Оценивание ==
 
Оценка по курсу состоит из нескольких частей:
 
Оценка по курсу состоит из нескольких частей:
# Тесты
+
#  
# Контесты
 
# Практические проекты
 
# Лабораторная работа
 
 
 
 
=== Тесты ===
 
=== Тесты ===
* Небольшие тесты на 10 минут в конце занятий
+
*  
* Вопросы по материалам прошлого занятия
+
#
* За каждый тест - 10 баллов.
+
== Дедлайны ==
 
+
*  
=== Контесты ===
+
#
* Набор задач с автоматической проверкой тестирующей системой Я.Контест
+
= Команда курса =
* Всего 6 тестов - после каждой темы базового блока
 
* Срок решения - 2 недели
 
* За каждый контест - 10 баллов
 
* '''Списывание детектируется и наказуемо!'''
 
 
 
=== Практические проекты ===
 
* 2 проекта - desktop-приложение (после ООП) и серверное приложение (после Сети-2)
 
* Работа над кодом в несколько итераций на GitHub ('''нужен аккаунт''')
 
* Срок работы - 2 недели + 1 неделя на каждую следующую итерацию
 
* Список тем проектов будет позднее
 
* Оценка за проект: зачет / незачет + до 2 доп. баллов (wow-эффект)
 
 
 
=== Лабораторная работа ===
 
* Анализ данных с помощью Pandas и Matplotlib
 
* Выдается после “Инструменты визуализации”
 
* Срок работы - 2 недели
 
* Оценка - 10 баллов
 
* Является блокирующей! Для получения зачета за курс необходимо набрать хотя бы 1 балл
 
 
 
== Команда курса ==
 
 
* Преподаватели:
 
* Преподаватели:
 
** Андреев Александр
 
** Андреев Александр
  
 
* Ассистенты:
 
* Ассистенты:
** coming soon!
+
** Горбунов Сергей

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

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

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

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

Требования

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

План курса

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

Мы с вами:

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

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

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

Оценивание

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

Тесты

Дедлайны

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

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