羽夏看Win系统内核——保护模式篇
2021-09-18 14:31
615 查看
写在前面
此系列是本人一个字一个字码出来的,包括示例和实验截图。由于系统内核的复杂性,故可能有错误或者不全面的地方,如有错误,欢迎批评指正,本教程将会长期更新。 如有好的建议,欢迎反馈。码字不易,如果本篇文章有帮助你的,如有闲钱,可以打赏支持我的创作。如想转载,请把我的转载信息附在文章后面,并声明我的个人信息和本人博客地址即可,但必须事先通知我。
你如果是从中间插过来看的,请仔细阅读 羽夏看Win系统内核——简述 ,方便学习本教程。
看此教程之前,问一个问题,你配置好双机调试学习环境了吗? 没有的话不要继续了。如果不会配置请重新学习 羽夏看Win系统内核——环境搭建 。
🔒 华丽的分割线 🔒
为啥要写一个
保护模式篇呢?因为保护模式是学习系统内核的基础,不会这个东西,后面的基本一点都看不懂。还有一个原因,保护模式还是挺复杂的,为了降低学习的陡峭程度,故分多个小节进行描述。介绍详情将会在本篇子目录有所介绍。
本篇子目录
- 保护模式篇——简述(本篇将会介绍)
- 保护模式篇——段寄存器
- 保护模式篇——段描述符与段选择子
- 保护模式篇——段权限检查
- 保护模式篇——代码的跨段跳转
- 保护模式篇——门
- 保护模式篇——长调用与短调用
- 保护模式篇——任务门
- 保护模式篇——页
- (持续更新中……)
简述
在实模式下,16位的寄存器用
段+偏移的方法计算有效地址,接触过
CPU的同志都应该有所了解。然而,在实模式下,这个内存我是可以随意访问,随意修改。如果被修改的地方是操作系统关键部分,会导致意想不到的后果。下面通过几个问题简单了解一下保护模式是什么。
什么是保护模式
x86 CPU的3个模式:实模式、保护模式和虚拟8086模式,它只是CPU的一种模式。
保护模式保护什么
保护
内存非法访问和
特权指令的使用。
保护模式利用什么保护
段的机制和页的机制。段的机制将会在本篇进行介绍,页在下一篇章节介绍。
本篇说明
什么是特权指令,什么是段,什么是页,它们的机制是什么,后面都将会接触到。 这里还没到操作系统层面,不要把任何操作系统的概念拉到保护模式的学习当中,否则越学越糊涂。
下一篇
相关文章推荐
- <<Linux内核完全剖析 --基于0.12内核>> 学习笔记 第4章 80x86保护模式及其编程 4.1 80x86系统寄存器和系统指令
- 羽夏看Win系统内核——简述
- linux 系统调用如何进入内核模式
- linux0.00内核剖析之2.保护模式内存管理
- 虚拟实现汉字系统----VVDOS -- 源码 -- 保护模式程序 - 3
- 保护模式下三个重要的系统表——GDT、LDT和IDT
- 查看及启动系统的32位或64位内核模式
- 关于linux内核中大内核的向保护模式切换的一个细节
- linux内核完全剖析之(1)——80x86保护模式
- UEFI+GPT模式下安装win 10系统——生命不止,折腾不息
- Linux0.11内核--32位保护模式GDT(全局描述符表)
- 查看linux系统版本、内核、cpu、cpu运行模式
- 理解0.11内核setup.s中实模式与保护模式的切换
- 内核雏形——跳入保护模式
- <<Linux内核完全剖析 --基于0.12内核>>学习笔记 第4章 80x86保护模式及其编程 4.5 保护
- 实模式切换到保护模式,为什么要开启A20地址线(系统升级产生的兼容性问题)
- Linux0.11内核--32位保护模式GDT(全局描述符表)
- IA32系统级架构总览(一) 实模式和保护模式
- 自己动手写内核(第2课:保护模式)(原创)
- 《linux 内核完全剖析》 chapter 4 80x86 保护模式极其编程