摘要:由于中断这块的知识和代码都占较大篇幅,因此分成两章来讲,本章不包含任何中断的代码,只讲理论部分,以及中断的大概流程。jiaoxiong8.com_【官方首页】-焦雄娱乐城代码实现部分由下一章来讲解 "【自制操作系统09】中断的代码实现" 一、到目前为止的程序流程图 为了让大家清楚目前的程序进度,画了到目前为止的程序流程图,如下。 二、什么是中断 这里我 阅读全文
posted @ 2020-02-16 18:03 闪客sun 阅读 (92) 评论 (0) 编辑
摘要:一、到目前为止的程序流程图 本讲我们不继续写任何代码,而是专门拿出一讲来说说特权级的事,为后续的工作做一个知识储备。这段内容太难啃了,也可能我恰好对这块不太感冒,反正我是恶心了好久才啃下来。 为了让大家清楚目前的程序进度,画了到目前为止的程序流程图,如下 二、什么时候处理器会进行特权级检查 为什么要 阅读全文
posted @ 2020-02-14 19:08 闪客sun 阅读 (34) 评论 (0) 编辑
摘要:一、整理下到目前为止的流程图 写到这,终于才把一些苦力活都干完了,也终于到了我们的内核代码部分,也终于开始第一次用 c 语言写代码了!为了这个阶段性的胜利,以及更好地进入内核部分,下图贴一张到目前为止的流程图。(其中黄色部分是今天准备做的事情) 二、先上代码 loader.asm main.c pr 阅读全文
posted @ 2020-02-02 14:30 闪客sun 阅读 (286) 评论 (3) 编辑
摘要:通过前四章的努力,我们成功将控制权转交给了 loader.asm 这个程序,并且从实模式跨越到了保护模式。第四章讲保护模式的时候我说过,这是我们操作系统的第一个精彩之处。jiaoxiong8.com_【官方首页】-焦雄娱乐城但其实这只是针对之前我们进行的只是无意义的输出,以及硬盘的加载等工作。但到了这一章,之前一步步的努力进入到了保护模式,也只能说是做 阅读全文
posted @ 2020-01-26 20:57 闪客sun 阅读 (228) 评论 (1) 编辑
摘要:通过前三章的努力,我们成功将控制权转交给了 loader.asm 这个程序。具体说就是 bios 通过 加载并跳转到 0x7c00 (IMB大叔们定的) 把控制权转交给了我们操作系统的第一个汇编程序 mbr.asm,然后 mbr.asm 里做的事就是通过 加载 loader 程序并跳转到 0x900 阅读全文
posted @ 2020-01-25 21:45 闪客sun 阅读 (259) 评论 (2) 编辑
摘要:通过 "【自制操作系统01】硬核讲解计算机的启动过程" 和 "【自制操作系统02】环境准备与启动区实现" 的讲解,我们已经实现了一个最简单的操作系统(仅仅一条机器指令)。jiaoxiong8.com_【官方首页】-焦雄娱乐城 今天我们要再往前进一步,逐渐将这个最简单的操作系统完善起来。之前最简单的操作系统是写在启动区的 512 字节里,这么小的空间以后 阅读全文
posted @ 2020-01-25 17:38 闪客sun 阅读 (355) 评论 (0) 编辑
摘要:一、计算机启动过程回顾 要想写一个启动区代码,就需要了解开机的启动过程,因为开机过程中一些硬件的规定决定了这段代码应该怎么写,不明白没关系,且听我慢慢道来。 具体过程在我上一篇文章 "【自制操作系统01】硬核讲解计算机的启动过程" 讲述得一清二楚,这里我们简单回顾一下。了解开机过程,并不是一个简单的 阅读全文
posted @ 2020-01-21 11:18 闪客sun 阅读 (237) 评论 (0) 编辑
摘要:本讲只为讲明白下面一个问题: 我们按下开机键后究竟发生了什么? 好的,这似乎是好多人都特别想搞明白的一个问题,有时候非常纳闷,为什么一个看似这么简单的问题,就是搜不到一个直面问题的答案呢? 好问题,我也不知道为什么会这样,但我猜是因为: 其一 ,似懂非懂的人太多,他们其实也不知道究竟发生了什么,所以 阅读全文
posted @ 2020-01-20 17:41 闪客sun 阅读 (455) 评论 (0) 编辑
摘要:内容待续 阅读全文
posted @ 2019-10-11 23:17 闪客sun 阅读 (100) 评论 (0) 编辑
摘要:输出一个 16 行 8 列的点阵字符 GDT 初始化 GDTR寄存器(48位):低16位表示段上限(0xffff - 64KB),高32位表示GDT的开始地址(0x270000) 段信息(64位):20位段大小 + 32位段起始地址 + 12位段属性 段属性(12位):GD000000xxxxxxx 阅读全文
posted @ 2019-10-07 21:47 闪客sun 阅读 (112) 评论 (0) 编辑

页面底部区域 foot.htm