专栏首页zhangdd.comLinux Swap交换分区介绍总结

Linux Swap交换分区介绍总结

什么是Linux swap space呢?我们先来看看下面两段关于Linux swap space的英文介绍资料:

Linux divides its physical RAM (random access memory) into chucks of memory called pages. Swapping is the process whereby a page of memory is copied to the preconfigured space on the hard disk, called swap space, to free up that page of memory. The combined sizes of the physical memory and the swap space is the amount of virtual memory available.

Swap space in Linux is used when the amount of physical memory (RAM) is full. If the system needs more memory resources and the RAM is full, inactive pages in memory are moved to the swap space. While swap space can help machines with a small amount of RAM, it should not be considered a replacement for more RAM. Swap space is located on hard drives, which have a slower access time than physical memory.Swap space can be a dedicated swap partition (recommended), a swap file, or a combination of swap partitions and swap files.

Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后,Cache Memory也不会自动释放。这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存变少。当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。

关于Swap分区,其实我们有很多疑问,如果能弄清楚这些疑问,那么你对Swap的了解掌握就差不多了。如何查看Swap分区大小? Swap分区大小应该如何设置?系统在什么时候会使用Swap分区? 是否可以调整? 如何调整Swap分区的大小?Swap分区有什么优劣和要注意的地方? Swap分区是否必要?那么我一个一个来看看这些疑问吧!

查看Swap分区大小

free -m

total used free shared buff/cache available Mem: 64304 14396 274 1683 49632 47541 Swap: 7999 1772 6227

swapon -s

Filename Type Size Used Priority /dev/sda3 partition 8191996 1815988 -1

我这里划分了8G

Swap分区大小设置

系统的Swap分区大小设置多大才是最优呢? 关于这个问题,应该说只能有一个统一的参考标准,具体还应该根据系统实际情况和内存的负荷综合考虑,像ORACLE的官方文档就推荐如下设置,这个是根据物理内存来做参考的。

RAM

Swap Space

Up to 512 MB

2 times the size of RAM

Between 1024 MB and 2048 MB

1.5 times the size of RAM

Between 2049 MB and 8192 MB

Equal to the size of RAM

More than 8192 MB

0.75 times the size of RAM

另外在其它博客中看到下面一个推荐设置,当然我不清楚其怎么得到这个标准的。是否合理也无从考证。可以作为一个参考。

4G以内的物理内存,SWAP 设置为内存的2倍。

4-8G的物理内存,SWAP 等于内存大小。

8-64G 的物理内存,SWAP 设置为8G。

64-256G物理内存,SWAP 设置为16G。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Linux之交换分区SWAP

    雨落凋殇
  • 给已安装的Linux新增Swap交换分区

    跟了我 5 年多的本本已步入花甲,CPU 严重老化,运行 Windows 异常吃力,于是考虑换成 Linux 试试。忙活了一天,测试了 2 个“家用”Linux...

    张戈
  • Centos7中添加、删除Swap交换分区的方法

    Linux 将物理内存分为内存段,叫做页面。交换是指内存页面被复制到预先设定好的硬盘空间(叫做交换空间)的过程,目的是释放对于页面的内存。物理内存和交换空间的总...

    砸漏
  • Linux添加swap分区的方法

    以上所述是小编给大家介绍的Linux添加swap分区的方法,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

    砸漏
  • Linux解决内存不足-添加SWAP交换分区

    laulzgoay
  • 详细解读linux下swap分区的作用

    嵌入式Linux中文站消息,Linux系统的Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间...

    砸漏
  • 图解 | Linux内存回收之LRU算法

    内存 是操作系统非常重要的资源,操作系统要运行一个程序,必须先把程序代码段的指令和数据段的变量从硬盘加载到内存中,然后才能被运行。如下图所示:

    用户7686797
  • 揭开Linux的Swap之谜

    为什么选择Linux?因为Linux能让你掌握你所做的一切!   为什么痛恨Windows?因为Windows让你不知道自己在做什么!   这就是我喜欢Linu...

    一见
  • 为什么 Linux 需要 Swapping

    对 Linux 稍有了解的人都知道,Linux 会将物理的随机读取内存(Random Access Memory、RAM)按页分割成 4KB 大小的内存块,而今...

    用户6543014
  • linux free命令详解

    free 命令显示系统内存的使用情况,包括物理内存、交换内存(swap)和内核缓冲区内存。

    砸漏
  • Linux设置虚拟内存的教学与实战教程

    对于 C 语言里面的变量,我们可以使用 & 运算符来获得其地址, 既然是虚拟地址,就是指这个地址是虚拟的。

    砸漏
  • Linux中swap与memory介绍

    这篇文章介绍一下 Linux 中 swap 与 memory。memory 就是机器的物理内存ram,读写速度低于 cpu 一个量级,但是高于磁盘不止一个量级...

    风之小云天
  • Linux之free命令

    原文链接:https://rumenz.com/rumenbiji/linux-free.html

    入门笔记
  • 了解你服务器的心情——top命令详解

    top是Linux较为常用的命令,可以监控服务器的CPU、内存、进程的运行情况,话不多说,直接操作。 输入top即可启动: ? 下面我们就来逐一介绍top向我们...

    大闲人柴毛毛
  • 【技术创作101训练营】Linux服务器的晴雨表—top命令

    系统现在共有447个进程,其中处于运行中的有1个,445个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有1个。

    程序员小明
  • 看你用错了没!Linux必知必会之内存使用统计命令free

    本文由马哥教育面授班25期学员推荐,转载自互联网,作者为Alli,内容略经小编改编和加工,观点跟作者无关,最后感谢作者的辛苦贡献与付出。 本文详细介绍了Linu...

    小小科
  • Linux内存、Swap、Cache、Buffer详细解析

    设计的目的就是当上面提到的+buffers/cache表示的可用内存都已使用完,新的读写请求过来后,会把内存中的部分数据写入磁盘,从而把磁盘的部分空间当做虚拟内...

    用户1278550
  • Linux检查Swap交换空间的五个命令小结

    Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完...

    砸漏
  • Linux必知必会-理解内存使用统计命令free

    本文详细介绍了Linux系统中的free命令的使用方法以及关键参数的含义,这可能是你见过的关于free命令最详细的一篇文章了,绝对值得你收藏。

    用户2131907

扫码关注云+社区

领取腾讯云代金券