进程独立地址空间,'独立' 两个字如何理解

解决方案 »

  1.   

    在32位操作系统中。每个进程都可以分配2G或者3G的可用虚拟地址空间。不同进程的地址都是独立的。。比如a进程的地址0x40000和b进程的地址0x40000虽然地址值一样。但是指向的是各自独立的虚拟地址空间。指向的是不一样的地址。。
      

  2.   

    虽然独立的,但也可能掉向同样的内存,那就得看mapping了,比如ntdll.dll在每个进程中的地址相对都是一样的,在程序初始化时,都会被map到同一个地址当你去修改时才会不同,那是因为COW地址空间是独立的,但可以映射相同的东西