Minix3是怎样引导的

本文介绍了Minix3操作系统引导的详细步骤,包括硬件读取引导磁盘第一个扇区、主引导记录、分区表、活动分区的加载以及引导扇区的安装。重点解析了installboot.c如何制作引导扇区,并探讨了引导程序加载镜像时的属性检查、a.out头文件的作用,以及在Minix3启动前后如何保存和恢复监控程序的栈指针。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在系统启动时,先是由硬件读取引导磁盘的第一个扇区,并执行从那得到的代码。

在已分区的硬盘中,其第一个扇区上包含了主引导记录和分区表,还有一个程序称为Minix系统主引导程序,

这个程序将自身定位到一个内存区域,然后装入并执行活动分区(在分区表中记录)的第一个扇区(注意与前面的第一个扇区是不同的),

这样控制权就传递到这个引导扇区了。

但Minix3引导扇区是怎样写入硬盘的呢?这个工作由installboot.c来完成。可以看看它的代码:

//位于installboot.c中的main函数入口

int main(int argc, char **argv)
{
    if (argc < 2) usage();

    if (argc >= 4 && isoption(argv[1], "-image")) {
        make_image(argv[2], argv + 3);
    } else
    if (argc == 3 && isoption(argv[1], "-extract")) {
        extract_image(argv[2]);
    } else
    if (argc >= 5 && isoption(argv[1], "-device")) {
        make_bootable(FS, argv[2], ar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值