最近在疑惑一件事情,在shell窗口中启动一个C进程,子进程会继承父进程的环境表,请问继承了环境表之后,环境表存储在C进程虚拟地址空间的什么位置中呢?数据区还是堆区?请各位大神答疑解惑,谢谢~~

解决方案 »

  1.   

    试一试environment/arguments section进 程(执行的程序)会占用一定数量的内存,它或是用来存放从磁盘载入的程序代码,或是存放取自用户输入的数据等等。不过进程对这些内存的管理方式因内存用途不一而不尽相同,有些内存是事先静态分配和统一回收的,而有些却是按需要动态分配和回收的。对任何一个普通进程来讲,它都会涉及到5种不同的数据段(如代码段,数据段,BSS段,堆段,栈段)。在进程被载入内存中时,基本上被分裂成主要的6个小的节(section)---如, .text节, .data节, .bss节, 堆节, 栈节, 环境/参数节.