很小地址处的存储器内容

时间:2019-12-30 16:20:21

标签: operating-system memory-address

有人可以告诉我,在基于Linux的操作系统(如CentOS和Windows)中,很小的地址(0-100)(例如地址7)具有什么内容?

1 个答案:

答案 0 :(得分:0)

虚拟地址不足

对于大多数操作系统,虚拟地址空间的至少下半部分取决于它所属的进程(上部为“内核空间”)。通常,为了捕获狡猾的指针(包括“ int pointer = NULL; foo = pointer[1234];”和“ struct myStructure *pointer = NULL; foo = pointer->myField;”之类的东西;其中访问的地址不是指针所指向的地址),最低的虚拟地址被保留用于没什么这样一来,如果有任何软件尝试访问它,则CPU会生成页面错误,以通知内核该软件试图执行非常错误的操作。

物理地址不足

什么是低物理地址取决于它是哪种计算机类型(80x86,ARM,MIP,...),固件是什么(例如BIOS,UEFI)和其他因素(芯片组的配置方式)。没有这些信息,就不可能有一个明确的答案(唯一可能的答案是“没人知道”)。