当前位置: 首页 > news >正文

9. Linux 交换空间管理

9. Linux 交换空间管理

计算机存储器的层次结构

计算机存储器速度越快,成本较高。 为了获得好的性能/价格比,计算机中各种存储器组成一个层状的塔式结构,取长补短,协调工作

  • CPU 寄存器,是 CPU 内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果以及一些 CPU 运行需要的信息。

  • CPU 高速缓存,也就是CPU Cache,是一种容量小、速度快的高缓冲存储器,由SRAM组成,直接制作在CPU芯片内,速度几乎与CPU一样快。在金字塔式存储体系中它位于自顶向下的第二层,仅次于CPU寄存器。其容量远小于内存,但速度却可以接近处理器的频率。

  • 主存储器(Main memory),简称主存或内存,其作用是存放指令和数据,并能由中央处理器(CPU)直接随机存取。主存储器速度比CPU高速缓存慢,但存储容器却大的多。

    主存储器的速度一般用存取时间衡量,即每次与CPU间数据处理耗费的时间,以纳秒(ns)为单位。大多数SDRAM内存芯片的存取时间为5、6、7、8或10ns。

    主存储器的带宽计算公式:带宽=频率*位宽/8。

    例如:DDR4 内存频率是3600 MHz,在64位系统(双通道位宽为128,以此类推),1B=8bit,

    • 单通道 DDR4-3600:3600MHz * 64bit / 8=28800MB/S

    • 双通道 DDR4-3600:3600MHz * 64bit * 2 / 8=57600MB/S

  • 辅助存储器,速度慢的多,优点是容量大,可持久化存储。

Swap 空间

Swap,意思是“交换”、“实物交易”。Linux Swap(交换)空间是受Linux内核内存子系统控制的磁盘区域。

  • 功能1:当内存使用量超过定义的限制时,内核寻找已分配给进程但空闲的内存页,将该空闲的内存页写入到交换空间,并向其他进程重新分配RAM页面。
  • 功能2:如果某个程序需要访问磁盘上的页面,则内核会找到另一个空闲的内存页, 将其写入到磁盘,然后从交换区重新调用所需的页面。
  • 功能3:如果某个程序需要访问数据,访问的数据存放在交换空间,则该程序直接从交换空间读取数据,而不需要从磁盘原始位置读取,进而提高速度。

**交换空间只是临时的解决办法。**虽然交换空间能够作为"虚拟"内存使用,但由于交换区位于磁盘上,它的速度比物理内存慢的多,因此如果需要更快的速度的话,最好的办法仍然是加大物理内存。

创建交换空间

[root@server ~ 15:27:51]# parted /dev/sdb mklabel gpt
信息: You may need to update /etc/fstab.[root@server ~ 15:41:52]# parted /dev/sdb unit MiB mkpart data01 linux-swap 1 2049
信息: You may need to update /etc/fstab.[root@server ~ 15:42:36]# parted /dev/sdb unit MiB print
Model: ATA VMware Virtual S (scsi)
Disk /dev/sdb: 20480MiB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: Number  Start    End      Size     File system  Name    标志1      1.00MiB  2049MiB  2048MiB               data01[root@server ~ 15:42:54]# mkswap /dev/sdb1
正在设置交换空间版本 1,大小 = 2097148 KiB
无标签,UUID=5edd37c0-d3ca-46d8-98b8-317a3d905119

激活 swap 空间

[root@server ~ 15:43:13]# swapon /dev/sdb1
[root@server ~ 15:43:44]# swapon -s
文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2
/dev/sdb1                              	partition	2097148	0	-3#查看内存
[root@server ~ 15:43:53]# freetotal        used        free      shared  buff/cache   available
Mem:        3060052      185420     2596900        9640      277732     2709000
Swap:       4194296           0     4194296

取消 swap 空间激活

[root@server ~ 15:44:09]# swapoff /dev/sdb1
[root@server ~ 15:44:38]# swapon -s
文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2
[root@server ~ 15:44:42]# freetotal        used        free      shared  buff/cache   available
Mem:        3060052      184084     2598204        9640      277764     2710336
Swap:       2097148           0     2097148

持久化激活swap空间

[root@server ~ 15:45:40]# vim /etc/fstab
#写入最后一行
/dev/sdb1 swap swap defaults 0 0
#激活交换设备
[root@server ~ 15:47:03]# swapon -a
[root@server ~ 15:47:29]# swapon -s
文件名				类型		大小	已用	权限
/dev/dm-1                              	partition	2097148	0	-2
/dev/sdb1                              	partition	2097148	0	-3
#重启
[root@server ~ 15:47:31]# reboot
#验证
[root@server ~ 15:47:52]# swapon -s
文件名				类型		大小	已用	权限
/dev/sdb1                              	partition	2097148	0	-2
/dev/dm-1                              	partition	2097148	0	-3
http://www.dtcms.com/a/314154.html

相关文章:

  • [GESP202306 四级] 2023年6月GESP C++四级上机题超详细题解,附带讲解视频!
  • 事件(二)实战案例
  • Do-Calculus:因果推断的演算基础与跨领域应用
  • 17.6 超拟人大模型CharacterGLM技术解析:92.7%角色一致性+虚拟偶像互动提升300%,如何吊打GPT-4?
  • Maya 2024安装指南及安装包下载
  • UILabel设置字重
  • Coze Loop:开源智能体自动化流程编排平台原理与实践
  • Ethereum: 深度解析Web3世界的合规之门, ERC-1400证券型代币标准
  • Oracle ASH的手册
  • Linux定制篇-Tomcat的安装和配置
  • Druid学习笔记 03、Druid的AstNode类详解与其他产品测试体验
  • 【精品项目】进阶版贪吃蛇:现代Web技术打造的经典游戏重生
  • 从零认识OpenFlow
  • TCP为什么采用三次握手而不是二次握手
  • 使用 Marian 进行机器翻译详解及对应案例
  • 在安卓中使用 FFmpegKit 剪切视频并添加文字水印
  • Android进程基础:Zygote
  • (JAVA)自建应用调用企业微信API接口,设置企业可信IP
  • 开疆智能ModbusTCP转Profient网关连接ER机器人配置案例
  • DPDK中的TCP头部处理
  • 第五篇: 深入解析基于 SQLAlchemy 的聊天记录持久化模块:`message_model` 与数据库操作封装
  • 高速信号设计之 PCIe6.0 篇
  • Windows中Idea或者其他开发工具如何使用Google Sans Code - 码农开源等宽字体
  • 数据结构:如何判断一个链表中是否存在环(Check for LOOP in Linked List)
  • JSqlParser学习笔记 快速使用JSqlParser
  • 从exec到Shell:深度解析Linux进程等待,程序替换与自主Shell实现
  • 电脑一键重装系统win7/win10/win11无需U盘(无任何捆绑软件图文教程)
  • OBS 基础 21 充满某个源的策略
  • Android GPU测试
  • 电子电气架构 ---智能电动汽车嵌入式软件开发过程中的block点