引导装载程序做什么

引导装载程序(BOOTLOADER)的作用如下:

把核(和所有的内核需要引导)到内存提供的内核,它需要正确的信息切换到一个环境,内核会喜欢控制传递到内核在x86,引导装载程序运行在实模式。因此,容易进入BIOS资源和功能。因此这是一个执行内存地图检测的好地方,可用的视频模式检测,额外的文件加载,等引导装载程序收集这些信息的方式与内核将能理解它。

加载你的内核。

你的内核的位上一些磁盘的某处(很可能是启动磁盘,但这不是必须的)。问题是:在磁盘上的?这是一个FAT格式的软盘常规文件?这是一个收集的连续的扇区中的“保留地”的FAT12软盘(在这种情况下,你可能需要一个专用工具格式化磁盘上安装内核)?或是干脆离开未格式化软盘和内核直接粘贴一个磁盘镜像工具?

以上所有的选项都是可能的。也许我的选择之一我会保留在FAT12软盘存储由内核文件使用部门的名单上有足够的空间。“优势”是fully-fat12就是你不需要重新写引导扇区每次你重写内核。需要加载主要取决于您的内核是什么。Linux,例如,需要一个附加的initrd文件将包含的初始化过程(如用户级)。如果你的内核是模块化的,如果文件是由一些模块的理解,你需要加载模块与内核。同样,微内核的服务如磁盘/文件/存储服务。

给出了内核的信息

一些内核需要一些额外的信息来运行。例如,你需要告诉Linux开始从根分区。非常有用的信息,已经是一个地图的地址空间映射的物理内存是有效的,它不是。其他流行的查询以视频模式。

一般来说,任何涉及BIOS调用是容易做的实模式,以便更好地做他们在实模式比试图回来一趟,实模式后。

建立一个环境

大多数内核需要保护模式。这些内核,你必须使A20载入GDT进入保护模式给予之前控制的核心

这是常见的装载机保持中断禁止(内核将使他们以后,IDT设置是正确的)。

注:花时间去思考,你是否会使页面在这里。记住,调试页面的初始化代码没有异常处理程序的帮助可能很快变成一场噩梦!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值