Вы можете смонтировать файловую систему с поддержкой памяти : http://lists.apple.com/archives/darwin-kernel/2004/Sep/msg00004.html
Использование этого механизма увеличит нагрузку на память системы и, вероятно, будет выгружено, если давление памяти достаточно велико,Возможно, стоит сделать это параметром конфигурации, если пользователь предпочитает, чтобы какое-то другое приложение выбрало память в первую очередь.
Другой вариант - использовать сегменты разделяемой памяти POSIX :http://opengroup.org/onlinepubs/007908799/xsh/shm_open.html (Я сам не использовал сегменты разделяемой памяти POSIX; если я правильно их понял, они были предназначены именно для решения этой проблемы.)
Функция shm_open()
создает объект памяти ивозвращает дескриптор файлаЗатем вы можете mmap(2)
этот дескриптор файла, выполнить свою работу и передать дескриптор файла в библиотеку.
Не забудьте shm_unlink
объект, когда вы закончите;Сегменты общей памяти POSIX, очереди сообщений и массивы семафоров не исчезают автоматически при выходе из последнего процесса.