Linux系统Swap机制简介

1.什么是swap?

swap空间(swap space)是硬盘上的一块区域。虚拟内存是由可访问的物理内存和swap space组成,也即swap space是虚拟内存的一部分。swap存储那些暂时不活跃的内存页面。当操作系统决定要给活跃的进程(应该是指申请物理内存的进程和新创建的进程)分配物理内存空间并且可利用的物理内存不足时会用到swap space。

要清楚Linux中把物理内存的页面分为了两种类型匿名页和文件页。匿名页是指用户进程申请的堆内存所在物理页面;而文件页是指用于page cache(页高速缓存)和buffer cache(buffer缓存,用于缓存磁盘块)的内存页以及通过内存映射获取的文件映射页。文件页通常直接回收就行。匿名页才需要交换到swap space中暂存,因为匿名页里面的内容尽管进程暂时不访问,但还有可能被再次访问,因此不能直接回收。

如果物理内存紧张时,把不活跃的物理内存页面(就是这个物理页面里面的数据不经常访问)从物理内存移动到swap space并且释放该页所占用的物理内存,这就叫换出。对于进程中的虚拟地址空间中的一个页面来说,可以通过页表找到该页对应的物理页是存在于物理内存上还是swap space中。那如果说某个进程要访问的页面在swap space中

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值