В операционной системе какая разница между очередями сообщений и почтовыми ящиками.Разница между очередями сообщений и почтовыми ящиками
ответ
Я подозреваю, что нет общепринятого определения того, что делает очередь сообщений по сравнению с почтовым ящиком. В каждой ОСРВ могут использоваться разные терминологии и детали реализации, поэтому вам придется смотреть на каждую RTOS отдельно.
Вообще говоря некоторые общие различия включают в себя:
- Является ли размер сообщений, отправляемых через очередь/почтовый ящик фиксированным или может размер сообщения меняется?
- Имеет ли в очереди/почтовом ящике ссылку на сообщение или копию сообщения?
- Может ли очередь/почтовый ящик содержать одно сообщение, несколько сообщений или неограниченное количество сообщений?
очереди в целом имеет очень точное значение в вычислениях в качестве структуры данных контейнера с семантикой первый в первый вышел (FIFO) доступа. В частности, в очереди RTOS доступ к очереди будет потокобезопасным и имеет семантику блокировки.
A почтовый ящик, с другой стороны, не имеет общепринятой специфической семантики, и я видел термин, используемый для обозначения очень разных механизмов IPC RTOS. В некоторых случаях существуют очереди, но если RTOS также поддерживает очередь IPC, почтовый ящик будет иметь какую-то разную семантику - часто в отношении управления памятью. В других случаях почтовый ящик может по существу быть очередью длины 1 - то есть он имеет возможность блокировки и IPC очереди, но без буферизации. Такой механизм позволяет осуществлять синхронную связь между процессами.
Это полностью зависит от системы и того, как она использует терминологию. – user3344003