精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>C/C++>>技术精解:内存、进程、线程等>>关于操作系统的引导

主题:关于操作系统的引导
发信人: colus()
整理人: wenbobo(2002-12-06 22:56:22), 站内信件
大家对OS的Boot有研究吗?
我在课本里只能得到如下的知识:
Bios自测后,寻找磁盘有否Boot区,大概是Bios里有一引导出口,在与Boot区握
手后,将以后的电脑操纵权就交给由此引导的OS。
我想知道这期间和之后OS与Bios是如何通讯?
磁盘是按Bios可取得的格式来Format 引导区的,有没有这个格式的资料?我想S
ystem Commander也是处理这个引导区才可多重引导。
Linux是C写的,哪位高手可就其详细说明一下?其它系统也可已。


--
正如我轻轻的来,我又轻轻的走,
挥一挥手,只带走所有回忆。

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.100.36]
发信人: dunhill (天地一沙鸥), 信区: CLanguage
标  题: Re: 关于操作系统的引导
发信站: 网易虚拟社区 (Mon Oct 25 12:37:31 1999), 站内信件

【 在 colus (风之帝) 的大作中提到: 】
: 大家对OS的Boot有研究吗?
: 我在课本里只能得到如下的知识:
: Bios自测后,寻找磁盘有否Boot区,大概是Bios里有一引导出口,在与Boot区握
: 手后,将以后的电脑操纵权就交给由此引导的OS。
:    .......

先去吃饭,回头答你。

--
人说北方的狼族,会在寒风起,站在城门外
穿着腐锈的铁衣,呼唤城门开,眼中含着泪
                      ---------------------------
                      http://mirageworks.yeah.net

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 210.75.46.66]
发信人: tengel (Dragon), 信区: CLanguage
标  题: Re: 关于操作系统的引导
发信站: 网易虚拟社区 (Mon Oct 25 15:51:09 1999), 站内信件

【 在 colus (风之帝) 的大作中提到: 】
: 大家对OS的Boot有研究吗?
: 我在课本里只能得到如下的知识:
: Bios自测后,寻找磁盘有否Boot区,大概是Bios里有一引导出口,在与Boot区握
: 手后,将以后的电脑操纵权就交给由此引导的OS。
:    .......

对于80x86处理器,系统开机从ffff:0初开始执行,也就是BIOS程序,BIOS调用
13h中断读取硬盘主引导区,执行主引导区程序,找到引导扇区,执行引导扇区
程序,加载操作系统

--
                                           _
   O           @___       G               : \  
  /|__       /|/         /\|\             :  \
 /|/_       / /\         \ X_             :   \
  /  |     __/  \          | \      0     :    \
 /    0        0|          /              :     \

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.104.33.187]
发信人: dunhill (天地一沙鸥), 信区: CLanguage
标  题: Re: 关于操作系统的引导
发信站: 网易虚拟社区 (Mon Oct 25 15:55:01 1999), 站内信件

【 在 colus (风之帝) 的大作中提到: 】
: 大家对OS的Boot有研究吗?
: 我在课本里只能得到如下的知识:
: Bios自测后,寻找磁盘有否Boot区,大概是Bios里有一引导出口,在与Boot区握
: 手后,将以后的电脑操纵权就交给由此引导的OS。
: 我想知道这期间和之后OS与Bios是如何通讯? 
: 磁盘是按Bios可取得的格式来Format 引导区的,有没有这个格式的资料?我想S 
: ystem Commander也是处理这个引导区才可多重引导。 
: Linux是C写的,哪位高手可就其详细说明一下?其它系统也可已。 

如果是硬盘,有个主引导块(MRB),在硬盘的第一个扇区。其中有一小段
引导操作系统的的代码和硬盘分区表。RomBIOS的工作完成后,就会查可
引导的硬盘,把它的MRB读到内存中(用BIOS中断13),我记得是在绝对地
址的0x0700:0段,然后跳转到这里,执行MRB中的引导程序,这段程序再
查硬盘分区表,找到可引导分区,把该分区的OS引导块读入内存,开始了
操作系统的引导。

System Commander就是接管了MRB来实现的。具体的磁盘格式我手头没有,
等我有空的时候找到贴出来。哈哈。

--
人说北方的狼族,会在寒风起,站在城门外
穿着腐锈的铁衣,呼唤城门开,眼中含着泪
                      ---------------------------
                      http://mirageworks.yeah.net

※ 修改:.dunhill 于 Oct 25 15:55:34 修改本文.[FROM: 210.75.46.66]
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 210.75.46.66]
发信人: x11boy (萧十一郎), 信区: CLanguage
标  题: Re: 关于操作系统的引导
发信站: 网易虚拟社区 (Mon Oct 25 21:52:44 1999), 站内信件

【 在 colus (风之帝) 的大作中提到: 】
: 大家对OS的Boot有研究吗?
: 我在课本里只能得到如下的知识:
: Bios自测后,寻找磁盘有否Boot区,大概是Bios里有一引导出口,在与Boot区握
: 手后,将以后的电脑操纵权就交给由此引导的OS。
:    .......

如果你一定想要知道,我告诉你一个迂回的方法。
去买《操作系统:设计与实现》
里面有(是minix的引导过程,原理是类似的)

--
清新,迷人,温柔体贴,善解人意,还要有点甜!
这才是……我喜欢的姑娘
麻烦你回复的时候勾上“将本文章寄一份给原作者”

※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.101.4.214]

[关闭][返回]