Linux内核
玉涵
这个作者很懒,什么都没留下…
展开
-
Linux内核学习笔记之系统启动(二)
上节跳转到内存地址0x0处开始执行内核代码前,已经开启了保护模式,所以在讲解Linux代码前,不得不先给小伙伴们介绍下保护模式下的基础知识(可以先粗略看下,如果初试神功的内容理解有点困难,再回头来看会有更好效果)。 1.初练神功 九阴真经残卷(一)------段描述符 为什么要搞出个段描述符呢?这个就要将下CPU的历史了,很早的实地址模式的时候CPU的更新速度并没有内存块转载 2014-02-24 21:24:37 · 674 阅读 · 0 评论 -
Linux内核学习笔记之系统启动(一)
我们要运行程序,必须先启动操作系统,但是刚开机的时候又是谁运行了操作系统呢?开机的那刻究竟发生了什么?接下来让我们一起来揭开操作系统启动过程的神秘面纱~ 我先引用《Linux内核注释》的一段原话来让大家对开机后发生的情况有段简要的认识,然后结合代码来详细描述这个过程: Linux 的最最前面部分是用 8086 汇编语言编写的(boot/bootsect.s),它将由 BIOS转载 2014-02-24 21:23:36 · 711 阅读 · 0 评论 -
Linux内核学习笔记之系统启动(三)
分段机制和分页机制,共同构成了保护模式下的地址映射机制,也为多任务操作系统以及程序部分加载的实现提供了支持。本节我们将探究分页机制的原理,并结合源码来研究在启动CPU分页机制前,操作系统都做哪些设置。 1.再练神功 九阴真经残卷(四)----分页机制 首先在开始讲解分页机制前,我们要明白三个地址的含义:逻辑地址、线性地址和物理地址。程序运行的时候,所有的地址都是逻转载 2014-02-24 21:25:30 · 866 阅读 · 0 评论 -
Linux内核学习笔记之main函数(四)
终于见到操作系统的main函数了,在被保护模式下的汇编蹂躏那么久,终于见到我们“可爱”的C语言了,鸡冻不已啊~让我们先一睹操作系统真容 [cpp] view plaincopy void main(void) { time_init(); tty_init(); trap_init();转载 2014-02-27 11:19:34 · 965 阅读 · 0 评论