русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Сигналы


Дата добавления: 2014-05-05; просмотров: 1139; Нарушение авторских прав


 

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

Примером асинхронного сигнала является сигнал с терминала. Во многих ОС предусматривается оперативное снятие процесса с выполнения. Для этого пользователь может нажать некоторую комбинацию клавиш (Ctrl+C, Ctrl+Break), в результате чего ОС вырабатывает сигнал и направляет его активному процессу. Сигнал может поступить в любой момент выполнения процесса (то есть он является асинхронным), требуя от процесса немедленного завершения работы. В дан­ном случае реакцией на сигнал является безусловное завершение процесса.

В системе может быть определен набор сигналов. Программный код процесса, которому поступил сигнал, может либо проигнорировать его, либо прореагировать на него стандартным действием (например, завершиться), либо выполнить специфические действия, определенные прикладным программистом. В последнем случае в программном коде необходимо предусмотреть специальные системные вызовы, с помощью которых операционная система информируется, какую процедуру надо выполнить в ответ на поступление того или иного сигнала.

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



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

 

Вопросы для самопроверки

 

80. Какова главная задача подсистемы управления процессами?

81. Могут ли потоки одного процесса принадлежать разным приложениям?

82. Какие задачи, связанные с планированием потоков, решает ОС?

83. При каких условиях алгоритм квантования вырождается в алгоритм последовательной обработки?

84. Какие классы приоритетов определены в ОС Windows NT?

 

Контрольные вопросы

 

85. Какие термины ОС используются для обозначения единицы работы вычислительной системы?

86. Назовите отличия в организации вычислительного процесса потоков от процессов.

87. Дайте определение дескриптора процесса.

88. Что такое «контекст процесса»?

89. Назовите команду, с помощью которой в ОС UNIX происходит порождение процессов.

90. Назовите основные состояния потоков.

91. Какие алгоритмы планирования потоков Вам известны?

92. Чем различаются вытесняющий и невытесняющий алгоритмы планирования?

93. Укажите основную суть концепции квантования.

94. Какой принцип заложен в алгоритм планирования потоков, основанный на приоритете обслуживания?

95. Кто может выступать в качестве инициатора изменения приоритета потока?

96. Какие разновидности приоритетного планирования Вам из-вестны?

97. В чем отличие абсолютных и относительных приоритетов?

98. Какая зависимость (прямая или обратная) между квантом и приоритетом реализована в ОС UNIX System?

99. Какую роль выполняет сигнал в ОС?


4. УПРАВЛЕНИЕ ПАМЯТЬЮ

 



<== предыдущая лекция | следующая лекция ==>
Синхронизирующие объекты ОС | Функции ОС по управлению памятью


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.