안녕하세요^^;;
watchdog을 좀 보고있는데요... 개념이 안잡혀서 기본적인 질문좀 드릴께요^^;;;
(타겟보드.... 퀄컴칩이고 Linux Kernel 2.6.35에 안드로이드 2.3 입니다..)
CPU안에 같이 있거나,, 혹은 밖에 있기도한...
HW watchdog이 타이머에 의해서 설정된 카운트를 감소시키는데...
Task들이 정상적으로 동작한다면 타이머를 리셋시키고...
혹시나 문제가 생겨 Kick이 안된다면... watchdog이 processor를 리셋 시키는거 맞나요??
그렇다면... watchdog timer를 리셋시키는... kick 레지스터에 값을쓰는,
즉, 개를 발로차는 애가 누구인지 모르겠습니다.
( watchdog 드라이버에 타이머를 리셋시키는 함수를 누가 호출하는건지..;;)
구글링 해봐도... 사나운 개(watchdog)를 주기적으로 발로 차줘야 물지않고,,, 혹시나 문다면 리셋이 일어난다는..
이런 이론적인 내용뿐이라.. 실제로 내부적으로는 어떻게 동작하는건지 알고 싶습니다..
(H/W에 대한 개념이 전무한...ㅠ APP 개발자다보니;;; 잘 모르겠습니다..ㅎㅎ)
그리고.. 커널의 디바이스 드라이버에 보면 데몬으로 동작하는 S/W watchdog이 있는데요..
이게 HW Watchdog과 무슨 차이가 있는건지도 좀 알려주시면 감사하겠습니다~
몇일동안... watchdog 문서만 들여다 보고있으니.. 꿈에도 개가 나올것 같습니다..ㅠ