Cómo elegir una dirección fija para la asignación de memoria compartida

Me gustaría usar memoria compartida entre varios procesos, y me gustaría poder seguir usando punteros sin formato (y contenedores stl).

ara este propósito, estoy usando memoria compartida asignada en un dirección fija:

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

¿Cuál es una buena estrategia para elegir esta dirección fija? Por ejemplo, ¿debería usar un número bastante alto para reducir la posibilidad de que me quede sin espacio de almacenamiento dinámico?

Respuestas a la pregunta(4)

Su respuesta a la pregunta