Я создаю демон в Unix, который будет иметь эксклюзивный доступ к последовательному порту "/ dev / tty01". Я планирую создать парадигму процесса Master-Slave, в которой есть один мастер (демон) и несколько рабов.
Я думал о том, чтобы иметь структуру в «Общей памяти», к которой могут получить доступ подчиненные, и в памяти есть только один писатель, поэтому мне, скорее всего, не понадобится семафор. Данные будут обновляться довольно медленно, например, каждую минуту.
Я искал, что было бы наилучшим способом сделать это, также, если у меня есть структура в разделяемой памяти, как я могу гарантировать, что структура будет смежной в памяти? Это требование, которое я должен иметь.
Основная программа будет иметь собственную внутреннюю структуру данных, которая обновляется через последовательный порт, а затем она будет изменять данные и отправлять их в глобальную структуру, которая находится в общей памяти для использования клиентами.
У меня нет большого опыта работы с Unix IPC, но какой самый простой способ сделать это? Кстати, все клиенты будут разными процессами, запущенными другими пользователями локально в системе
Он должен использовать разделяемую память, это требование проекта. Кроме того, возможно ли скопировать одну структуру в другую, если вторая структура имеет разные типы данных?