Linux内存中的Swap机制

本文主要是 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
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,239评论 2 33
  • 概述 我们都知道一个进程是与其他进程共享CPU和内存资源的。正因如此,操作系统需要有一套完善的内存管理机制才能防止...
    SylvanasSun阅读 3,896评论 0 25
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,482评论 25 708
  • 2012年上半年我初次接触Prezi,那时还在OriginateChina工作,有次在Weekly-Sharing...
    五清清阅读 2,152评论 1 34
  • 这本书的时间跨度是43年,讲的是奥古斯都统治下的罗马帝国。在这半个世纪不到的时间里面,罗马结束了500年的共和时代...
    蛀牙杰克苏阅读 684评论 0 51