相关疑难解决方法(0)

IsBadReadPtr类似于Unix

在Unix中是否有类似于IsBadReadPtr的函数?至少IsBadReadPtr的一些功能?我想编写一个程序,如果某个进程发生了不好的事情(如SIGSEGV),它会做出反应并恢复一些信息.但我想检查指针,以确保数据没有损坏,看看它们是否可以安全访问.否则崩溃处理程序本身将崩溃,从而变得无用.

有什么建议?

c unix debugging libc

1
推荐指数
1
解决办法
2776
查看次数

如何"使用write()系统调用从页面读取(写入虚拟管道()文件描述符)"在C/C++中?

我需要测试内存地址是否可读,所以我搜索并发现了这个问题: 如何测试一个地址在linux userspace app中是否可读 如用户@caf所述:

规范的方法是使用write()系统调用从页面读取(写入虚拟管道()文件描述符).

不幸的是,他没有提供任何代码示例,我不能发表评论(低声誉)也没有给他发消息(至少我不知道如何).

编辑

我不能通过做那样的事情来省略创建管道吗?

int result = write(0, addr, 1);
Run Code Online (Sandbox Code Playgroud)

@Mats Petersson:我试图在使用函数指针(我正在递增指针并逐字节地复制其值)之后分析和更改函数,以确定它是否仍然是这个函数我需要知道内存是否可写和可读(我知道这是一个有点愚蠢的事情).无论如何,我不想改变我的程序的内存读/写权限,所以你说的可能是个问题.

编辑2 @Damon:有没有其他可靠的方法来做到这一点?

c c++ memory pointers

1
推荐指数
1
解决办法
239
查看次数

标签 统计

c ×2

c++ ×1

debugging ×1

libc ×1

memory ×1

pointers ×1

unix ×1