当前位置: 技术问答>linux和unix
请教几个虚拟内存的问题!谢谢
来源: 互联网 发布时间:2016-02-10
本文导语: 1.每个进程都有属于自己的3G虚拟内存空间,这3G空间在哪儿?(如果交换分区为512M,硬盘的剩余空间2G,物理内存512M) 2.进程被创建完成,execv()调用可执行文件后,进程占多大的虚拟内存空间? 3.如果创建了10个进...
1.每个进程都有属于自己的3G虚拟内存空间,这3G空间在哪儿?(如果交换分区为512M,硬盘的剩余空间2G,物理内存512M)
2.进程被创建完成,execv()调用可执行文件后,进程占多大的虚拟内存空间?
3.如果创建了10个进程,30G的虚拟内存从哪儿来呢?
4.虚拟内存是不是也被分成4K大小的页?
5.进程共享内存时候,是共享的物理内存,还是虚拟内存?
2.进程被创建完成,execv()调用可执行文件后,进程占多大的虚拟内存空间?
3.如果创建了10个进程,30G的虚拟内存从哪儿来呢?
4.虚拟内存是不是也被分成4K大小的页?
5.进程共享内存时候,是共享的物理内存,还是虚拟内存?
|
"1.每个进程都有属于自己的3G虚拟内存空间,这3G空间在哪儿?"
非“3G虚拟内存空间”,而是3G虚拟地址空间,但是地址可以是内存,这跟超作系统,
硬件,总线有关,跟3G虚拟内存空间本身无关,这个跟汇编译也有关:)
那么你的问题1-3都解决了
"4.虚拟内存是不是也被分成4K大小的页? "
内存的管理基本单位是页,那么是一页,每页可以是4K或8k
"5.进程共享内存时候,是共享的物理内存,还是虚拟内存?"
共享虚拟地址空间,具体的对象可以是物理内存、虚拟内存、虚拟地址空本身
非“3G虚拟内存空间”,而是3G虚拟地址空间,但是地址可以是内存,这跟超作系统,
硬件,总线有关,跟3G虚拟内存空间本身无关,这个跟汇编译也有关:)
那么你的问题1-3都解决了
"4.虚拟内存是不是也被分成4K大小的页? "
内存的管理基本单位是页,那么是一页,每页可以是4K或8k
"5.进程共享内存时候,是共享的物理内存,还是虚拟内存?"
共享虚拟地址空间,具体的对象可以是物理内存、虚拟内存、虚拟地址空本身