linux系统的初始化.pdf

  1. 1、本文档共50页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux系统的初始化

Linux 系统的初始化 Jinsheng shi goldcattle@ Linux 系统的初始化 本文的内容是讲述从 Linux 系统启动部分。即当你按下 power 键到你看到 login :的整个过 程牵扯的东西很多很多。所以专门写一个专题来将将这个东西。 本文不局限于 Linux 的启动过程的分析,同时兼顾对系统结构方面的介绍。本文的另外一个 目的是为了自己找工作,复习一下相关的知识。 与这个部分相关的代码主要是: 1、Bootsect.s ,setup.S 和 head.S 2 、Init 目录下面的main.c /arch/i386 下面的其他代码也是很重要的。 1、基础知识 1.1 386 的体系结构 80386 的芯片内部被分为独立的六个处理部件:总线接口部件,执行部件和分段部件, 分页部件,指令预取和指令译码部件。其中分段部件和分页部件统称为 MMU 内存管理部件。 这六个部件是并行工作的,构成了一个 6 级流水体系结构,从而大大提高了处理效率。对于 程序设计人员来讲要了解 386 的寄存器结构要比知道物理上的实现更加重要。80386 的内部 有 30 多个寄存器。其中可以分为如下五类:通用寄存器,段寄存器,系统地址寄存器,控 制寄存器,以及调试和测试寄存器。 1.1.1 通用寄存器: 在应用程序用来对程序的数据进行存取和计算。80386 有 8 个 32 位的通用寄存器,如 下图 1.2 所示。他们是在 16 位寄存器的扩展。故命名为 EAX,EBX,ECX,EDX,EBP,ESI,EDI 和 ESP 。数据可以是 1 位,8 位,16 位,32 位和 64 位(MMX) 。访问寄存器的尺寸可以为 8 位,16 位,和 32 位,并给不同的尺寸赋予不同的名字。比如 EAX 是 32 位,AX 是 16 位, AL 和 AH 是 8 位。 两个附加寄存器保留了当前指令流的状态信息。EIP 寄存器包含的是当前指令的下一条 指令的偏移地址。EFLAGS 中包含了与各个指令相关的信息位。EIP 或 IP 与 CS 段寄存器共 同指出了下一条被执行指令的存储器地址。 EFLAGS 的寄存器包含如下字段: 图 1.1 EFLAGS 寄存器( 图来源于IA32 手册) CF 进位标志 PF 奇偶标志 当某个算术运算操作生成有偶数个 1 时,该位被置位 AF 辅助进位标志 当AL 的寄存器低半个字节发生进位时被置位。由BCD 码控制。 第 1 页(共 50 页) Linux 系统的初始化 Jinsheng shi goldcattle@ ZF 0 标志,如果运算结果为 0,该为被置 1 SF 符号标志 当 SF=1 时,表明结果是负数。 TF trace 标志。如果 TF =1,那么下一条指令执行完后立即触发 INT 1 IF 中断允许标注 如果 IF =1 是响应中断的。 DF 是方向标志当 DF=1 时字符串操作从高地址向地址操作。 STD ,CLD OF 指令是溢出标志 IOPL 是个双位字段 可以取 0~3 IOPL 是限定了 CPU 的安全级别。 NT 任务嵌套标志当调用、中断、trace 或者异常引起任务切换时,设置该位为 1 RF 是重新启动的标志 VM 是虚拟 86 模式的标注 AC 此位仅用于 80486 中 图 1.2 通用寄存器 1.1.2 段寄存器 段寄存器中比较重要的是 CS 寄存器,CS 寄存器只能通过 CALL, RET 和 JMP 指令进 行修改。别的指令修改都是违规的。另外段寄存器都配置了一个描述符高速缓存,它保存了 段寄存器的起始地址和段界限和访问权限。这个高速缓存是不能访问的,又称为影子寄存器。 堆栈的实现是通过段寄存器的 SS 和通用寄存器 ESP, EBP 组成的。栈是倒挂的栈,在 调用一个子程序段的时候一般先要开辟一段空间作为栈空间

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档