linux中进程的页表如何映射

我一开以为页表就是简单的一一映射的关系

但是想想,算一个内存2^32 * (4(物理内存) + 4(虚拟内存) + 2(权限,凑个整2字节)),相当于40GB,哥们一个进程要开40GB空间,有点开玩笑了!所以肯定不是!

可以算一下占用多少内存:

2^20bit(叶框的起始地址) 约等于3字节,权限就当 1字节,相当于二级页表占4字节 * 1024个,就是4kb,4kb*1024个也目录数量 + 1字节*1024 约等于4MB。其实4MB也不算小了,所以创建一个进程的代价还是能大的,进程不进要创建页表,还有其他东西,占比比较大的还是进程创建时,要在cpu的cache寄存器中缓存该进程的热数据:

相关推荐
倔强的石头10620 小时前
【Linux指南】基础IO系列(八):实战衔接 —— 给微型 Shell 添加完整重定向功能
linux·运维·服务器
try2find20 小时前
打印ascii码报错问题
java·linux·前端
Ujimatsu21 小时前
虚拟机安装Ubuntu 26.04.x及其常用软件(2026.4)
linux·运维·ubuntu
一直会游泳的小猫1 天前
homebrew
linux·mac·工具·包管理
寒秋花开曾相惜1 天前
(学习笔记)4.2 逻辑设计和硬件控制语言HCL(4.2.1 逻辑门&4.2.2 组合电路和HCL布尔表达式)
linux·网络·数据结构·笔记·学习·fpga开发
狂奔的sherry1 天前
一次由 mount 引发的 Linux 文件系统“错觉”
linux·运维·服务器
小黑要努力1 天前
智能音箱遇到的问题(一)
linux·运维·git
ch3nyuyu1 天前
静态库和动态库的制作
linux·运维·开发语言
一口Linux1 天前
Linux C编程 | 从0实现telnet获取程序终端控制权
linux·运维·c语言
willhuo1 天前
Certbot工具在CentOS 7.9上申请和配置SSL证书完整教程
linux·centos·ssl