По поводу записи в файл. Делал запись и чтение параметров из файла, у меня работало, но были проблемы с обновлением данных (т.е) скорость работы оставляла желать лучшего, да и ресурс памяти контроллера убивается очень быстро.
По поводу чтения разделяемой памяти не уверен что апач вообще корректно будет работать с смлоджиком.
Оптимальным решением было написание именно простенького однопоточного сервера (1 слушатель и 1 клиент) обрабатывающий запросы "Set" и "Get" (часа 2-3 на написание и отладку).
+:
1) Простота
2) Надежность
3) Универсальность
-:
1) Относительно низкая скорость работы, время ответа на один запрос около 50 мс. (Хотя можно добиться и большего быстродействия, при уменьшении времени основного цикла)
Для месье знающих толк в извращениях
)) можно посоветовать прикрутить библиотеку ModbusTCP слэйв к апачу (ну либо написать её самому)