Решение — принудительная перезагрузка процесса owserver.exe раз в сутки и по отваливанию 1-Wire сети.
Как это организовать:
------------------------------------- 1
В папке
C:\_majordomo\apps\autoitv3\
Создаём файл owstart.au3 с содержимым
Run("C:\Program Files\OWFS\bin\owserver.exe -u -p8234", "", @SW_MINIMIZE)
-u -p8234 надо заменить на свои параметры.
Затем создаём файл owstop.au3 с таким содержимым
ProcessClose("owserver.exe")
Копируем оба файла (owstart.au3 и owstop.au3) в папку
C:\_majordomo\htdocs\
------------------------------------- 2
В MajorDoMo, в сценариях создаём 2 скрипта
au3_owstart
с содержимым
safe_exec('"C:\_majordomo\apps\autoitv3\AutoIt3.exe owstart.au3"');
au3_owstop
с содержимым
safe_exec('"C:\_majordomo\apps\autoitv3\AutoIt3.exe owstop.au3"');
------------------------------------- 3
В объектах находим объект ClockChime и в методе onNewMinute помещаем такой код
if (timeIs('00:00')) {
runScript('au3_owstop');
runScript('au3_owstart');
}
Теперь в 0:00 процесс owserver.exe автоматически перезагрузится, освободит память и вероятность зависания станет минимальной.
------------------------------------- 4
В принципе этого достаточно, но у меня ещё введено дополнительное слежение за работой 1-Wire сети. Каждый датчик имеет такой параметр, как «здоровье». Если все 4 датчика «заболели», то вступает в действие код
if($h1==0 && $h2==0 && $h3==0 && $h4==0){
runScript('au3_owstop');
runScript('au3_owstart');
}
И 1-Wire сеть восстанавливает свою работу. Нерабочее состояние сети длится не более 180 секунд (это время дано датчику, чтобы одуматься и начать работать

Вот и всё! Теперь OWFS под Windows обрёл невиданную стабильность. Для внешнего наблюдателя он просто работает так как и должен работать.
