2016-07-29 5 views

ответ

1

Согласно документации ядра это называется функцией «волшебного» Закрыть http://lxr.free-electrons.com/source/Documentation/watchdog/watchdog-api.txt

Magic Close feature: 

If a driver supports "Magic Close", the driver will not disable the 
watchdog unless a specific magic character 'V' has been sent to 
/dev/watchdog just before closing the file. If the userspace daemon 
closes the file without sending this special character, the driver 
will assume that the daemon (and userspace in general) died, and will 
stop pinging the watchdog without disabling it first. This will then 
cause a reboot if the watchdog is not re-opened in sufficient time. 
+0

Большое вам спасибо. Я прочитал прикрепленную ссылку. Что бы случилось, если мы просто пишем V, а не закрываем файл устройства? – nathan

0

Это задокументировано (в некоторой степени) в Documentation/watchdog/watchdog-api.txt. Однако я считаю, что этот документ частично устарел с watchdog driver unification. Написание любого символа на устройстве сторожевого таймера позволяет сторожевому пейджеру знать, что система жива.

Если процесс не записывается в /dev/watchdog, тогда драйвер ядра не выполняет проверку аппаратного сторожевого таймера, и система перезагрузится после сбоя сторожевого таймера. Это проблема, если вы хотите выполнить некоторое обслуживание, и вы предпочтете убедиться, что обслуживание завершается без риска перезагрузки, даже если это занимает много времени. Если вы напишете символ V, тогда сторожевой таймер будет отключен, когда процесс записи завершится /dev/watchdog и снова будет включен, когда /dev/watchdog будет вновь открыт. Затем вы можете выполнять обслуживание столько, сколько хотите.

+0

Так что, если мы пишем 1, а затем закрыть «/ DEV/сторожевую», аппаратный сторожевой таймер не будет отключен? или только когда мы пишем V, отключить будет? – nathan

+0

@ user3529352 Да. – Gilles

+0

Я просто подумал, пока мы закрываем «/ dev/watchdog», аппаратное обеспечение watchdao будет включено. Разве это не так? – nathan