任务管理器-内存管理知识

 总是会回头去学习内存管理,可是又总是会学了又忘,或许对我这种没有真正好好写过程序的人来说,要弄懂它们真的不是一件容易的事情。

   常常从任务管理器和process explorer种可以看到关于内存的各个概念,那么它们到底什么意思呢 ?

 

 

 

 

 以下写上我比较口语化的简单的理解,或许还有偏颇,待我再深入了解后发现错误再改回来。

  vitrual memory:这是由于每个进程都能看到4G内存,而实际的物理内存是不可能那么大的,关键是很多进程共享的,那么操作系统就欺骗进程告诉它有4G.而实际操作系统只给working set和private bytes这些物理内存给它,当进程访问一个自己认为的地址的时候,都会被操作系统转换,如果在物理内存里面就让它访问,如果没有,就会触发页错误,操作系统就去磁盘上(也就是你设定的那个windows页文件pagefile.sys)寻找指定的页面,然后把它载入到内存,再让进程访问

  workingset:表示系统让这个进程可以使用的物理内存数量,由系统处理,主要为了代码运行而使用的。

  private bytes:表示进程自己提交申请的内存,主要是位了存放数据。

  ws private:记录了在workingset中被进程独享的空间大小。

  ws shareable 表示这些可以被其他进程共享,但包括没有共享和已经共享的。

  ws shared 表示已经共享的,一般应该是kernel32.dll这类文件

 page faults 每个进程都有working set,即指定的物理内存数量,当访问的内存不在物理内存时,就会一次page faults.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值