免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5043 | 回复: 11
打印 上一主题 下一主题

CPU是否支持内存越界检测 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-11-11 18:13 |只看该作者 |倒序浏览
比如定义一个数组或者分配一块内存,或者分配操作系统内核栈等,在数组区或者内存区或者内核栈等后面(和前面)附加一个空闲字节(或者字),字节中填写魔术字(或者其它特殊的硬件状态,CPU可以检测),当cpu写内存时,如果发现该字节内容是魔术字,就触发异常,记录函数调用堆栈。软件人员再根据堆栈判断是否是内存写越界。


我认为这个功能很有用很重要,就是不知道是否有CPU支持

如果没有,我认为应该增加这样的功能

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
2 [报告]
发表于 2012-11-12 20:08 |只看该作者
mordorw 发表于 2012-11-11 18:13
比如定义一个数组或者分配一块内存,或者分配操作系统内核栈等,在数组区或者内存区或者内核栈等后面(和前 ...

魔术字和普通字有什么区别?

论坛徽章:
0
3 [报告]
发表于 2012-11-13 09:17 |只看该作者
本帖最后由 mordorw 于 2012-11-13 09:19 编辑
cjaizss 发表于 2012-11-12 20:08
魔术字和普通字有什么区别?




魔术字落在普通字集合的概率非常低,如果要写的内存字节(字)的值是魔术字,就很有可能是内存越界。不过需要CPU他娘的支持。

论坛徽章:
4
天秤座
日期:2013-10-18 13:58:33金牛座
日期:2013-11-28 16:17:01辰龙
日期:2014-01-14 09:54:32戌狗
日期:2014-01-24 09:23:27
4 [报告]
发表于 2012-11-13 10:10 |只看该作者
如果他娘的程序是跳着写的,只写1,3,5……,估计该cpu蛋疼了。

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
5 [报告]
发表于 2012-11-13 10:31 |只看该作者
mordorw 发表于 2012-11-13 09:17
魔术字落在普通字集合的概率非常低,如果要写的内存字节(字)的值是魔术字,就很有可能是内存越界。 ...

就算不是等概率吧
也就是说普通情况下还是要用
如果碰到了,你又凭什么说这是用到的数据还是你所谓的“魔术字”呢?

论坛徽章:
0
6 [报告]
发表于 2012-11-13 12:13 |只看该作者
本帖最后由 mordorw 于 2012-11-13 12:18 编辑
cjaizss 发表于 2012-11-13 10:31
就算不是等概率吧
也就是说普通情况下还是要用
如果碰到了,你又凭什么说这是用到的数据还是你所谓的“ ...


所以还需要人工判断,如果用魔术字,不能100%

论坛徽章:
0
7 [报告]
发表于 2012-11-13 12:20 |只看该作者
liuiang 发表于 2012-11-13 10:10
如果他娘的程序是跳着写的,只写1,3,5……,估计该cpu蛋疼了。


这不是玩游戏,是debug

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
8 [报告]
发表于 2012-11-13 13:21 |只看该作者
mordorw 发表于 2012-11-13 12:13
所以还需要人工判断,如果用魔术字,不能100%

。。。。。。
你所需要的这些都可以用软件的强扩展支持

论坛徽章:
0
9 [报告]
发表于 2012-11-13 15:08 |只看该作者
cjaizss 发表于 2012-11-13 13:21
。。。。。。
你所需要的这些都可以用软件的强扩展支持


怎么弄,怎么弄,这个对我很有用

论坛徽章:
3
2015年迎新春徽章
日期:2015-03-04 09:56:11数据库技术版块每日发帖之星
日期:2016-08-03 06:20:00数据库技术版块每日发帖之星
日期:2016-08-04 06:20:00
10 [报告]
发表于 2012-11-13 15:17 |只看该作者
mordorw 发表于 2012-11-13 15:08
怎么弄,怎么弄,这个对我很有用

你为了调试的意图?在你觉得可能溢出的地方加调试代码吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP