OS 2MIT Spring

Материал из SEWiki
Перейти к: навигация, поиск

Лектор — Кринкин Михаил (krinkin.m.u@gmail.com)

Практики — Кринкин Михаил (krinkin.m.u@gmail.com), Новокрещенов Константин (k.novokreshchenov@gmail.com )

Вопросы можно задавать (и отвечать) в google группе: os-2mit-spring-qa@googlegroups.com

Группа Новокрещенового

  • Беляев Станислав Валерьевич
  • Бойкий Дмитрий Игоревич
  • Бугакова Надежда Александровна
  • Валин Глеб Александрович
  • Гайдашенко Анастасия Валериевна
  • Гуцол Ксения Дмитриевна
  • Дегтяренко Иван Антонович
  • Кравченко Дмитрий Сергеевич
  • Кравченко Юрий Николаевич
  • Лабутин Игорь Николаевич

Группа Кринкина

  • Лапшин Дмитрий Владимирович
  • Малышева Александра Ивановна
  • Маркелов Александр Сергеевич
  • Никонов Михаил Иванович
  • Пластинин Виталий Вячеславович
  • Подгузов Никита Владимирович
  • Ребрик Юрий Андреевич
  • Розплохас Дмитрий Александрович
  • Смирнов Петр Юрьевич
  • Старкова Анастасия Алексеевна
  • Степанов Владимир Игоревич
  • Степанов Всеволод Андреевич
  • Суворов Егор Фёдорович
  • Третьякова Елизавета Алексеевна
  • Черникова Ольга Александровна

Результаты ДЗ

Материалы курса

Все материалы курса находятся в репозитории https://github.com/krinkinmu/os-course :

  • lec{\d+} - слайды лекций
  • hw{\d+} - описание домашних заданий
  • src - исходники ОС (будут обновляться по мере прохождения дедлайнов и выдачи новых заданий)

Домашние задания

  1. Прерывания, таймер и последовательный порт. Дедлайн: 25 февраля. Решение в репозитории.
  2. Аллокация памяти. Дедлайн: 21 марта. Решение в репозитории.
  3. Потоки, плнирование и синхронизация. Решение в репозитории.
  4. Файловая система в памяти. Дедлайн: 20 апреля (к 19 апреля задание должно быть сдано, т. е. последний день сдачи 19 апреля).

Критерии выставления оценки

Точные правила выставления оценки пока не зафиксированы, но вы как минимум можете рассчитывать на следующее:

  • выполнять необязательные подзадания для получения отличной оценки не нужно
  • ни одно отдельно взятое домашнее задание не влияет на оценку (т. е. если вы провалили одно задание, то вы все еще можете рассчитывать на отличную оценку)

Правила и рекомендации по сдаче домашних заданий

  • Заведите на github репозиторий для домашних заданий, присылайте ссылку на этот репозиторий и указание ветки или тега, который нужно проверять (под ссылкой на репозиторий имеется ввиду такая, с которой можно выполнить команду git clone, а не ссылка на github).
  • Домашнее задание должно сопровождаться Cover Letter, которое должно описывать из чего состоит ваше решение (файлы, функции, кто и что делает, кто и за что отвечает).
  • Вопросы по домашним заданиям можно задавать только до того, как вы попытаетесь его сдавать.
  • Дополнительные подзадания проверяются только после того, как засчитаны основные.
  • Дополнительные подзадания от начала и до конца делаются самостоятельно, вы можете задавать вопросы, но ответов на них вы не получите.

Полезные ссылки

Для пользователей MAC OS X

Компилятор и сопустствующие средства идущие вместе с XCode (или command line tools из app store) это не gnu toolchain, а урезанный clang и сопутствующие утилиты рассчитанные на прикладное ПО (в частности они не поддерживают linker script и мне не известно опций, которые могли бы его заменить). Поэтому у вас есть несколько опций:

  • найти способ пользоваться теми утилитами, что есть (я тут не помошник - мне негде проверять)
  • собрать свой gnu toolchain и использовать его (тут я, возможно, смогу помочь)
  • использовать виртуальную машину с Linux

Для тех, кто выбрал 2 или 3 варианты, могут оказаться полезными следующие ссылки: