首页 > 其他分享 >Ucore_lab2相关

Ucore_lab2相关

时间:2023-01-22 20:33:07浏览次数:59  
标签:分页 -- Ucore 内存 lab2 地址 页表 相关 物理

 

物理内存管理

启动分页

lab2做的就是物理内存管理:为了完成物理内存管理,首先需要探测可用的物理内存资源;了解到物理内存位于什么地方,有多大之后,就以固定页面大小来划分整个物理内存空间,并准备以此为最小内存分配单位来管理整个物理内存,接着 ucore kernel 就要建立页表, 启动分页机制,让 CPU 的 MMU 把预先建立好的页表中的页表项读入到 TLB 中,根据页表项描述的虚拟页(Page)与物理页帧(Page Frame)的对应关系完成 CPU 对内存的读、写和执行操作。

 

物理内存探测:

  操作系统需要知道了解整个计算机系统中的物理内存如何分布的,哪些可用,哪些不可用。其基本方法是通过BIOS 中断调用来帮助完成的。其中 BIOS 中断调用必须在实模式下进行,所以在 bootloader 进入保护模式前完成这部分工作。总体来讲物理内存探测就是利用int0x15中断提供的服务,将其返回的内存信息保存在某一块缓存中。

 

页表自映射:https://zhuanlan.zhihu.com/p/452598045

 

建立段页式管理中需要考虑的关键问题:

为了实现分页机制,需要建立好虚拟内存和物理内存的页映射关系,即正确建立二级页表。此过程涉及硬件细节,不同的地址映射关系组合,相对比较复杂。总体而言,我们需要思考如下问题:

  • 如何在建立页表的过程中维护全局段描述符表(GDT)和页表的关系,确保 ucore 能够在各个时间段上都能正常寻址?
  • 对于哪些物理内存空间需要建立页映射关系?
  • 具体的页映射关系是什么?
  • 页目录表的起始地址设置在哪里?
  • 页表的起始地址设置在哪里,需要多大空间?
  • 如何设置页目录表项的内容?
  • 如何设置页表项的内容?

 

分页:

在 ucore 建立内核页表时,设定了物理地址和虚地址的虚实映射关系是:phy addr + 0xC0000000 = virtual addr

开启分页的步骤比较容易,需要琢磨的细节见博客。 

  • 启动分段机制,未启动分页机制:逻辑地址--> (分段地址转换) -->线性地址==物理地址
  • 启动分段和分页机制:逻辑地址--> (分段地址转换) -->线性地址-->分页地址转换) -->物理地址

 

当完成物理内存页管理初始化工作后,计算机系统的内存布局如下图所示:

 

 

标签:分页,--,Ucore,内存,lab2,地址,页表,相关,物理
From: https://www.cnblogs.com/wuyun--wy/p/17019465.html

相关文章

  • Cert Manager 申请SSL证书流程及相关概念-三
    中英文对照表英文英文-K8SCRD中文备注certificatesCertificate证书certificates.cert-manager.io/v1certificateissuersIssuer证书颁发者issuers......
  • 进程相关概念、虚拟内存和物理内存映射关系
    学习地址进程和程序并发分时复用cpu单道程序设计多道程序设计cpu和mmu学习地址mmu在cpu内部虚拟内存和物理内存映射......
  • 指向类的相关指针
    指向类数据成员的指针定义<数据类型><类名>::*<指针名>赋值&初始化<数据类型><类名>::*<指针名>[=&<类名>::<非静态数据成员>]指向非静态数据成员的指针在定义时必须和类相......
  • Cert Manager 申请SSL证书流程及相关概念-二
    中英文对照表英文英文-K8SCRD中文备注certificatesCertificate证书certificates.cert-manager.io/v1certificateissuersIssuer证书颁发者issuers.......
  • Cert Manager 申请SSL证书流程及相关概念-二
    中英文对照表英文英文-K8SCRD中文备注certificatesCertificate证书certificates.cert-manager.io/v1certificateissuersIssuer证书颁发者issuers......
  • 卷积相关知识
    1.卷积后尺寸计算卷积核大小\(F\timesF\)输入图片大小\(W\timesW\)步长Spadding大小P输出特征图大小为\(N\timesN\)\(N=(W-F+2\timesP)/S+1\)2.......
  • 怎样借助WWW理解并较好地实现编程中的相关功能点
    首先分享一个课程https://www.icourse163.org/learn/SICNU-1002031014借助WWW来学习编程知识是必须的路径,那么怎样才能够如标题那样更好地实现呢?首先我们分析一下如果......
  • Cert Manager 申请 SSL 证书流程及相关概念 - 一
    2022.3.9用cert-manager申请成功通配符证书(*.ewhisper.cn),2022.4.30该证书距离过期还有30天,cert-manager进行自动续期,但是却失败了。......
  • macOS 相关操作小技巧合集
    macOS相关操作小技巧合集2019-09-1717:57:59 本文来源:高老四博客 分类:macOSTell 阅读(451) 评论(0)作为MBP(MacBookPro)的新用户,最近老四也更新到了最新系统「Cata......
  • git相关
    从git仓库拉代码到本地安装gitbash cd要保存项目的目录  gitclone远程仓库地址  ......