写一个操作系统:第九天

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32862515/article/details/84586112

任务

检测内存容量、分页

笔记

  • 页的尺寸是4KB,故,线性地址的低12位可用于访问页内偏移,高20位可用于指定一个物理页。因此,把线性地址的高20位当成索引,乘以4(因为每个表项是4字节),作为表内偏移量,从表中取出一个双字,那就是该线性地址所对应的页的物理地址。

新增参考

不得不说,《操作系统真象还原》这本书比《Orange S 一个操作系统的实现》要详细很多。

进度

  • 目前实现了分页,检测内存容量没写。
  • 掌握了bochs的调试技巧。bochs运行程序是从bios开始的,在自己写的程序的开始处设置断点(0x7c00),可以跳过bios程序。
    info tab 命令可以查看分页情况
  • 我写的程序不是完全和书上的代码一样,今天出现了一个书上没有答案的问题,自己解决了,很有成就感。

猜你喜欢

转载自blog.csdn.net/qq_32862515/article/details/84586112