×

软件陷阱+程序口令-对付PC指针弹飞

消耗积分:5 | 格式:rar | 大小:333 | 2009-04-28

分享资料个

用“软件陷阱+程序口令”对付PC指针的弹飞
当CPU受到外界干扰,有时PC指针会飞到另一段程序中,或跳到空白段去。
如果PC指针飞到空白段去,倒也好处理。只要在空白段设立软件陷阱(拦截指令),将程序拦截到初始化段或程序错误处理段。
但是,如果PC指针飞到另一段程序中去了,系统如何办?思路如下:
1、首先,程序必须模块化。每个模块(子程序)执行一个功能。每个模块只有一个出口(RET)。
2、设立一个模块(子程序)ID寄存器。
3、为每个子程序配置一个唯一的ID号码。
4、每当子程序执行完毕,要返回(RET)之前,先将本子程序的ID号送入 ID寄存器
5、返回到上级程序后,先判断ID寄存器中的ID号。如果正确,则继续执行;如果不正确,则表示PC指针有可能已经跳错了,子程序没有按预计的出口返回,这时将程序拦截到初始化段或程序错误处理段。
这种方法,如同在程序中设立了若干个岗哨,每次调用子程序返回后,都要对口令(ID号),验明正身后再放行。再配合软件陷阱,基本上可以将大多数PC指针弹飞的现象检测到。到了程序错误处理段,要杀要剐(冷启动还是热启动)就由您了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

评论(0)
发评论

下载排行榜

全部0条评论

快来发表一下你的评论吧 !