Плюсы использования общей памяти при межпроцессной коммуникации:
- Быстрая связь. 13 Все процессы могут напрямую обращаться к памяти, поэтому скорость коммуникации высокая. 1
- Эффективность при передаче больших данных. 1 Структуры данных можно передавать от одного процесса к другому сразу большими блоками, при этом не нужно копировать их в пространстве памяти каждого процесса. 1
- Меньшее участие ядра. 1 После создания общего пространства памяти ядру не нужно постоянно передавать данные от одного процесса к другому, что в долгосрочной перспективе экономит ресурсы. 1
Минусы использования общей памяти при межпроцессной коммуникации:
- Сложная синхронизация. 1 Для предотвращения условий гонки нужно использовать инструменты синхронизации, такие как семафоры или мьютексы. 1
- Риски безопасности. 1 Процессы, работающие в общей памяти, уязвимы для угроз безопасности, так как к ним может получить доступ кто угодно. 1
- Ограниченность одной машиной. 1 В распределённой системе эту модель можно использовать только для процессов внутри одной машины. 1