Специальные акции
Скидки
Общая информация
Новости и успехи О направлении Концепция обучения Преподавательский состав
Схемы обучения
Администрирование Linux, FreeBSD и Solaris Программирование Linux Дистанционное обучение Открытые уроки
Условия обучения
Расписание и стоимость Индивидуальное обучение Форма и место проведения занятий Документы об обучении Учебные материалы
Сертификация
Linux Professional Institute CompTIA Linux+ ALT Linux Certified Specialist
Обратная связь
Вопросы и ответы Задать вопрос Отзывы слушателей Форум +7 (812) 703-02-02 Контакты
Печать

UNIX-DEV-GRID. Разработка распределённых приложений в среде UNIX

Продолжительность обучения: 40 ак.ч. практики очно + 32 ак.ч. самостоятельно
График обучения: 5 дней по 8 ак.ч.

Расписание

Курс пока не поставлен в расписание. Оставить заявку на курс

Стоимость

Дата Физ. лица, руб. Юр. лица, руб.
Без скидки Cкидка 10%* Cкидка 15%** Без скидки Cкидка 10% Cкидка 15%

*Скидка 10% для ранее обучавшихся, при одновременной оплате 2х курсов, а также по акциям.
**Скидка 15% при одновременной оплате 3х и более курсов.
Примечание. Студентам ВУЗов Санкт-Петербурга очной формы обучения скидка до 25%.
Скидки не предоставляется на курсы с дистанционной формой обучения.
Скидки не предоставляется на комплексные и модульные программы обучения.

Преподаватели

Аннотация

Курс посвящен изучению методов организации параллельной обработки информации, проектированию многопоточных приложений, способам организации взаимодействия между вычислительными процессами, а так же распределению вычислительных процессов в рамках SMP, MMP, кластерной и grid архитектур. Особое внимание уделяется интерфейсам прикладного программирования (API) и инструментальным средствам, применяемым при разработке распределённых приложений.

Знания и умения, полученные в результате обучения

После окончания данного курса слушатели будут обладать знаниями по следующим направлениям:

  • Методы анализа параллельных алгоритмов;
  • Особенности реализации параллельных алгоритмов в системах с общей памятью;
  • Особенности реализации параллельных алгоритмов в системах, построенных на основании обмена сообщениями;
  • Функции, предоставляемые стандартом POSIX для реализации параллельных вычислений;
  • Функции, предоставляемые библиотекой MPI для реализации параллельных вычислений;
  • Архитектура GRID систем.

К числу полученных практических навыков, полученных после окончания данного курса, следует отнести:

  • Проектирование и реализацию параллельных алгоритмов.
  • Использование функций стандарта POSIX для организации параллельных вычислений.
  • Использование библиотеки MPI для организации параллельных вычислений.
  • Реализация параллельных вычислений в системе GRID.

Требования к начальному уровню знаний

Базовые знания принципов построения современных операционных систем общего назначения и принципов сетевого взаимодействия. Знание и умение программирования на языке C. Знания и умения реализовать алгоритмы обработки различных структур данных. Владение операционной системой UNIX на уровне опытного пользователя. Знание и умение использовать основные API ОС UNIX.

Предварительное тестирование

Тест №ФКТ-421 Архитектура UNIX

  • Пользовательская учетная запись (УЗ). Атрибуты пользовательской УЗ UNIX. Команды изменения атрибутов УЗ.
  • Первичная и дополнительные группы пользователей.
  • Дерево каталогов UNIX. Файловые системы и их монтирование в дерево каталогов. Команды управления деревом каталогов UNIX.
  • Типы файлов. Структура дерева каталогов UNIX. Команды управления файлами.
  • Владельцы файлов. Права доступа к файлу. Дополнительные атрибуты файла. Команды изменения атрибутов файлов.
  • Процессы. Типы процессов. Атрибуты процесса.
  • Жизненный путь процесса. Сигналы. Команды управления процессами.
  • Подсистема управления заданиями. Команды управления заданиями.
  • Парадигма ввода-вывода UNIX. Команды управления вводом и выводом данных.
  • Пользовательское окружение. Командный интерпретатор.
  • Пользовательский профиль. Настройка окружения командного интерпретатора. Переменные окружения.
  • Локализация и интернационализация окружения.
  • Основные утилиты UNIX.
  • Графический интерфейс UNIX. Настройка окружения графической подсистемы UNIX.

Список литературы для подготовки к тестированию

Операционная система UNIXОбложка 3
Книга на Ozon.ru  Книга на Books.ru
Андрей Робачевский, Сергей Немнюгин, Ольга Стесик
БХВ-Петербург, 2007
ISBN: 5-94157-538-6

Книга посвящена семейству операционных систем и содержит информацию о принципах организации, идеологии и архитектуре, объединяющих различные версии этой операционной системы. В книге рассматриваются: архитектура ядра Unix (подсистемы ввода/вывода, управления памятью и процессами, а также файловая подсистема), программный интерфейс Unix (системные вызовы и основные библиотечные функции), пользовательская среда (командный интерпретатор shell, основные команды и утилиты) и сетевая поддержка в Unix (протоколов семейства TCP/IP, архитектура сетевой подсистемы, программные интерфейсы сокетов и TLI).


