linux创建虚拟内存

创建8GB的虚拟内存(swap文件)步骤。

  1. 首先创建一个8GB大小的交换文件(建议放在根目录而非/tmp):
bash 复制代码
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
  1. 设置正确的权限(安全性要求):
bash 复制代码
sudo chmod 600 /swapfile
  1. 将文件格式化为交换空间:
bash 复制代码
sudo mkswap /swapfile
  1. 启用交换文件:
bash 复制代码
sudo swapon /swapfile
  1. 验证是否成功:
bash 复制代码
free -h
  1. 为了让系统重启后自动启用该交换文件,需要添加到/etc/fstab
bash 复制代码
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

这些命令会创建一个8GB的交换文件并配置系统使用它。如果后续需要调整大小,只需删除 /swapfile 后重新执行上述步骤即可。


虚拟内存(Virtual Memory)是操作系统提供的一种内存管理技术,主要作用是解决物理内存(RAM)不足的问题,同时提供更灵活的内存使用方式。具体来说,它的核心功能包括:

  1. 扩展可用内存空间

    当物理内存不足时,系统会将部分暂时不用的数据从物理内存转移到硬盘的交换分区(swap partition)或交换文件(swap file)中,释放物理内存供活跃程序使用。这让系统看起来拥有比实际物理内存更大的"可用内存"。

  2. 隔离进程内存空间

    虚拟内存为每个进程提供独立的内存地址空间,使进程之间无法直接访问对方的内存,提高了系统安全性和稳定性(一个进程崩溃不会影响其他进程)。

  3. 支持大型程序运行

    即使单个程序所需内存超过物理内存总量,虚拟内存也能通过"分段"或"分页"技术,将程序分成小块分批加载到内存中运行,让大型程序得以正常执行。

  4. 提高内存使用效率

    系统会优先将物理内存分配给活跃程序,而不常用的数据存放在硬盘的交换区域,实现内存资源的动态优化分配。

注意:虚拟内存依赖硬盘存储,速度远慢于物理内存(RAM)。如果系统频繁使用虚拟内存(称为"swap颠簸"),会导致程序运行卡顿。因此,虚拟内存更适合作为物理内存的临时补充,而非长期替代方案。

相关推荐
dovens19 小时前
SpringBoot集成MQTT客户端
java·spring boot·后端
❀͜͡傀儡师19 小时前
Spring Boot 集成 RocksDB 实战:打造高性能 KV 存储加速层
java·spring boot·后端·rocksdb
杨云龙UP19 小时前
ODA运维实战:Oracle 19c YJXT PDB表空间在线扩容全过程_20260503
linux·运维·服务器·数据库·oracle
郝学胜-神的一滴19 小时前
跨平台动态库与头文件:从原理到命名的深度解析
linux·c++·程序人生·unix·cmake
BENA ceic19 小时前
Spring 的三种注入方式?
java·数据库·spring
小雅痞19 小时前
[Java][Leetcode middle] 209. 长度最小的子数组
java·算法·leetcode
二哈赛车手19 小时前
新人笔记---项目中简易版的RAG检索后评测指标(@Recall ,Mrr..)实现
java·开发语言·笔记·spring·ai
做时间的朋友。19 小时前
精准核酸检测
java·数据结构·算法
yyuuuzz19 小时前
aws 基础认知与实践注意点
运维·服务器·网络·云计算·github·aws
Rust语言中文社区19 小时前
【Rust日报】2026-05-02 Temper - 用 Rust 编写的 Minecraft 服务器项目发布 0.1.0 版
运维·服务器·开发语言·后端·rust