进程 虚拟空间

系统每个进程都有自己的内存页表,页表内保存了进程的物理内存页和虚拟内存页之间的对应关系。

页表中每个页表项对应于一个虚拟内存页,包含了对应的物理内存页标号、页表项的有效标志以及相应的物理页访问控制属性。

进程虚拟地址包括两方面信息,一个是虚拟页帧编号,作为访问进程页表的索引;另一个是偏移量。当进程访问某虚拟地址时,CPU根据虚拟页帧编号从进程的页表中获取相应的物理页帧编号,物理页帧编号乘以4k(内存页的大小)就是线性物理地址的基地址,再加上虚拟地址的偏移量就是实际的物理地址。

//////////////////////////////////////////////////

swap分区 解决虚拟内存大于物理内存的问题。swap分区作为虚拟内存和物理内存的缓存

虚拟内存是使用磁盘当作RAM的扩展。 

内存映射使一个磁盘文件与存储空间中的一个缓存相映射

/////////////////////////////////////////////////

利用虚拟内存,不同进程的虚拟内存页可以映射到同一个物理内存页。如不同进程要写入同一物理内存时,OS捕捉这一情况,并分配一个新的内存页,复制原有内容,在继续写入操作,这就是“写时复制”技术


 


linux可用内存地址空间3G,从0x00000000到0xC0000000,

从0xC0000000到0xFFFFFFFF的1G内存区间映射到了内核的代码和数据,进程不能访问


 


windows中0x00001000到0x7FFFFFFF的2G空间是进程的私有地址空间,当win32进程装入时,它要求访问的DLL,包括KERNEL32.DLL, USER32.DLL, GDI32.DLL均装入这里.

0x8000000到0xFFFFFFFF是windows NT 内核区域,进程不能访问

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值