Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Сигналы и их использование для управления процессами

Читайте также:
  1. A1. Сущность и классификация организаций. Жизненный цикл организации и специфика управления на различных его этапах.
  2. ERP имеет выходы во внешнюю среду и предназначена для решения задач комплексного управления предприятием.
  3. II. Использование готовых разложений.
  4. V. Основы управления инвестициями
  5. А. Структура системы управления корпоративными финансами
  6. АВС-анализ — это чрезвычайно мощный инструмент для выбора, закупки и управления распределением и продвижением рационального использования лекарственных средств.
  7. АВТОРИТЕТ КАК ЭЛЕМЕНТ УПРАВЛЕНИЯ. ПСЕВДОАВТОРИТЕТ.
  8. Адвокатские образования и органы адвокатского самоуправления
  9. Административно-правовые акты управления, их основные черты и виды.
  10. Административные и организационные технологии управления поведением.

Процессы могут принимать сигналы. Сигнал – традиционный способ асинхронной связи между процессами.

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

Обработка сигналов

Существует несколько вариантов реакции процесса на поступление сигнала.

Действие по умолчанию – выполняется, если процесс явно не задал другого варианта реакции. Для большинства процессов действием по умолчанию является завершение.

Игнорирование – эффект «отсутствия» сигнала. Процесс продолжает своё нормальное выполнение.

Выполнение пользовательского обработчика. Нормальное выполнение процесса прерывается и осуществляется вызов обработчика. По завершении обработки продолжается нормальное выполнение.

Обработчик является обычной функцией с одним целочисленным параметром типа int и возвращающей значение типа void.

Задание обработчика handler для сигнала signum осуществляется системным вызовом signal со следующим прототипом:

Sighandler_t signal(int signum, sighandler_t handler);

Обработка процессом сигнала может быть отложена (заблокирована).

Сигналы SIGKILL и SIGSTOP нельзя заблокировать или игнорировать. Для них нельзя определить пользовательский обработчик.

Понятие потока выполнения. Сравнительный анализ потоков и процессов.

Процесс – единица выделения ресурсов. Процессы инертны. Каждый процесс всегда состоит, по крайней мере, из одного потока выполнения. Этот поток создаётся автоматически при инициализации процесса.

Поток выполнения (thread – «тред») – единица исполнения (распределения процессорного времени). Процесс может иметь несколько потоков. Любой процесс можно «расщепить» на несколько параллельных потоков, которые выполняются независимо и совместно используют выделенные процессу ресурсы.

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

Ядро Linux поддерживает потоки в виде легковесных процессов. Потоки одного процесса выполняются в одном адресном пространстве. Они разделяют все переменные приложения.

Издержки на переключение контекста между потоками одного процесса невелики, по сравнению с переключением контекстов разных процессов.


Дата добавления: 2015-01-30; просмотров: 7 | Нарушение авторских прав

1 | 2 | 3 | <== 4 ==> | 5 | 6 |


lektsii.net - Лекции.Нет - 2014-2020 год. (0.008 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав