Опубликована: 05.04.2011 | Уровень: для всех | Стоимость: 490.00 руб. | Длительность: 14 дней
Курс посвящен разработке многопоточных приложений на языках C/C++ с использованием POSIX Thread Library.
Основное внимание уделяется разработке ориентированных на ввод-вывод приложений и сетевых сервисов, но рассматриваются также некоторые вопросы, связанные с разработкой вычислительных программ с разделяемой памятью и приложений реального времени. Примеры программ тестировались под ОС Solaris 10 с использованием Sun Studio 11.
План занятий
Занятие | Заголовок << | Дата изучения |
---|---|---|
- | ||
Лекция 125 минут | Введение
Задача этого курса – обучить вас разработке многопоточных приложений для Sun Solaris 10.
Значительная часть полученных знаний может быть использована для разработки многопоточных
приложений для других систем семейства Unix, поддерживающих POSIX threads API. Это
такие системы, как Linux (начиная с версии 2.4), Free BSD, SCO Unixware, IBM AIX и др.
Оглавление | - |
Лекция 225 минут | Реализации POSIX Threads API
Рассматриваются различные подходы, которые допускает стандарт POSIX, к реализации многопоточности в рамках одного процесса.
Оглавление | - |
Тест 136 минут | - | |
Лекция 344 минуты | Создание и завершение нитей
В ходе этого раздела вы изучите: создание нитей с атрибутами по умолчанию, передачу параметров нити, завершение нити, ожидание завершения другой нити, принудительное завершение нити, обработку принудительного завершения нити.
Оглавление | - |
Лекция 41 час 2 минуты | Атрибуты нитей и управление нитями
В ходе этого раздела вы изучите: создание нитей с заданными атрибутами, управление атрибутами нитей, приоритеты нитей и классы планирования, вспомогательные функции для управления нитями , мониторинг поведения многопоточной программы, начальные сведения об отладке многопоточных программ.
Оглавление | - |
Тест 236 минут | - | |
Лекция 542 минуты | Нити и стандартные библиотеки Unix
По завершении этого раздела вы сможете: использовать стандартные библиотеки или их аналоги в многопоточных программах, находить в документации информацию о том, является ли данная функция или группа функций, использовать сигналы и fork в многопоточных программах.
Оглавление | - |
Лекция 652 минуты | Мутексы
В ходе этой лекции вы изучите: задачи, для решения которых необходимы мутексы, создание и уничтожение мутексов, атрибуты мутексов, использование мутексов в качестве примитива взаимоисключения, критические секции и взаимоисключение.
Оглавление | - |
Тест 336 минут | - | |
Лекция 731 минута | Блокировки чтения-записи, условные переменные, барьеры и семафоры-счетчики
В ходе этой лекции вы изучите использование следующих примитивов взаимоисключения и синхронизации: блокировок чтения-записи, условных переменных, барьеров, семафоров-счетчиков , блокировки чтения-записи.
Оглавление | - |
Лекция 81 час 10 минут | Мультиплексирование ввода/вывода и асинхронный ввод/вывод
В ходе этой лекции вы изучите: использование системного вызова select, использование системного вызова poll, некоторые аспекты использования select/poll в многопоточных программах, стандартные средства асинхронного ввода/вывода.
Оглавление | - |
Тест 436 минут | - | |
Лекция 948 минут | Событийно-ориентированные архитектуры
У многих современных программистов слова "событийно-ориентированная архитектура"
ассоциируются в первую очередь с библиотеками для разработки графических
пользовательских интерфейсов - AWT/Swing, Qt и др. В действительности, событийно-ориентированные архитектуры были изобретены гораздо раньше и совсем для других целей,
только тогда еще никто не знал, что это так называется. Событийно-ориентированную
архитектуру имеют ядра операционных систем (в том числе систем семейства Unix), многие
серверные приложения и приложения реального времени. В ходе этой лекции вы изучите событийно-ориентированную архитектуру типичного
серверного приложения и получите обзор других подходов к реализации и использованию
событийно-ориентированных архитектур.
Оглавление | - |
Лекция 1042 минуты | Архитектуры многопоточных приложений
В заключение нашего курса рассмотрим реально используемые архитектуры многопоточных
приложений.
Оглавление | - |
Тест 536 минут | - | |
Дополнительный материал 111 минут | Правила приема задач и выставления оценокОглавление | - |
Дополнительный материал 222 минуты | - | |
5 часов | - |