执行时是逻辑地址空间中的整个exe吗?

时间:2017-11-03 10:49:31

标签: memory-management operating-system paging virtual-memory

当我运行exe时,整个exe逻辑上都在虚拟内存中,但只有几个页面映射到它们的实际帧,所以当一个未映射的页面被引发时,就会出现故障并且我们带来了内存中的帧,驱逐其他一些帧? 我的理解是否正确?

1 个答案:

答案 0 :(得分:0)

这是高度系统特定的。但是,在大多数系统中,可执行文件包含用于设置进程地址空间的指令。整个EXE未映射到进程地址空间。

在某些情况下(在某些系统上),EXE包含映射到地址空间的数据,EXE用作该数据的页面文件(例如代码和只读数据)。

对于未初始化的数据,EXE只包含分配这些页面的指令,并且必须将它们映射到页面文件。

因此,EXE中的数据未映射到进程地址空间,并且地址空间中的数据没有映射到EXE。