Исправление rezedent12, (текущая версия) :
void* shared_memory_ptr = mmap(NULL, shared_memory_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
Я так понял что этот код «создаёт» общую память. В другом процессе нужно выполнить этот же код? (Спрашиваю на всякий случай).
Исходная версия rezedent12, :
void* shared_memory_ptr = mmap(NULL, shared_memory_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
Я так понял что этот код «создаёт» общую память. В другом процессе нужно выполнить этот же код? (Спрашиваю на всякий случай). Вижу параметр PROT_READ, но нужно что бы можно были писать нескольким программам одновременно, стоит заменить на PROT_WRITE? Или я не правильно понимаю разделение доступа?