Rasberry Pi сторожевая программа C ++ - PullRequest
0 голосов
/ 14 июня 2019

На моем устройстве запущено приложение C ++, которое является немного модифицированной версией Raspberry PI.Приложение читает данные из последовательного порта, и мне нужно перезагрузить устройство после получения определенных данных.Мне было интересно интегрировать эту функцию со сторожевым таймером, но я не знаю, как это сделать.Может быть, есть возможность отправить сигнал из моего приложения в сторожевой таймер, чтобы сообщить, что пора перезагрузиться?

PS Приложение запускается как служба systemd.

Ответы [ 3 ]

1 голос
/ 14 июня 2019

Звоните

std::system("sudo reboot");
0 голосов
/ 14 июня 2019

Watchdog отлично подходит, если вы хотите, чтобы ваше устройство автоматически перезагружалось, когда ваше программное обеспечение блокируется или больше недоступно Если это то, чего вы хотите добиться, сторожевой таймер - правильный выбор.

0 голосов
/ 14 июня 2019

Зачем ты так поступил? Причина, по которой человек использует сторожевые псы, - именно то, что описал Марко. Если система не отвечает, срабатывает сторожевой таймер. Обычно это необходимо, потому что устройства, которые, скажем, выключены, больше не отправляют что-либо , поэтому вам нужен какой-то триггер, чтобы система знала, что она должна перезагрузиться. Здесь вы уже получаете свой триггер от входящего сигнала, поэтому сторожевой таймер избыточен. Просто перезагрузите компьютер после получения ваших данных.

...