2015-05-27 5 views
6

Я пытаюсь кормить сторожевое устройство - /dev/watchdog в Raspbian - от С.сторожевые: Устройство или ресурс занят

Проблемы не является независимо от того, как я пытаюсь получить доступ к устройству всегда кидает заняты или разрешение Отказана ошибка (поскольку процесс уже запущен и подается системой ..).

В watchdog API говорит, что '..следующие водители не отключат сторожевых если конкретный магический символ „V“ не было отправлены /DEV/сторожевой непосредственно перед закрытием файла. но потом снова я не могу запись /dev/watchdog .. Я пробовал:

echo V > /dev/watchdog //bash, /dev/watchdog: Permission denied 

open("/dev/watchdog", O_WRONLY); //C, Device or resource busy 

Есть ли способ, чтобы освободить устройство таким образом я могу контролировать сердцебиение от C?

+0

Что говорит 'fuser -v/dev/watchdog'? – Dummy00001

+0

Ничего, просто пусто. – TMichel

+0

Вы используете 'echo V>/dev/watchdog' как root? Что касается программы, закрываете ли вы файл после его открытия? – CJxD

ответ

5

У меня была эта проблема, когда я работал с малиной Pi. В моем приложении использовалось большое время процессора. После 1 или 2 дней работы это вызвало завивку малины. Поэтому я решил использовать wtchdog. Когда я захотел написать сторожевое устройство из C++-программы, я получил такую ​​же ошибку.

Решение, которое я нашел:

открыть новое правило файла sudo nano /etc/udev/rules.d/60-watchdog.rules

и добавьте эту строку в файл KERNEL=="watchdog", MODE="0666"

После этого, я был в состоянии получить доступ к экрану форму терминала сторожевого или C++.

+0

Я не могу попробовать прямо сейчас, но если он работает, это золото. Большое вам спасибо, и я буду держать вас в курсе. – TMichel

+0

Это решение работает и для меня. Большое спасибо! –

+0

Не работает для меня: все еще «Устройство или ресурс занят». @TMichel: У вас есть какой-то прогресс? – beemaster

Смежные вопросы