linux-物理内存不够,swap交换内存来凑
1、前言
实际工作中,机器的物理内存是固定的,由内存条容量决定,不够的话容易导致内存溢出,影响程序运行,甚至直接死机。如果想拓展物理内存只能再买内存条或者换大内存条。但是不想换内存条的情况下,也可以通过交换内存来间接的实现内存拓展。
swap交换空间,当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。
2、swap值
物理内存 |
交换分区(SWAP) |
<= 4G |
至少4G |
4~16G |
至少8G |
16G~64G |
至少16G |
64G~256G |
至少32G |
3、优点:
当内存完全用完时提供溢出空间
可以将不需要的物品从高速存储器中移出
允许您休眠
4、缺点:
由于SWAP分区不会动态调整大小,因此会占用硬盘驱动器上的空间
会增加硬盘的磨损
不一定会提高性能
5、swappiness值
swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。内存的速度会比磁盘快很多,这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以如果物理内存足够的话,要尽可能使用物理内存。
查看swappiness值,0-100:低 不积极依赖交换空间、高 积极依赖交换空间
cat /proc/sys/vm/swappiness
linux-物理内存不够,swap交换内存来凑相关推荐
- 教你如何进行 linux swap 交换内存扩容
导读 本文教你如何进行Linux系统的swap交换内容的扩容. swap交换内存主要是指当物理内存不够用时,系统会启用硬盘的一部分空间来充当服务器内存,而默认情况下swap内存会有一些设置标准,它与物 ...
- linux 创建/删除 swap交换分区
linux 创建/删除 swap交换分区 阿牛太帅 2019-02-20 15:16:02 2409 收藏 2 文章标签: swap交换分区 版权 linux 创建swap交换分区 swap 作为 ...
- top和iostat指令的使用,linux负载,swap与内存,io
怎么查看机器IO占用情况? iostat 或 sar 怎么查看机器网络状况? dstat top指令 一.信息显示 Linux系统可以通过top命令查看系统的CPU.内存.运行时间.交换分区.执行的 ...
- linux物理内存虚拟内存一致,Liunx内存管理的调用和实现
下面我们探讨一下关于内存管理的系统调用方式.事实上,POSIX 并没有给内存管理指定任何的系统调用.然而,Linux 却有自己的内存系统调用,主要系统调用如下 系统调用描述s = brk(addr)改 ...
- linux查看与修改交换内存配置(解决zabbix-agent启动报错)
问题 zabbix-agent在一台centos6.5上启动报错: cannot allocate shared memory of size 949056: [28] No space left o ...
- linux开机内存报错,linux查看与修改交换内存配置(解决zabbix-agent启动报错)
问题 zabbix-agent在一台centos6.5上启动报错: cannot allocate shared memory of size 949056: [28] No space left o ...
- Ubuntu Linux 下优化 swap 交换分区及调整swap大小
在 ubuntu 里面,swappiness的值的大小对如何使用swap分区是有着很大的联系的.swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=1 ...
- linux 增加交换空间,在linux上增加swap交换空间
增加交换空间有两种方法: 严格的说,在系统安装完后只有一种方法可以增加swap,那就是本文的第二种方法, 至于第一种方法应该是安装系统时设置交换区. 1.使用分区: 在安装OS时划分出专门的交换分区, ...
- 关闭Linux服务器的swap交换空间
备份 /etc/fstab cp /etc/fstab /tmp/fstab.`date +%F` 删除 /etc/fstab 中 swap 挂载项 vim /etc/fstab 删除带swap的行 ...
最新文章
- 【转载】c#类的成员初始化顺序
- 用例子说明MVC 设计模式(以Objective-C 实现)
- 函数集成redis与Spring集成
- 货店管理(delphi+sqlserver)
- Python操作docx文档设置居中并创建表格
- Tmux 配置:打造最适合自己的终端复用工具
- Android真机连接Eclipse时,打不开File Explorer下的data文件夹解决方法
- php报503怎么排查,php监控日志500、503错误并发送邮件提示的代码
- 【源码】高精度31波段音频均衡器
- 谈宏晶STC单片机的ISP功能 (芯片保密性)转
- Flink写入hdfs报错:Flink job failed with “Checkpoint Coordinator is suspending
- 中国混合现实产业调研分析及发展战略研究报告2021-2027年版
- 红米9A成功root.9秒解锁BL MIUI12 root权限刷 Magisk面具 TWRP
- Core dump去哪里了?
- 网络攻防技术与实践笔记-信息收集技术手段
- 实物1操作:stc8a单片机和普通51/52单片机的异同以及下载步骤(点亮一盏LED为例)
- 3000字干货!如何做好一个BI项目的规划和需求定义?
- 如何查看JAVA进程CPU占用100%的原因
- 20161221windows的snmp端口号更改
- 欧几里德与拓展欧几里德定理