BsD*_*BsD 6 memory operating-system memory-management cpu-architecture
进程的内存映射似乎被分段为段(堆栈,堆,bss,数据和文本),
在支持虚拟内存的现代操作系统中,进程的地址空间被划分为这些段.并且通常情况下,进程的地址空间以完全随机的方式投射到物理RAM上(具有一些固定的粒度,通常是4K).彼此相邻的地址空间页不必投影到RAM的相邻物理页中.RAM的物理页不必保持与进程的地址空间页相同的相对顺序.这一切都意味着在RAM中没有这样的分离,并且不可能存在.
为了优化内存访问,操作系统可能(通常会)尝试将进程地址空间的连续页面映射到RAM中的顺序页面,但这只是一种优化.通常情况下,映射是不可预测的.最重要的是,RAM由系统中的所有进程共享,属于不同进程的RAM页面在RAM中任意交错,这消除了在RAM中具有这种"段"的任何可能性.RAM中没有特定于流程的排序或分段.RAM只是虚拟内存机制的缓存.
同样,每个进程都使用自己的虚拟地址空间.这是这些细分可以存在的地方.该进程无法直接访问RAM.该过程甚至不需要知道RAM存在.