【linux】swap学习

在 Linux 系统中,swap 是一种用于扩展系统内存的技术。当物理内存(RAM)不足时,系统会将一部分不常用的内存数据移至 swap 空间,从而释放物理内存供其他程序使用。Swap 空间可以是一个单独的分区(swap 分区),也可以是一个文件(swap 文件)。

Swap 分区

Swap 分区是一个专门用于 swap 的磁盘分区。在安装 Linux 系统时,你可以选择创建一个 swap 分区。通常,swap 分区的大小建议为物理内存的 1 到 2 倍,但这并不是固定的规则,具体大小取决于系统的使用情况和需求。

Swap 文件

Swap 文件是一个位于普通文件系统中的特殊文件,它被用作 swap 空间。与 swap 分区相比,swap 文件更加灵活,因为它不需要预先分配一个单独的分区,而是可以在需要时创建和调整大小。

使用 Swap 的场景

  • 内存不足:当系统运行大量程序或某个程序需要大量内存时,物理内存可能不足,此时 swap 空间可以用来临时存储数据。

  • 休眠功能:某些 Linux 发行版使用 swap 空间来实现休眠功能,即将内存中的数据保存到 swap 空间,然后关闭系统,下次启动时再从 swap 空间恢复数据。

管理 Swap

在 Linux 中,你可以使用多种命令来管理 swap 空间,

swapon

用途:启用 swap 分区或 swap 文件。

  • 参数:

    • -a:启用 /etc/fstab 文件中列出的所有 swap 设备。

    • -e:类似于 -a,但不启用已经激活的 swap 设备。

    • -s:显示 swap 设备的状态信息。

# 启用名为 /dev/sda2 的 swap 分区
sudo swapon /dev/sda2  

# 启用名为 /swapfile 的 swap 文件
sudo swapon /swapfile 
swapoff

用途:禁用 swap 分区或 swap 文件。

  • 参数:

    • -a:禁用所有 swap 设备。

# 禁用名为 /dev/sda2 的 swap 分区
sudo swapoff /dev/sda2  

# 禁用名为 /swapfile 的 swap 文件
sudo swapoff /swapfile  
mkswap

用途:格式化磁盘分区或文件为 swap 格式。

 # 格式化 /dev/sda2 为 swap 分区
sudo mkswap /dev/sda2 

# 格式化 /swapfile 为 swap 文件
sudo mkswap /swapfile  
free

用途:显示系统内存和 swap 的使用情况

# 以人类可读的格式显示内存和 swap 使用情况
free -h  

top 或 htop

用途:配置系统启动时自动挂载的文件系统,包括 swap 分区或文件。

# 启动 top 命令
top 

# 启动 htop 命令(需要安装)
htop 

注意事项

  • 虽然 swap 可以缓解内存不足的问题,但它比物理内存慢得多,因为磁盘 I/O 速度远低于 RAM。

  • 过度依赖 swap 可能会导致系统性能下降,因为频繁的内存和磁盘之间的数据交换会消耗大量时间。

  • 在现代系统中,由于物理内存通常比较充足,swap 的使用频率可能不如以前那么高。但在某些情况下,如服务器或资源受限的环境中,swap 仍然是一个重要的资源管理工具。




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/679791.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

今日份动态规划学习(二维01背包+01背包变形)

目录 P1877 [HAOI2012] 音量调节 P1877 [HAOI2012] 音量调节 题解:一个入门级别的01背包问题,首先就是为什么能看出是01背包,因为只有两种状态,要不增大音量,要不减小音量,和01背包的选与不选非常近似。但…

学习笔记——IP地址网络协议——IPV4地址配置与应用

五、IPV4地址配置与应用 1、IP地址的基础配置命令 2、案例:配置接口IP地址 3、Loopback接口 Loopback接口∶用户需要一个接口状态永远是Up的接口的IP地址时,可以选择Loopback接口的IP地址。 Loopback接口一旦被创建,其物理状态和链路协议状…

消防认证-饰面型防火涂料

一、消防认证 消防认证是指消防产品符合国家相关技术要求和标准,且通过了国家认证认可监督管理委员会审批,获得消防认证资质的认证机构颁发的证书,消防产品具有完好的防火功能,是住房和城乡建设领域验收的重要指标。 二、认证依据…

【Linux】进程(5):命令行参数

大家好,我是苏貝,本篇博客带大家了解Linux进程(5):命令行参数,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 (A)为什么要有命令…

JavaWeb基础(JQuery,XML及解析)

这个阶段有点拖沓了,因为事情比较多,耽搁了一段时间,学习的主要内容为JQuery和XML,因为vue的出现,JQuery技术现在已经不流行了,但是不流行不代表我不会,JQuery最最最最核心的就是他的$()核心函数…

阿里云sls 采集日志安装记录

参考阿里云给的安装文档 阿里云安装Logtail组件 注意这里,选择地域,是中国地域选中国,海外选海外即可 按照文档继续下去 修改配置文件./alibaba-cloud-log-all/values.yaml 所有的操作完成后,去控制台配置 以上操作的前提是…

