Операционные системы семейства UNIX — 2018/2019


Unix-logo.png

Материалы лекций

Остальные лекции можно найти в материалах прошлого года.

Материалы практик

Содержание занятий

2019-02-05

Вводное занятие. Вначале рассматривали список тем курса, затем краткую историю UNIX-систем. Далее изучили основные команды по работе с ФС. На семинаре решали вводный тест (на бумаге), затем был проведён разбор.

2019-02-12

Продолжаем изучать файловую систему с точки зрения пользователя: ссылки, монтирование, стандарт. Кратко просмотрен стандарт FHS. Затем были рассмотрены командные оболочки.

2019-02-19

Изучаем механизмы перенаправления ввода-вывода. Затем переходим к синтаксису bash.

На семинаре Александр Жидков выступил с докладом про текстовый редактор vim.

2019-02-26

Продолжение знакомства с командной оболочкой.

2019-03-05

Изучалась тема «Пользователи и права». На семинаре решали задачи по теме на доске.

2019-03-12

Изучалась тема «Процессы». В рамках семинара решали задачи про nice и affinity.

2019-03-19

Научились создавать и уничтожать процессы из кода на C.

2019-03-26

Разбирались с неименованным каналом и конвейером, научились связывать процессы между собой.

2019-04-09

Изучали тему «Потоки»: библиотеку pthread, примитивы синхронизации, ручное создание потока, а также механизм фьютексов. Затем перешли к изучению средств работы с памятью.

2019-04-16

На занятии мы продолжили изучение работы с памятью. Рассмотрели несколько практических примеров.

В конце занятия мы бегло изучили несколько тем: сетевое программирование, работу с жёстким диском и организацию файловых систем.

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

Задания сдаются через систему AnyTask.

  1. Be a shell master

Система оценивания

Практика. За работу на практических занятиях вы получаете баллы. Количество баллов указано для каждой задачи (обычно это 1–3 балла). Засчитывается полное решение, частичные баллы не выставляются. Задачи с практики сдавать из дома по Интернету нельзя, все задания сдаются очно на парах. Если остаётся время на занятиях, то можно досдать какие-то задания с прошлой (в крайнем случае позапрошлой) практики.

Семинары. За доклады на семинарах выставляются баллы в практику. Размер вознаграждения зависит от объёма и качества доклада. За короткое сообщение можно получить 5 баллов, за основательный рассказ с презентацией — до 20 баллов.

Лекции. Иногда можно будет на лекции выйти к доске и выполнить какое-то несложное задание. Эти баллы тоже пойдут в практику.

Домашние задания. Домашние работы сдаются только удалённо. Сумма баллов за домашние работы накапливается отдельно от суммы за практику. У домашних работ существуют крайние сроки сдачи: при отправке работы после дедлайна за задания можно будет получить не более половины от исходных баллов. Баллы за домашние работы не соотносятся с баллами за практику (тут 1 балл и там 1 балл — но вес у них разный).

Контрольные работы. Первая будет проведена в четверг 14 марта. Вторая будет организована в пятницу 19 апреля.

Коллоквиум. Опрос в устной форме будет проведён во вторник 19 марта. За коллоквиум можно получить зачёт (оценка 10) или незачёт (оценка 0).

Подведение итогов. По каждой из четырёх видов деятельности будет выставлена оценка по десятибалльной шкале. Так, например, сумма баллов за практику будет нормирована исходя из максимального числа баллов, которые можно набрать по всем задачам. Затем все четыре оценки будут смешаны в одну оценку со следующими коэффициентами:

  • практика: 0,3
  • домашние работы: 0,3
  • контрольные работы: 0,3
  • коллоквиум: 0,1

В итоге получится некоторая оценка, которая будет затем учитываться на экзамене с коэффициентом 0,3, тогда как оценка за ответ на экзамене будет взята с коэффициентом 0,7.

Расписание

Учебная программа подразумевает 10 пар лекций, 9 пар лабораторных и 9 пар семинарских занятий.

Форма отчётности — зачёт и экзамен.

Актуальное расписание смотрите в Google Docs.

Контакты

Преподаватели: Сергей Соболь и Антон Антонов.

Литература

  1. The Linux Programming Interface. A Linux and UNIX® System Programming Handbook. Michael Kerrisk