AlexandrY (15.01.2006 01:26, просмотров: 1) ответил Evgeny_CD на Вопрос ламера по Linux IPC (Inter Process Comminications)
Не под Linux, но может и в нем будет работать... Под Windows CE, в одной очень критичной к надежности и скорости взаимодействия программе было сделано так:
память расшаривалась как анонимный (не имеющий реального отображения на диске) мапированный на память файл. Процессы его опознавали по согласованному заранее имени. Файл создавал тот процес который раньше запускался использую общую для всех процессов DLL. В начале файла создавалась таблица ссылок на подготовленные event-ы (или семафоры, как угодно). Эти события потом использовались для обслуживания кольцевого буфера в расшаренной памяти причем для команд и данных отдельно. А о событии помещения чего либо в буфер сообщалось через сообщения в окна процессов.
В Linux-e вроде тоже есть возможность мапирования в память анонимных файлов.