9:00 25.06

Команда «Насосная №1»

  1. Овян Михаил
  2. Никитин Богдан
  3. Пей Юнин
  4. Лобачев Никита
  5. Гаряева Эльвина
  6. Ломидзе Лика
  7. Ушаков Федор

13:00 25:06 - I

13:00 25:06 - II

Команда «Седьмого ищем»

  1. Удальцова Александра
  2. Хорошенков Егор
  3. Нечаева Полина
  4. Матвеева Анна
  5. Нефедова Мария
  6. Павлеева Мария
  7. Якунина Ксения

Команда «Плюсы не против»

  1. Карина Демченко
  2. Наталья Краузе
  3. Максим Шишов
  4. Сергей Гаршин
  5. Влад Абрамов
  6. Газиз Кожан
  7. Гриша Бузилов

9:00 26:06 - I

9:00 26:06 - II

Команда «Эффект телевизора»

  1. Александр Ширнин
  2. Никита Маркин
  3. Михаил Андреев
  4. Илья Зисман
  5. Лев Сушкевич
  6. Галина Черникова
  7. Анна Краус

Команда «Клуб Фанатов Дениса Расщупкина»

  1. Денис Расщупкин
  2. Матвей Хрипач
  3. Дмитрий Царев
  4. Василий Киреенко
  5. Денис Шилов
  6. Ермаков Андрей
  7. Цветков Федор

13:00 26:06 - I

13:00 26:06 - II

Команда «The Beatles»

  1. Томащук Корней
  2. Рамазян Тигран
  3. Чаброва Татьяна
  4. Сысоев Анатолий
  5. Крсманович Марко
  6. Касимов Илья

Команда «Не в последнюю очередь»

  1. Молоствов Павел
  2. Карзанов Даниил
  3. Собакинских Илья
  4. Калманович Павел
  5. Ярослав Степанов
  6. Иллювиева Алиса
  7. Тафинцева Альбина

Формат

Оценивание

Оценивается по каждому студенту

Несколько замечаний по ведению экзамена

Темы

Темы — это не вопросы. Это области, относительно которых вопросы задаются. Обычно это вопросы вида:

При ответе на вопрос можно (а иногда просто нужно) пользоваться справочными материалами, но:

Дальнейшая разбивка сделана по модулям, а не по темам, чтобы было проще готовиться (за исклчением переноса некоторых тем в модуль «архитектура»)

Архитектура компьютера и язык ассемблера

  1. Система команд и её место в архитектуре ЭВМ
  2. Ассемблер и язык ассемблера
  3. RISC и MIPS
  4. Регистры и память, виды адресации
  5. Адресация в коде:
    • условные операторы
    • циклы
    • массивы
  6. Стек и подпрограммы
  7. Понятие конвенции
    • +конвенции по вызову подпрограмм
    • +конвенции по использованию регистров
  8. Математический сопроцессор
  9. Кадр вызова подпрограммы
  10. Макроассемблер
  11. Поллинг и MMIO
  12. Исключения и программные ловушки (traps)
  13. Прерывания
  14. Конвейер
  15. Предсказание перехода
  16. Кеш: прямой и ассоциативный
  17. Виртуальная память
  18. Выгрузка страниц (swap)

Системное программирование и Си

  1. Основные конструкции и типы данных в Си
  2. Сборка многофайлового проекта в Си
  3. Системы сборки, GNU make
  4. Адресация и адресная арифметика в Си
  5. Обеспечение многозадачности в ОС
  6. Выделение и освобождение памяти в Си
  7. Файловые системы (два определения)
  8. Файловый/поточный ввод-вывод
  9. Процессы
  10. Права доступа
    • Базовая дискреционная модель
    • SetUID/SetGID
  11. Строковые операции в Си
  12. Регулярные выражения
  13. IPC: Сигналы
  14. IPC: Сообщения и разделяемая память

Архитектура операционной системы

Несколько более детальный список вопросов для отдельного выставления баллов по финальному тесту четвёртого модуля.

  1. Операционная система
    • Задачи ОС и примеры их решения
    • «Цветочек»: Syscall → utility → shell → script → service
    • Интерфейсы ОС
  2. Командная оболочка (shell):
    • Как язык программирования
    • Как пользовательский интерфейс
    • Как инструмент интеграции («скриптования»)
  3. Стек протоколов TCP/IP
    • Задачи, решаемые на каждом из уровней
    • Пакеты, инкапсуляция/декапсуляция пакетов
    • Независимость уровней
  4. Сокеты и работа с ними
    • Виды сокетов
    • send()/recv() против read()/write()

    • Пример кода, использующего сокеты
  5. Досистемная загрузка
    • Этапы досистемной загрузки и решаемые ими задачи (в теории)
    • Досистемная загрузка конкретной ОС (на практике)
  6. Загрузка операционной системы
    • Задачи ядра ОС
    • Процесс init и его особенности

  7. Возможности Systemd
    • Основные задачи, решаемые systemd

    • Юниты: .service, .mount и другие, структура .service-файла

    • Сокет-активация .socket-активируемой службы

  8. Пакеты в Linux
    • Свойства пакета
    • Установщик пакетов и пакетный диспетчер
    • Установка, удаление и обновление пакетов
  9. Репозиторий, дистрибутив, сообщество
    • Особенность пакетов в репозитории
    • Сопровождение репозитория сообществом: основные задачи
    • Информационные ресурсы сообщества
  10. Открытая разработка и свободное лицензирование
    • Разрешительные (BSD-like) и копилефтные (GPL/MPL-like) свободные лицензии. Определение СПО (по Столлману).
    • Бизнес-модели, основанные на или использующие СПО
  11. Процесс сопровождения пакетов
    • Этапы превращения ПО в исходных текста в пакет
    • Требования к пакету, публикуемому в репозитории
  12. Настройка сети в Linux
    • Настройка сетевых интерфейсов вручную
    • Настройка маршрутизации и DNS
    • Автоматическая настройка
  13. Прикладная шина
    • Назначение и архитектура
    • Пример сервиса
  14. Системное программирование на языках высокого уровня
    • Достоинства и недостатки системного программирования на языках высокого уровня
    • Пример программы, взаимодействующей с ОС на известном вам языке высокого уровня
  15. Повышение привилегий процесса
    • Недостатки традиционной SEUID/SETGID модели
    • Архитектура Polkit

HSE/ExamTopics/Russian (последним исправлял пользователь FrBrGeorge 2020-06-25 12:11:29)