osx上的'I Space'和'D Space'是什么以及它们之间的区别

时间:2012-04-17 08:21:23

标签: ios macos ptrace

在sys / ptrace.h中,我看到了类似的内容:

@define PT_READ_I  1 /* read world in child's I space*/
@define PT_READ_D  2 /* read world in child's D space*/
@define PT_READ_U  3 /* read world in child's user structure*/

什么是'我空间'和'D空间'和'用户结构'?

1 个答案:

答案 0 :(得分:3)

引用手册页:

  

传统上,ptrace()有                      允许具有不同地址空间的机器                      指令和数据,这就是为什么有两个请求:                      从概念上讲,PT_READ_I从指令空间读取                      和PT_READ_D从数据空间读取。在当前                      在NetBSD实现中,这两个请求完全是                      相同。

现在关于PT_READ_U:

  

此空间包含有关的寄存器和其他信息            处理;其布局对应于系统中的用户结构