synstart решает задачу синхронизации старта запуска программ за счет их предварительной планировки по времени (см. cron). Код простой на python.
В сравнении с at/atd погрешность запуска программ между демонами значительно ниже – вместо секундной погрешности в at/atd при использовании synstart получаем миллисекундную погрешность (возможно добиться вплоть до 10 микросекунд при тюнинге sleep на демонах).
at/atd based (планируем запуск в 20:32)
-
-
-
- daemon1 фактический старт: 20:32:00.160
- daemon2 фактический старт: 20:32:00.894
-
-
synstart based (планируем запуск в 22:34)
-
-
-
- daemon1 фактический старт: 22:34:00.000085
- daemon2 фактический старт: 22:34:00.000209
-
-
За подробностями в github.