看门狗,为什么要看门狗了
我觉得看门狗的作用很有限,一个正常运行的程序,是不需要看门狗来干遇的,如果需要那一定是程序有问题.
如果程序没问题,但真的跑飞了, 程序为什么会飞了,PC指针被修改, PC指针可以被修改,那么RAM里的数据也可以被修改,这两种的发生概率,个人认为是一致的.这时候, 看门狗动不动作,已无关紧要, 因程序已经出错了,而且有可能已导致严重后果.
当然,我不知道有没有人可以写出足够健壮的程序,可以在这种情况下运行不出错(可以不工作,但不能做错误的事).个人分析觉得,随机产生的数据变动, 即使加路标,加数据校验,也还是有会出错. 因为最近在做一个产品测试,比较变态,只接对裸板放电,单片机,随便复位, 在程序加了严格的校验(不敢保证完全没漏洞),仍然在多次实验中,产生误动作.
|
|