Событие- это независящая от времени операция, производимая внутри ОС. Может инициализироваться пользователем (прямо или чЕрЕз ЖоПу).Одновременно может функционировать несколько событий. Структура события. 1. Флаг- зависимость события, показывает каким образом процесс, создавший сообщение реагирует на него: 1.1 Независимое событие- Процесс родитель послал на Хуй сообщение и не ждет на него никакого ответа. 1.2 Зависимое- Процесс родитель ждёт ответа на посланное на Хуй событие. 1.3 Процесс родитель ждет информации от порождённого процесса на это событие. 2. Статус (Состояние события) 2.1 Статус = 0 Событие продолжается. 2.2 Статус < 0 Ошибка при обработке события заввершения 2.3 Статус > 0 Код завершения без ошибки. 3. Блок данных применяют для пересылки между процессами небольшие блоки данных ? 4 байта. Механизм прохождения событий. Пересылка данных может осуществляться с помощью принципа почтового ящика. Для обеспечения взаимодействия м- у процессами они должны обмениваться информацией. Возможны два расклада, пацаны: Синхронный и асинхронный . Синхронный- Процесс родитель ждёт окончания работы процесс-обработчика. Асинхронный – процесс родитель продолжает свою работу не дожидаясь завершения обработки процесса — обработчика. Механизм почтовый ящик. Пр 1 пишет в буфер. Пр 2 читает из буфера В – флаг занятости буфера (T — занят.F- свободен.) Пр 1 Пр 2 While (B); “Поместить данное в буфер.” B= TRUE; While (B); “Извлечь данное из буфера.” B=FALSE; Недостаток: Процессорное время тратится на работу внутри WHILE
Взаимодействия между процессами.
05 Мар, 2009
