羽夏看Win系统内核——保护模式篇

写在前面

  此系列是本人一个字一个字码出来的,包括示例和实验截图。由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我

你如果是从中间插过来看的,请仔细阅读 羽夏看Win系统内核——简述 ,方便学习本教程。

  看此教程之前,问一个问题,你配置好双机调试学习环境了吗? 没有的话不要继续了。如果不会配置请重新学习 羽夏看Win系统内核——环境搭建


华丽的分割线



  为啥要写一个保护模式篇呢?因为保护模式是学习系统内核的基础,不会这个东西,后面的基本一点都看不懂。还有一个原因,保护模式还是挺复杂的,为了降低学习的陡峭程度,故分多个小节进行描述。介绍详情将会在本篇子目录有所介绍。

本篇子目录

  • 保护模式篇——简述(本篇将会介绍)
  • 保护模式篇——段寄存器
  • 保护模式篇——段描述符与段选择子
  • 保护模式篇——段权限检查与代码跨段跳转
  • 保护模式篇——长调用与调用门、中断门、陷阱门
  • 保护模式篇——任务段与任务门
  • 保护模式篇——段和门小结
  • 保护模式篇——分页基础
  • 保护模式篇——PAE分页
  • 保护模式篇——TLB与CPU缓存
  • 保护模式篇——中断与异常和控制寄存器
  • 保护模式篇——总结与提升

简述

  在实模式下,16位的寄存器用段+偏移的方法计算有效地址,接触过CPU的同志都应该有所了解。然而,在实模式下,这个内存我是可以随意访问,随意修改。如果被修改的地方是操作系统关键部分,会导致意想不到的后果。下面通过几个问题简单了解一下保护模式是什么。

什么是保护模式

  x86 CPU的3个模式:实模式、保护模式和虚拟8086模式,它只是CPU的一种模式。

保护模式保护什么

  保护内存非法访问特权指令的使用

保护模式利用什么保护

  段的机制和页的机制。段的机制将会在本篇进行介绍,页在下一篇章节介绍。

本篇说明

  什么是特权指令,什么是段,什么是页,它们的机制是什么,后面都将会接触到。
  这里还没到操作系统层面,不要把任何操作系统的概念拉到保护模式的学习当中,否则越学越糊涂。
  学习本篇之前,请在注意将自己的CPU数目调整至1,如果没有按照该要求,做实验时将会出各种各样的问题,如下图所示。至于为什么之后的教程将会介绍。

羽夏看Win系统内核——保护模式篇_第1张图片

下一篇

  保护模式篇——段寄存器

你可能感兴趣的:(羽夏看Win系统内核——保护模式篇)