Linux内存中的Swap机制

2016-03-18  本文已影响388人  印度a三

本文主要是 http://blog.sina.com.cn/s/blog_502d765f0100krph.html 观后感,因本人要了解iOS内存优化而找到此为。感觉写的不错。

Linux主要的功能:

1 存储管理
2 内存管理
3 文件系统
4 进程管理
、、、等等

本文重点介绍:

swap机制

Linux支持虚拟内存,虚拟内存是指用磁盘当作RAM的扩展,(也就是硬盘存储)。这样就显得内存增大了,

举例子:启动一个程序,它会被加在到内存(也叫物理内存),假设它占内存1G,当运行一段时间后,它的内存在内存的占用量会减少到几十M。

原因:

磁盘内部有一部分区域叫做交换空间(swap Space),用作虚拟内存的硬盘,内存管理单元(MMU)会将内存中暂时不用的内存块内容写在硬盘上(交换空间),当需要时再从swap Space中读取到内存。这样内存就会空闲出来内存去做别的事情。

一般,在交换空间中的页面首先被换入内存;如果此时没有足够的物理内存来容纳他们又将被交换出来(到其他的交换空间中)。如果没有足够的虚拟内存来容纳所有这些页面,Linux就会波动而不正常;但经过一段较长的时间Linux会恢复,但此时系统已不可用了。

缺点:

在虚拟空间读去内容到内存肯定效率特别低,要慢数千倍。(如果是固态硬盘会好很多)

虚拟内存地址空间:

32位:4GB

64位:16GB
上一篇下一篇

猜你喜欢

热点阅读