Тест №ВПТ-217 Навыки программирования на языке С и навыки использования основных API ОС UNIX.

    Навыки программирования на языке С:
  1. Знание синтаксиса языка С.
  2. Умение компилировать программы, написанные на языке С.
  3. Знания и умения реализовать алгоритмы обработки следующих структур данных:
    • массивы и ассоциативные массивы (хэши);
    • очереди и стеки;
    • односвязные и двусвязные линейные списки;
    • структуры и массивы структур;
    Навыки использования основных API ОС UNIX:
  4. Основные инструменты разработки;
  5. Интерфейс файловой системы;
  6. Интерфейс сигналов;
  7. Создание и управление процессами.

Список литературы для подготовки к тестированию

UNIX. Программное окружениеОбложка 290
Книга на Ozon.ru  Книга на Books.ru
Брайн Керниган, Роб Пайк

Эта книга - своего рода библия для UNIX-программистов. Прочитав ее, вы не только поймете, как работает UNIX, но и почему он работает именно так. Сами авторы, Брайан Керниган и Роб Пайк, пишут в предисловии: `Наша задача - показать философию программирования под UNIX. Поскольку эта философия базируется на отношениях между программами, мы должны большую часть этой книги посвятить обсуждению индивидуальных инструментов, но в контексте их совместного использования, в том числе и для построения новых программ. Чтобы грамотно применять операционную систему UNIX и ее компоненты, необходимо понять не только как работать с ее программами, но и как они взаимодействуют с окружением`. Книга хороша для начинающих пользователей UNIX, которые хотят научиться программировать с помощью всех тех инструментов, которые поставляются с операционной системой. Прочтение этой книги как новичками, так и опытными пользователями поможет понять, как сделать работу с системой эффективной и приносящей удовольствие.


Программа курса

Модуль 1. Разработка и анализ параллельных алгоритмов

  • Модель вычислений в виде графа

  • Описание схемы параллельного выполнения алгоритма

  • Определение времени выполнения параллельного алгоритма

  • Показатели эффективности параллельного алгоритма

  • Оценка максимально достижимого параллелизма

  • Анализ масштабируемости параллельных вычислений

Модуль 2. Архитектура параллельного программного обеспечения

  • Модели параллельных вычислительных систем

  • Tерминология параллельного программного обеспечения

  • Модели параллельных вычислений

Модуль 3. Реализация модели параллельного программирования с общей памятью

  • Синхронизация доступа к данным

  • Синхронизация выполнения процессов

  • Предотвращение тупиковых ситуаций

Модуль 4. Реализация модели параллельного программирования на основании обмена сообщениями

  • топология коммуникационной системы

  • методика оценки расходов на передачу сообщений

    • Методы передачи данных

    • Анализ трудоемкости основных операций передачи данных

    • Оценка трудоемкости операций передачи данных для кластерныхсистем

Модуль 5. Функции управления процессами стандарта POSIX

  • Создание процесса

  • Завершение процесса

  • Параметры процесса и группы процессов

  • Ожидание завершения процесса

  • Сигналы

  • Функции для работы с сигналами

  • Каналы

  • Функции для работы с каналами

  • SYSTEM V IPC

    • Права доступа к ресурсу

    • Символьные константы

    • Генерация ключа для ресурса

    • Очереди Сообщений

    • Функции для работы с очередями сообщений

    • Списки семафоров

    • Функции для работы со списками семафоров

    • Сегменты Разделяемой Памяти

    • Функции для работы с сегментами разделяемой памяти

Модуль 6. Функции управления потоками стандарта POSIX

  • Создание и завершение потоков

  • Прерывание выполнения потоков

  • Аттрибуты потока

  • Ожидание завершения потока

  • Работа с мьютексами

  • Работа с условными переменными

Модуль 7. Библиотека MPI (Message Passing Interface)

  • Программирование с использованием MPI

    • Терминология и обозначения MPI

    • Макроопределения, используемые библиотекой MPI

    • Общие процедуры MPI

    • Прием/передача сообщений между отдельными процессами

    • Объединение запросов на взаимодействие

    • Совмещенные прием/передача сообщений

    • Коллективные взаимодействия процессов

    • Синхронизация процессов

    • Работа с группами процессов

  • Компиляция и запуск MPI приложений

Модуль 8. Технология GRID

  • Общие понятия

  • Архитектура GRID-системы

    • Аппаратный уровень

    • Связующий уровень

    • Ресурсный уровень

    • Коллективный уровень

    • Прикладной уровень

    • Интеграция технологии GRID с существующими сетевыми технологиями

    • Реализация технологии GRID

  • Набор инструментальных средств globus toolkit

    • Управление данными

    • Управление исполнением заданий

    • Информационный сервис

  • Реализация MPI c использованием технологии GRID – MPICH-G