IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> 简单说一linux内核的内存模型(平坦,不连续,稀疏等三种内存模型) -> 正文阅读

[系统运维]简单说一linux内核的内存模型(平坦,不连续,稀疏等三种内存模型)

Linux内核支持的三种内存模型

CONFIG_FLATMEM(平坦内存模型)
CONFIG_DISCONTIGMEM(不连续内存模型)
CONFIG_SPARSEMEM_VMEMMAP(稀疏的内存模型)

CONFIG_FLATMEM(平坦内存模型)

在这里插入图片描述

基本概念(以第一个为例,不在复述)

就像管理一个学校,我们一般不以个人为单位,而是选择以班级为单位进行管理。同理,一个4G的内存空间,为了更加有效率的管理,我们按4k的大小来进行划分,4k为一页(当然这个4k不是随便选的,这里不展开说),这就是内存页
一个班级,是不是都有自己的帮号,学生个数之内的信息?内存页,也有很多信息(当然这些信息对内存页本身没用,而且不是内存页自带的,这些是操作系统赋予的,可以简单理解为用来进行标记),这些信息我们通过一个数据结构进行管理,那就是Page frame
同样是,虚拟内存的管理,也是这么逻辑,Struct page就表示一页虚拟内存

所以说什么是平坦模型

如果物理地址空间是一个连续的,没有空洞的地址空间,那么这种计算机系统的内存模型就是Flat memory,如图所示,我们将内存分成一页一页的Page frame,然后通过一个类似数组的数据结构包含起来,通过简单地址偏移,就可以找个任何一页物理内存

所以说什么是不连续模型

顾名思义,物理地址空间,不是一个完完全全连续的地址空间,中间是由断层的(为啥出现断层?整个原始的物理空间是连续的,但一些物理空间是不能用来分配的,如DMA区,又或是存储原始数据的区域),这时候怎么来进行管理呢?我们可以通过一个数据结构node来标记Struct page,只要找到node就可以索引到Struct page,如下图所示
在这里插入图片描述

所以说什么是稀疏模型

简单来说,稀疏模型跟非连续模型一样,都是将一块连续内存当成一个整体,将整个不连续物理内存,分割一块一块的连续内存块。但不同是,非连续模型只是单纯对这块内存进行标记,并不进行维护,当热插拔出现之后,会使得原本连续的内存块变得不连续。而稀疏模型的块管理结构,就是可以对热插拔引起空洞,进行维护。如图下所示:
在这里插入图片描述

总结

本文只对,三种内存模型,根据自己的理解做了大概的区分,其具体的实现,远比我说的复杂…,大家当作参考就好,本文的图片来自参考文献第一篇

鸣谢单位(若有侵权,联系删除)

Linux内存模型 (wowotech.net)

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-04-30 09:04:54  更:2022-04-30 09:05:45 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/15 18:42:24-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码