Skip to main content

Command Palette

Search for a command to run...

Latest articles

  1. [4.2] 操作系统学习 (深入保护模式)

    接下来我们将讲上节没有讲完的内容, GDT 全局描述符表 我们之前说过了在保护模式下为了安全着想, 引入了 GDT, 内存段(如数据段, 代码段等)不再是简单地用段寄存器加载一下段基址就能用啦,段的信息增加了很多, 需要提前把段定义好才能使用 全局描述符表(GDT)就是为此而生, GDT 其实就是一个用于登记内存段信息的东西, GDT 因为要记录很多的东西, 所以寄存器的装不了的, GDT 通常都储存再内存中 GDT 的结构一般都是这样的: 其中 GDT 的位置不是固定的, 要使用某个寄存器指...

    Aug 17, 20215 min read78
  2. [4.1] 操作系统学习 (保护模式)

    本节我们将会学习保护模式 保护模式是怎么来的? 我们都知道实模式下存在很多安全问题, 这主要表现在: 操作系统和用户程序的特权级是一样的 (坏处: 用户程序想干嘛就干嘛, 操作系统根本管不了) 用户程序所使用的地址都是会指向真正的物理地址, 用户程序能读取任意内存 (坏处: 用户程序能随便读取和修改内存, 造成系统不稳定) 一次只能运行一个程序 (坏处: 浪费资源) 只有 20 条地址总线, 寻址范围小 (坏处: 只能范围 1MB 内存) 为了解决这个问题工程师发明了 保护模式 其实在保护模...

    Aug 12, 20212 min read28
  3. [3.2] 操作系统学习 (完善 MBR,进入 loader)

    查看本系列文章目录 下列内容可能有出错的地方, 毕竟只是个人理解, 有问题评论区🥲🥲 本节将会彻底完善 mbr 扇区,进入 loader 硬盘介绍 现在硬盘大多分为 2 类 固态硬盘 机械硬盘 我们主要讲机械硬盘 机械硬盘其实就像唱片机一样, 一个磁头不断的在磁盘上读取数据 一个机械硬盘由许多的磁头和磁盘组成 而每一个磁盘的构造都是一样的 我们的 mbr 扇区就是里面最开始的扇区 这是一个简单的磁盘运行过程图 我们可以用 CHS 和 LBA 的方式来表示每一个扇区 CHS 就是以硬...

    Aug 4, 20214 min read86
  4. [3.1] 操作系统学习 (深入了解并完善 Mbr)

    查看本系列文章目录 下列内容可能有出错的地方, 毕竟只是个人理解, 有问题评论区🥲🥲 本篇文章将会让你了解一点关于汇编的知识, 还会介绍一下 CPU 实模式, 最后我们会完善 MBR 分区 MBR 是怎么输出 HelloWorld 上篇文章我们让 MBR 输出了 HelloWorld, 接下来我们要了解其中的奥秘 我们先看看SECTION MBR vstart=0x7c00, 看一眼代码我们发现了 3 个关键词 SECTION vstart 0x7c00 先说说 SECTION 这个单...

    Jul 31, 20215 min read44
  5. [2] 操作系统学习 (开始动手实践, 编写一个简单的mbr)

    查看本系列文章目录 下列内容可能有出错的地方, 毕竟只是个人理解, 有问题评论区🥲🥲 从 BIOS 进入 MBR 实模式下的 1MB 内存布局 在开始讲之前, 我们要先了解一下 实模式下的 1MB 内存布局 我们可以看到 0x7c00~0x7dff 就是我们的 MBR 要加载的位置 对了再补充一下, 我们现在正常的内存条都有 4GB 了, 但是为什么我们只能使用 3.8GB 呢? 这是因为我们有 0.2GB 被用来作为外设的内存映射了 BIOS -> MBR 开机时 BIOS 先被加载, ...

    Jul 19, 20213 min read48
  6. [1] 操作系统学习 (搭建操作系统开发环境)

    查看本系列文章目录 下列内容可能有出错的地方, 毕竟只是个人理解, 有问题评论区🥲🥲 我们需要什么? C 语言编译器 汇编语言(NASM)编译器 操作系统的调试环境(虚拟机) 开始 好的,我们大部分工作需要在 Linux 下完成, 至于为什么不使用 Windows 或者 macOS 呢? Windows编程起来比较难搞,而 macOS 的资料比较少. 所以我们还是使用Linux 比较好 但是 Linux 的生态却不行, 所以我们要所以 Windows+Linux的方法 我们先在Windo...

    Jul 18, 20211 min read41
  7. [0] 操作系统学习 (一些奇奇怪怪的问题)

    查看本系列文章目录 下列内容可能有出错的地方, 毕竟只是个人理解, 有问题评论区🥲🥲 这篇文章将会讲述一些, 你可能以前听过的但又不了解的问题, 作为开始学习 OS 的铺垫 操作系统是什么? ...在盘古开天之际,除动物以外,世界上只有土地、荒草、树木、石头等资源。人 们为了躲避天灾、野兽攻击等危险,开始住进了山洞,为了获取食物,用石头和树木等材料打造一些武器。 当时所有人都在做这些相同的事 。 这就是没有组织的人类社会,所有人都在重复“造轮子”。 后来各个地区有了自己权威性的部落,部落...

    Jul 18, 20214 min read61
  8. 操作系统学习 Start (操作系统真象还原 笔记)

    前言 这个博客接下来将记录, 我的 OS 学习笔记 下列东西都是<<操作系统真象还原>>学习笔记 学习资料 OS Dev Go (一个什么都有的操作系统百科网站) 免费电子书 Go (免费电子书, 不过解压密码要关注公众号,不过可以使用爆破软件找到密码 [狗头保命] ) Intel IA-32 开发手册(En) Go 目录 一些奇奇怪怪的问题 Go 操作系统开发环境 Go 开始动手实践, 编写一个简单的MBR Go 深入了解并完善 MBR Go [3.1] Go [3.2...

    Jul 18, 20211 min read102
FengZi ‘s Blog