Как я могу выделить общую память, доступную из нескольких процессов, используя только собственные операции C ++? Или я должен использовать мой OS API, как в случае с объектами синхронизации между потоками, такими как мьютекс и семафоры? (Я имею в виду, вы не можете использовать bool вместо mutex. ОС имеет определенные типы для организации синхронизации.)
В «только родном C ++» нет понятия «разделяемая память» или даже «процесс». Это обязательно концепции платформы.
Ты можешь попробовать Интерпроцессная библиотека Boost для некоторых полезных абстракций.
По сути, вам нужно использовать OS API. Но есть кроссплатформенные библиотеки (например, Boost), которые реализуют доступ к общей памяти.