Chinaunix

标题: 如何遍历内存地址? [打印本页]

作者: fedoracore4    时间: 2006-03-11 19:14
标题: 如何遍历内存地址?
如题,怎么样能用c程序遍历所有的内存地址呢?谢谢先
作者: zy116    时间: 2006-03-11 19:32
只有内核才能干这样的活吧...
作者: 高峰    时间: 2006-03-11 22:21
牛!!!
作者: mik    时间: 2006-03-11 22:36
原帖由 fedoracore4 于 2006-3-11 19:14 发表
如题,怎么样能用c程序遍历所有的内存地址呢?谢谢先



如果能这样的话, 就不会有 core dump 的问题了.
作者: ammer    时间: 2006-03-11 22:40
这基本不关语言的事.
如果是标准的 Linux ,用户空间的内存可以通过 /proc/self/mem 文件来读取, 内核空间的内存如果有 root 权限可以通过 /dev/kmem 来读取.
当然,并非 所有的 4G 空间都可以访问,只有映射到了物理页面的地址才是可以读的,这个是不是可以根据 /proc/self/maps 看出来.
没干过这事,我估计可以,你可以试试.

[ 本帖最后由 ammer 于 2006-3-11 23:20 编辑 ]
作者: win_hate    时间: 2006-03-11 23:42
不就一个循环么,仅仅遍历地址没问题的,不会有任何问题。
作者: fedoracore4    时间: 2006-03-12 11:18
谢谢大家的回复,不过能够给出详细一点的算法或者是代码吗?谢谢




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2