数据可视化---使用matplotlib绘制高级图表(2)

题目一:绘制人口金字塔图 编写程序。根据第8.6,绘制如下图的人口金字塔图。 运行代码: #绘制人口金字塔图 import numpy as np import pandas as pd import matplotlib.pyplot as plt plt.rcParams[font.sans-serif] SimHei plt.rcParams[…

交互式流程图组件DHTMLX Diagram v6.0 - 拥有更灵活的高度可定制功能

DHTMLX Diagram库允许用几行代码构建JavaScript流程图,通过自动布局和实时编辑器,它可以更容易地将复杂数据可视化到一个整洁的层次结构中。 DHTMLX Diagram v6.0版本发布,带来了众多令人兴奋的新功能和改进,使得这个JavaScript图…

【SITS_CC】卫星图像时间序列的变化字幕(IEEE GRSL)

摘要 Satellite images time series (SITS) 提供了一种有效的方法来同时获取地球上观测区域的时间和空间信息。然而,传统的遥感CD方法的输出是二进制图或语义变化图,往往难以被最终用户解释,传统的遥感图像变化字幕方法只能描述双时图像。提…

ARM32开发——串口输出

🎬 秋野酱:《个人主页》 🔥 个人专栏:《Java专栏》《Python专栏》 ⛺️心若有所向往,何惧道阻且长 文章目录 需求串口数据发送串口打印实现复用功能串口发送流程(了解)串口的标志位关心的内容 需求 串口循环输出内容到…

AI生成PPT:一键式演示文稿制作的秘诀

工欲善其事,必先利其器。 随着AI技术与各个行业或细分场景的深度融合,日常工作可使用的AI工具呈现出井喷式发展的趋势,AI工具的类别也从最初的AI文本生成、AI绘画工具,逐渐扩展到AI思维导图工具、AI流程图工具、AI生成PPT工具、AI…

java 原生http服务器 测试JS前端ajax访问实现跨域传post数据

后端 java eclipse 字节流转字符 package Httpv3;import com.sun.net.httpserver.Headers; import com.sun.net.httpserver.HttpExchange; import com.sun.net.httpserver.HttpHandler; import com.sun.net.httpserver.HttpServer;import java.io.IOException; import java.i…

测试工具链

缺陷管理 bug管理工具 devops---项目管理--缺陷管理 bug管理地址 https://devsecops.mychery.com:8443/chery/project?filterROLE&statusACTIVE bug管理环境 采用公司的devops平台,对每个项目的bug进行管理。目前在使用 接口测试和服务端性能测试 工具…

Python-3.12.0文档解读-内置函数zip()详细说明+记忆策略+常用场景+巧妙用法+综合技巧

一个认为一切根源都是“自己不够强”的INTJ 个人主页:用哲学编程-CSDN博客专栏:每日一题——举一反三Python编程学习Python内置函数 Python-3.12.0文档解读 目录 详细说明 基本用法 示例 特性 高级用法 注意事项 版本更新 示例代码 记忆策略…

「小明赠书活动」第五期“网安三剑客”套系图书《内网渗透技术》《渗透测试技术》《Web应用安全》

大模型风潮已掀起,各大巨头争相入局,从ChatGPT到Sora,全球的AI应用“卷出了花”。然而,网络安全人员在享受AI技术带来的便捷之余,也不得不面对一系列新兴的安全挑战,无法忽视。 ⭐️ 赠书 - 图书简介 人…

攻防世界---misc---Aesop_secret

1、下载附件一张动图,仔细观察发现它分成了很多小块,观察小块但是感觉又不像是二维码,可能需要把图片拼起来 2、用winhex分析,发现有一串编码,看编码的开头,猜测是AES加密 3、解码需要密码 4、想到刚刚的图…

MySQL——C语言连接数据库

MySQL Connection ​ 连接数据库的客户端除了命令行式的还有图形化界面版本,网页版本,当然也包括语言级别的库或者是包,能够帮助我们直接连接数据库; 一、语言连接库下载 方式一:不建议使用,需要自己配置…

RabbitMQ简介

一、安装和使用方式 1.https://www.erlang.org/ https://www.rabbitmq.com/ 2.先安装Erlang,管理员安装,在安装rabbitMQ,也是管理员安装,因为rabbitMQ是用Erlang语言开发的。且每个版本的RabbitMQ对应不同的Erlang版本&…

【深度学习】【机器学习】支持向量机,网络入侵检测,KDD数据集

文章目录 环境加载数据归一化数据训练模型用测试数据集给出评估指标准确率召回率预测某个输入数据随便取一行数据加载训练好的SVM支持向量机模型并预测 全部数据和代码下载 环境 之前介绍过用深度学习做入侵检测,这篇用向量机。 环境Python3.10 requirements.txt…

C++候捷stl-视频笔记3

算法的形式 Cmp通常是个比大小的准则,是Functor。 算法所需的信息通常指迭代器如何移动 迭代器的分类 array,vector,deque它们是连续的,它们的迭代器是Random Access Iterator/随机访问迭代器 list的迭代器是Bidirectional Itera…