Дэвид Н Лэйн

ел бы использовать разделяемую память между несколькими процессами и хотел бы иметь возможность продолжать использовать необработанные указатели (и контейнеры stl).

Для этой цели я использую общую память, отображенную нафиксированный адрес:

segment = new boost::interprocess::managed_shared_memory(
    boost::interprocess::open_or_create,
    "MySegmentName",
    1048576, // alloc size
    (void *)0x400000000LL // fixed address
);

Какова хорошая стратегия для выбора этого фиксированного адреса? Например, я должен просто использовать довольно большое число, чтобы уменьшить вероятность того, что мне не хватит места в куче?