摘要: 操作系统——内存管理(十七) 2020-10-02 16:06:04 hawk 概述 这篇文章,我们将会接着前面的步骤,实现简单的内存管理。 字符串操作 实际上这里和内存管理关系并不是很大,但是这些字符串操作函数又确实是后面操作系统的基石,因此这里我们单独插入这一章,用来实现一下和字符串相关的操作函 阅读全文
posted @ 2020-10-05 13:27 hawkJW 阅读(378) 评论(0) 推荐(0) 编辑
摘要: 操作系统——ASSERT(十六) 2020-10-01 20:49:38 hawk 概述 这篇我们,我们接着前面实现的中断处理的基础上,增加assert机制,并且加深对于中断的理解 断言 assert,断言,是程序员断定程序运行在此处时,某数据的值一定为多少多少。 在这个系统中,实际上会实现两种断言 阅读全文
posted @ 2020-10-01 23:51 hawkJW 阅读(517) 评论(0) 推荐(0) 编辑
摘要: 操作系统——中断实现(十五) 2020-09-28 18:33:33 hawk 概述 前面讲了许多关于中断的基础知识,这里我们将在前面的基础上,给操作系统添加上中断处理,并不断进行优化。 这次仓库链接点此进入。这里面有几个版本,根据log可以回滚到。 简易中断处理程序 前面一直写理论,把我自己都看吐 阅读全文
posted @ 2020-10-01 19:40 hawkJW 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 操作系统——中断(十四) 2020-09-27 10:29:23 hawk 概述 这篇博客主要介绍一下中断相关的基础知识,如果有基础的话或者不敢兴趣的可以跳过,在实现的时候需要的时候再回过头查看。 中断知识 中断概念 首先我们给出宏观的中断的概念——由于CPU获知了计算机中发生的某些事,CPU暂停正 阅读全文
posted @ 2020-09-28 18:33 hawkJW 阅读(1000) 评论(0) 推荐(0) 编辑
摘要: 操作系统——内联汇编(十三) 2020-09-26 17:33:27 hawk 概述 这里我们简单介绍一下内联汇编这项技术,方便我们后面再内核的c代码中直接添加汇编部分指令。这部分还是比较枯燥,对于有基础的或不感兴趣的,可以先行跳过,等到需要的时候在重新进行查阅即可。 定义 内联汇编称为inline 阅读全文
posted @ 2020-09-26 21:14 hawkJW 阅读(782) 评论(0) 推荐(0) 编辑
摘要: 操作系统——打印函数(十二) 2020-09-25 20:32:00 hawk 概述 这章主要完善一下内核的相关功能,实现一个简单的打印功能 函数调用 实际上,函数调用约定,即调用函数时的一套约定,是被调用函数的接口,体现在 1. 参数的传递方式 2. 参数的传递顺序 3. 保存寄存器环境的方式 为 阅读全文
posted @ 2020-09-26 14:43 hawkJW 阅读(658) 评论(0) 推荐(0) 编辑
摘要: 操作系统——特权级(十一) 2020-09-24 19:46:18 hawk 概述 这篇博客主要讲述一下特权级相关的知识,为后边内核的实现奠定基础。这里也主要是相关的基础知识,如果已经有相关知识或者不太感兴趣的可以跳过,等需要的时候再回头看也可以。 特权级概述 特权级简介 实际上,整个计算机可以大体 阅读全文
posted @ 2020-09-25 20:29 hawkJW 阅读(1154) 评论(0) 推荐(0) 编辑
摘要: 操作系统——加载内核(十) 2020-09-23 18:16:58 hawk 概述 这一篇博客就是简单的介绍一下将要实现的内核在内存中的布局,然后写一个简单的内核(没有实现任何功能,仅仅悬挂程序表示成功加载),并将其完成加载。需要注意的是,之后我们的实验,也就是内核功能的编写,基本就是用c语言进行编 阅读全文
posted @ 2020-09-24 18:40 hawkJW 阅读(1049) 评论(0) 推荐(0) 编辑
摘要: 操作系统——ELF文件格式(九) 2020-09-21 18:02:00 hawk 概述 因为后面我们实现的内核主要通过c语言进行编写,其通过gcc编编译器产生的文件格式就是elf文件格式。因此这里我们将会简单介绍一下elf文件格式。这一节也是比较枯燥的知识点。如果不感兴趣或者已经有基础的可以直接跳 阅读全文
posted @ 2020-09-22 18:59 hawkJW 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 操作系统——内存分页(八) 2020-09-19 23:48:03 hawk 概述 这一篇博客和后面的几篇博客,将会在保护模式的基础上,接触到更多的硬件,并对其进行相关的操作。这一篇博客主要完成对于虚拟内存的相关介绍和实验。 虚拟地址 实际上,虽然通过loader程序,我们已经从实模式成功进入了保护 阅读全文
posted @ 2020-09-21 13:56 hawkJW 阅读(878) 评论(0) 推荐(1) 编辑