Next:
Процессы
Up:
Методы и средства параллельной
Previous:
Введение.
Contents
Локальные средства IPC.
Subsections
Процессы
Основные сведения о процессах.
Таблица процессов
Создание процессов с помощью вызова
fork()
.
Запуск процессов с помощью вызова
exec()
.
Сигналы
Понятие о сигналах.
Посылка сигналов с помощью
raise()
и
kill()
Работа с сигналами в Linux.
Применение сигналов для IPC.
Трубы (pipes)
Использование труб.
Функция
popen()
.
FIFO - именованные каналы.
Блокировка файлов.
Необходимость блокировки.
Структура
flock
Режимы блокировки.
Блокировка частей файла и тупики.
Очереди сообщений.
Общие сведения об очередях.
Использование очередей сообщений
Создание очередей сообщений
Управление очередями сообщений
Операции над очередями сообщений
Семафоры.
Основные сведения о семафорах.
Использование семафоров.
Создание множеств семафоров.
Управление семафорами с помощью semctl.
Операции над множествами семафоров.
Разделяемые сегменты памяти
Общие сведения о разделяемых сегментах памяти.
Использование разделяемых сегментов памяти.
Создание разделяемых сегментов памяти.
Управление разделяемыми сегментами памяти.
Операции над разделяемыми сегментами памяти.
Потоки (threads).
Различие между процессами и потоками.
Преимущества многопоточности.
Уровни потоков.
Пользовательские потоки.
Потоки уровня ядра.
Создание потока.
Ожидание завершения потока.
Отделение потока.
Работа с ключами потока.
Остановка потока.
Компиляция многопоточного приложения.
Отладка многопоточного приложения.
Атрибуты потоков.
Состояние отделенного потока.
Ограничения потока.
Дисциплина планирования потока.
Размер стека в потоке.
Создание собственного стека потока.
Синхронизация потоков.
Блоки взаимного исключения (мьютексы - mutex).
Инициализация и удаление объекта атрибутов мьютекса.
Область видимости мьютекса.
Инициализация мьютекса.
Запирание мьютекса.
Захват мьютекса без блокирования.
Удаление мьютекса.
Пример использования мьютексов.
Иерархия блокировок.
Вложенные блокировки односвязного списка.
Переменные состояния.
Работа с атрибутами переменных состояния.
Видимость переменной состояния.
Инициализация переменной состояния.
Блокировка через переменную состояния.
2003-12-09