= Архитектура операционных систем GNU/Linux = * '''Лектор''': [[FrBrGeorge|Георгий Владимирович Курячий]]. * Спецкурс проходит по средам в 18:00 в аудитории П-6. Первая лекция — 15 февраля. * Лицам, не имеющим пропуск на [[CMC|факультет ВМК МГУ]], рекомендуется на первую лекцию принести одну матовую фотографию 3×4 и паспортные данные для оформления пропуска. == Экзамен == * Для сдачи надо заранее (не мене, чем за два дня до экзамена) записаться, написав письмо с темой «Экзамен ''дата''» по адресу <>. '''Внимание''': от количества записавшихся зависит количество приглашённых экзаменаторов, и, соответственно, сдающих экзамен. * Итерация экзамена для студентов пятого курса и иных слушателей, не имеющих возможности присутствовать на основной итерации экзамена, состоится 4 мая 2012 года (пятница). Начало в 16:20, аудитория 248. * Основная итерация экзамена по курсу состоится 23 мая 2012 года. Начало в 16:20, аудитория П-6. * Предпоследняя итерация экзамена состоялась 6 июня 2012 года в 16:20. Аудитория 524. * Последняя итерация экзамена состоится 20 июня 2012 года в 14:30. Аудитория 503. * [[/CoursePlan|Темы для экзамена]] (см. также [[../|замечание о методах сдачи-приёмки]] экзамена, [[/MaterialList|материалы по теме курса]]). == Аннотация == Курс посвящён рассмотрению различных аспектов организации Linux-based операционных систем. В курсе рассматриваются: * Особенности архитектуры операционных систем на базе GNU/Linux * Работа с файлами и процессами * Использование командной оболочкй shell как интерпретатор командной строки, как инструмент программирования и как инструмент интеграции * Взаимодействие с ядром ОС * Особенности организации рабочего окружения, инструменты для взаимодействия в рамках него Курс ориентирован на слушателей, имеющих некоторый практический опыт в использовании UNIX-like систем и современных Linux-based дистрибутивов операционных систем. == Тематический план курса == 1. Особенности архитектуры операционных систем GNU/Linux 1. Работа с файлами (организация ФС, ext3, ext4, inode, утилиты для работы с ними, символьные и жесткие ссылки). 1. Обработка текстовых файлов: понятие гладкого и размеченного текста, утилиты для простейшей обработки текста. 1. Регулярные выражения. Утилиты, использующие регулярные выражения. Обработка конфигурационных файлов. 1. Специализированное ПО для обработки пользовательских данных (imagemagick, mencoder, и т.д.). 1. Командная оболочка shell: shell как интерпретатор командной строки. 1. Командная оболочка shell: shell как язык программирования. 1. Командная оболочка shell: shell как интегратор. 1. Утилиты для управление процессами, управление процессами из терминала, демоны. 1. Взаимодействие с ядром ОС. Модули, DKMS. 1. Этапы загрузки системы. 1. Стандарты рабочего окружения. freedesktop.org. Утилиты, реализующие стандарт. 1. Прикладной стандарт межпроцессного взаимодействия DBUS, его реализация в Linux. 1. Динамическое предоставление доступа к ресурсам: !PolicyKit, !DeviceKit, и т.п. 1. Прочие инструменты, реализующие событийную парадигму. 1. Внешние устройства и мультимедиа. 1. Интеграция приложений посредством интерпретируемых языков программирования общего назначения. == Материалы == || '''№''' || '''Тема''' || '''Дата''' || '''Лектор''' || '''Конспект''' ||'''Аудио''' ||'''Видео''' || || 1. || [[/00|Введение. Linux как инструмент решения задач. Архитектура «цветочек».]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/00]] || || || || 2. || [[/01|Файловая система. Монтирование. chroot. Инструменты для работы с ФС.]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/01]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_02_22.ogg|OGG]] || || || 3. || [[/02|Файловая система. Индексные дескрипторы. Концепция «текст + файл».]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/02]] || OGG: [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_02_29.ogg|1]] [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_02_29.manmachine.ogg|2]] || || || 4. || [[/03|Регулярные выражения.]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/03]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_03_07.ogg|OGG]] || || || 5. || [[/04|Обработка нетекстовой информации.]] || <> || [[FrBrGeorge|Георгий Курячий]] || || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_03_14.ogg|OGG]] || || || 6. || [[/05|Vim.]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/05]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_03_21.ogg|OGG]] || || || 7. || [[/06|Shell: язык программирования и оболочка.]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/06]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_03_28.ogg|OGG]] || || || 8. || [[/07|Shell: интерпретатор командной строки и … оболочка. Zsh, Bash и т. п.]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/07]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_04_04.ogg|OGG]] || || || 9. || [[/08|Взаимодействие процессов: каналы, сигналы и IPC. Группы процессов.]] || <> || [[FrBrGeorge|Георгий Курячий]] || || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_04_11.ogg|OGG]] || || || 10. || [[/09|Ядро]] || <> || [[FrBrGeorge|Георгий Курячий]] || [[/Conspects/09]] || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_04_18.ogg|OGG]] || || || 11. || [[/10|Загрузка системы]] || <> || [[FrBrGeorge|Георгий Курячий]] || || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_04_25.ogg|OGG]] || || || 12. || [[/11|Виртуализация и изоляция]] || <> || [[FrBrGeorge|Георгий Курячий]] || || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_05_02.ogg|OGG]] || || || 13. || [[/12|X.org. Freedesktop.org. Утилиты, реализующие стандарт.]] || <> || [[FrBrGeorge|Георгий Курячий]] || || [[http://esyr.org/lections/audio/uneex_2012_summer/uneex_12_05_16.ogg|OGG]] || || == Ссылки == * [[../GnuLinuxSoftware2011|Предыдущий курс цикла]]. * [[../LinuxShell2008|Аналогичный курс 2008 года]]. * [[PspoModules/LinuxArchitecture|Модуль «Введение в Linux»]]