up

Операционные системы семейства UNIX. Системное программирование

  • Russian

    course language

  • 16 weeks

    course duration

  • from 9 to 10 hours per week

    needed to educate

  • 4 credit points

    for credit at your university

Слушатели познакомятся с программными и структурными компонентами UNIX-подобных операционных систем, а также аппаратом системных вызовов и синтаксисом командного языка программирования, особенностями системного программирования на процедурном и командном языках на разнообразных примерах реализации. Научатся разрабатывать системные и прикладные программные приложения (продукты) с учетом возможностей операционной системы.

About

Основной целью освоения дисциплины «Операционные системы семейства UNIX. Системное программирование» является обучение слушателей принципам организации современных вычислительных систем.  

Основу курса составляют теоретические и практические материалы, связанные с построением современных операционных систем, концепцией и алгоритмами управления локальными и распределенными ресурсами. Изучаются варианты реализации многозадачной обработки информации (средства синхронизации, транзакции, механизмы репликации), средства файловой системы и системы управления вводом-выводом, реализации управления оперативной памятью, обработки прерываний и подходы к обеспечению безопасности информации.

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

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

Format

Курс состоит из 16 недель. Каждая неделя содержит видеолекции, тестовые задания и материалы для самостоятельного изучения. В открытом доступе вы можете ознакомиться с видеолекциями первых двух недель, остальные материалы станут доступны после оплаты курса. 

Для успешного освоения дисциплины слушатель может использовать следующие программные средства: операционные системы FREE BSD, Linux-подобные, Solaris, AIX, MAC или др. UNIX-подобные ОС. Допускается в качестве альтернативы использование виртуальных UNIX/LINUX машин.

Предварительно, перед процессом обучения, предлагается познакомиться с аппаратом системных вызовов и утилитами файловой системы UNIX-подобных ОС.

Базовые учебники

  1. Стивен Р.У., Раго С.А. UNIX. Профессиональное программирование. 3-е издание. – СПб.: Символ-Плюс, 2010 г.
  2. Чан Т. Системное программирование на С++ для UNIX. – Киев: Издательская группа BHV, 1999 г.
  3. Тейнсли Д. Linux и UNIX: программирование в shell. Руководство разработчика. СПб.: БХВ-Петербург, 2004 г.

 Основная литература

  1. Моли Б. UNIX/LINUX: Теория и практика программирования. - М: КУДИЦ_ОБРАЗ, 2004 г.
  2. Роббинс А. LINUX: программирование в примерах. – М: КУДИЦ_ОБРАЗ, 2005 г.
  3. Истратов А.Ю. Межпроцессное взаимодействие на уровне «клиент-сервер» в ОС UNIX (Учебное пособие), М.: РГУИТиП, 2006 г.

Дополнительная литература (по необходимости)

Робачевский А., Немнюгин С., Стесик О. Операционная система UNIX. 2-е изд. СПб.: БХВ-Петербург, 2005 г.

Requirements

Для освоения курса слушатели должны владеть навыками программирования на языке С/С++, разбираться в компонентах оборудования вычислительной системы и знать основы дискретной математики.

Course program

  1. Понятие «Операционная система».
  2. Процессы и потоки в ОС UNIX.
  3. Системные вызовы и программы (утилиты) управления процессами в ОС UNIX. Примеры реализаций.
  4. Файлы и файловые системы в ОС UNIX.
  5. Поддержка и реализация файлов в ОС UNIX. Системные вызовы и утилиты для получения информации о файле.
  6. Системные вызовы работы с файлами в ОС UNIX. Примеры реализаций.
  7. Управление устройствами ввода-вывода (УВВ) в ОС UNIX. Системные вызовы для ввода-вывода информации.
  8. Межпроцессный (программный) канал в ОС UNIX. Примеры реализации.
  9. Обработка прерываний в ОС UNIX.
  10. Системные вызовы и программы (утилиты) обработки прерываний в ОС UNIX. Примеры реализаций.
  11. Примеры многозадачных процедурно-программных реализаций с обработкой прерываний в ОС UNIX.
  12. Распределение и перераспределение оперативной памяти в ОС UNIX. Программные средства и системные вызовы работы с оперативной памятью.
  13. Интерпретатор команд shell в ОС UNIX. Функции интерпретатора. Встроенные и внешние команды (утилиты) интерпретатора shell.
  14. Понятие shell переменной. Специальные shell переменные. Конструкции командного языка программирования expr, let, test. Примеры реализаций.
  15. Конструкции командного языка программирования while, until, for, if, case, trap. Примеры реализаций.
  16. Примеры реализаций многозадачных программных приложений в shell.

Education results

  • Обладает навыками проектирования системных приложений и организации межпрограммного (межсетевого) обмена информацией;
  • Решает задачи взаимодействия между процессами ОС и задачи обработки прерываний;
  • Умеет выбирать программные средства (системные вызовы, программные утилиты) для решения поставленной задачи;
  • Использует программные утилиты и системные вызовы ОС для проверки оборудования вычислительной системы и компонентов ОС.

Formed competencies

  • Способен решать задачи разработки системных приложений на процедурном и командном языках программирования;
  • Знание компонент операционной системы;
  • Способен объяснить принципы и алгоритмы работы компонент операционной системы;
  • Способен работать в командной строке ОС.

Education directions

Отзывы о курсе

Истратов Анатолий Юрьевич

Кандидат технических наук, Старший научный сотрудник
Position: Доцент департамента прикладной математики, МИЭМ

course completion certificate

Certificate

Стоимость доступа ко всем материалам курса, возможности пройти экзамен с прокторингом и получить сертификат составляет 3600 рублей.

The cost of passing the procedures for assessing learning outcomes with personal identification - 3600 Р.

Similar courses