Операционная система UNIX: Курсы

Данный курс предназначен для ознакомления слушателей с основами построения и функционирования операционной системы UNIX. Задача курса — изучение архитектуры UNIX, моделей и алгоритмов реализованных в различных ее подсистемах сред исполнения прикладных программ, а также получение практических...
IT: Для программистов и IT-специалистовIT: Для программистов и IT-специалистов / Программирование
НИИТ, Нижегородский институт информационных технологий логоНИИТ, Нижегородский институт информационных технологий
Открытый набор
72 часа
Нижний Новгород
НИИТ, Нижегородский институт информационных технологий
от 7 920 ₽

Анонс программы

Данный курс предназначен для ознакомления слушателей с основами построения и функционирования операционной системы UNIX. Задача курса — изучение архитектуры UNIX, моделей и алгоритмов реализованных в различных ее подсистемах сред исполнения прикладных программ, а также получение практических навыков пользовательской работы и программирования в UNIX.

Описание Программы

Необходимая подготовка

· Знание языка программирования C.

· Общие знания об архитектуре вычислительных систем.

· Общие знания об архитерктуре операционных систем.

Аудитория

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

Содержание

Лекции

  • Введение. (История UNIX, версии, причины популярности. Требования к аппаратному обеспечению. Архитектура UNIX).
  • UNIX с точки зрения пользователя. (Общие вопросы работы в UNIX: Особенности многопользовательской среды. Пользователи и группы; Файловая система UNIX. Стандарт на файловую систему. Типы объектов файловой системы. Атрибуты файлов, права доступа; Процессы UNIX. Типы процессов, атрибуты процессов, жизненный цикл и состояния процессов. Сигналы; Пользовательская среда UNIX. Командный интерпретатор: Назначение и роль командного интерпретатора; Программирование на языке Bourne shell; Основные утилиты работы с файлами и процессами. Системные процессы: Важнейшие демоны: init, cron, inetd; Сетевые демоны).
  • Функционирование некоторых подсистем UNIX. (Элементы архитектуры ЭВМ: Память вычислительной системы. Модели адресации; Уровни привилегий центрального процессора. Задачи и переключение задач; Обработка прерываний. Управление памятью в UNIX: Описание физической памяти; Структура адресного пространства процесса. Операции с регионами; Замещение страниц. Алгоритм, используемыйв Linux; Распределение ресурса «время центрального процессора»: Планирование. Критерии оценки алгоритмов планирования. Вытесняющее и невытесняющее планирование. Приоритетное планирование. Планирование в различных UNIX-системах. Жизненный цикл процесса. Действия UNIX в вызовах fork(), exec*(), exit().)
  • Взаимодействие процессов в UNIX. (Синхронизация. Задача взаимного исключения и е решения.Тупики. Средства межпроцессного взаимодействия в UNIX: Неименованные и именованные каналы; Сигналы; System V IPC (очереди сообщений, семафоры, разделяемая память); POSIX IPC (очереди сообщений, семафоры, разделяемая память); Файлы, отображаемые в память; Работа с потоками в библиотеке pthread; Мьютексы и их реализация в библиотеке pthread; Conditional variables и их реализация в библиотеке pthread; Удаленный вызов процедур. DOORs; Решение задачи «Писатели-читатели»).
  • Подсистема управления файлами UNIX. (Индексный дескриптор (i-node). Назначение и атрибуты i-node. Структуры, используемые в ядре для обеспечения работы процессов с файлами; Размещение файловых систем на устройствах блочного типа. Структура файловой системы; Архитектура виртуальной файловой системы. Стандартные операции над объектами файловой системы и их реализации в VFS. Драйвера файловых систем и монтирование; Устройства символьного и блочного типа, драйвера устройств и их место в подсистеме управления файлами; Драйверы терминалов и строковые интерпретаторы).
  • Стек сетевых протоколов TCP/IP. (Архитектура TCP/IP; Межсетевой уровень архитектуры и протокол IP. IP-адреса, маршрутизация, фрагментация. Протоколы ARP, DHCP; Уровень хост-хост, протоколы UDP, TCP. Алгоритм окна, надежность, мультиплексирование, логические соединения между процессами; Обзор сервисов прикладного уровня: DNS, FTP, SMTP, POP3, IMAP, NFS, TELNET; Программный интерфейс сокетов.

Лабораторные занятия

· Работа в командном интерпретаторе bash. Утилиты работы и управления документацией, пользователями, объектами файловой системы, процессами.

· Структура файловой системы UNIX. Загрузка ОС UNIX; процессы, работающие при загрузке, и используемые файлы.

· Утилиты создания и управления файловыми системами.

· Программирование на языке командного интерпретатора bash (Bourne again shell).

· Средства разработки программ на языке C. Утилита make и структура Makefile? ов. Написание программ, создающих процессы и использующих неименованные каналы и переменные окружения.

· Разработка программ, использующих System V IPC (разделяемая память и очереди сообщений).

· Создание многопоточных приложений.

Записаться на курс
Операционная система UNIX: Курсы
7 920
Заполните контактные данные
Оставьте заявку, чтобы забронировать себе место.
Наш менеджер свяжется с вами и ответит на любые ваши вопросы.
Открытый набор
72 часа
Нижний Новгород
НИИТ, Нижегородский институт информационных технологий
от 7 920 ₽
Как добраться?
Нижний Новгород, НИИТ, Нижегородский институт информационных технологий