Синхронизация и взаимодействие программных потоков в операционной среде реального времени. Дорогов А.Ю. - 6 стр.

UptoLike

Составители: 

6
монстрирует системный интерфейс и объекты, обслуживаемые ядром.
Микроядро поддерживает системные вызовы, которые декларируют интер-
фейс управления:
программными потоками
(Thread);
механизмами передачи сообще-
ний (Message);
механизмами передачи сигналов
(Signal);
каналами обмена данными
(Channel);
системными часами (Clock);
таймерами (Timer);
обработчиками прерываний
(Interrupt);
средствами синхронизации пото-
ков (Synch);
средствами диспетчеризации по-
токов (Sched).
Объекты ядра выполняют следующие функции:
Потоки (Thread) инкапсулируют исполняемый программный код.
Каналы (Channel) – это объект ядра, который используется потоком-
сервером при реализации механизма передачи сообщений. Поток, который
желает получить сообщение, создает канал (используя системный вызов
ChannelCreate()), а затем получает сообщение из этого канала (используя
вызов MsgReceive()).
Системное соединение (Connection) – это объект ядра, который ис-
пользуется потоком-клиентом при реализации механизма передачи сооб-
щений. Поток, который желает послать сообщение к потоку, создавшему
канал, должен создать соединение с каналом (используя вызов
ConnectAttach()), а затем переслать сообщение (используя вызов
MsgSend()).
Диспетчер сообщений (Dispatch) обеспечивает синхронизацию пото-
ков при обмене сообщениями.
Импульс (Pulse) – неблокируемое сообщение фиксированного раз-
мера.
Thread
Sched
Synch
Signal
Message
Channel
Timer
Clock
Interrupt
Thread
Connection
Dispatch
Timer
Vector
Channel
Pulse
Interface Microkernel Objects
Рис. 1.1