免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 15603 | 回复: 79
打印 上一主题 下一主题

關於bootloader的思考和疑問 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-06-16 17:26 |只看该作者 |倒序浏览
接觸unix/unix like的東西已經有一段時間了, 在一台機器上裝多個系統是避免不了的. 有時候經常被bootloader弄得很苦惱. 如果你在安裝系統或者lilo的時候不小心選擇錯了, 系統間的bootloader經常相互覆蓋. 衆所周知, 在unix/unix like世界裏沒有誰能統治誰. 於是我就在想能不能找到一個單獨的, 與系統無關的bootloader, 這個東西的作用只是在mbr中來引導其他系統自己的bootloader些且不需要向grub那樣有很多的功能. 不知道我的想法是不是很愚蠢

论坛徽章:
0
2 [报告]
发表于 2005-06-17 09:30 |只看该作者

關於bootloader的思考和疑問

不太明白,bootloader好像本身就与系统无关吧?我想你的问题主要还是对这些东东了解不够!

论坛徽章:
0
3 [报告]
发表于 2005-06-17 10:03 |只看该作者

關於bootloader的思考和疑問

bootloader 是通过写在 MBR 中的一段代码激发的
系统启动的时候,BIOS 先要检测硬盘,当发现硬盘 0 道 0 面 1 扇区的最后两个字节为 55 AA 的时候,将该扇区数据载入 0x7c00 物理地址,然后开始运行里面的程序
那个扇区里前半部分是引导程序,后面是硬盘的 4 个主分区表,引导程序负责再载入其他引导程序,例如 bootloader 等,然后将其移动到内存高端地址,其后做一个跳转,将控制权向下转交

论坛徽章:
0
4 [报告]
发表于 2005-06-17 10:07 |只看该作者

關於bootloader的思考和疑問

除了第一个系统,其他的系统都可以选择把boot loader装在自己的分区上,而不是mbr上(windows除外)。这样可以每装一个新系统,都去修改一下第一个系统的boot loader 的设置就可以了。

论坛徽章:
0
5 [报告]
发表于 2005-06-17 10:09 |只看该作者

關於bootloader的思考和疑問

[quote]原帖由 "sakulagi"]除了第一个系统,其他的系统都可以选择把boot loader装在自己的分区上,而不是mbr上(windows除外)。这样可以每装一个新系统,都去修改一下第一个系统的boot loader 的设置就可以了。[/quote 发表:

其实 windows 也是将实际的 WIN 引导部分写在自己逻辑分区的 1 扇区上面的,如果用 debug 载入 0 道 0 面 1 扇区后就可以得到证实,MBR 的部分只不过是一个“跳板”

论坛徽章:
0
6 [报告]
发表于 2005-06-17 10:15 |只看该作者

關於bootloader的思考和疑問

原帖由 "platinum" 发表:
bootloader 是通过写在 MBR 中的一段代码激发的
系统启动的时候,BIOS 先要检测硬盘,当发现硬盘 0 道 0 面 1 扇区的最后两个字节为 55 AA 的时候,将该扇区数据载入 0x7c00 物理地址,然后开始运行里面的程序
那?.........


偶像,我刚刚学LINUX时,看到有人曾把版主的这个地址表拿出来讲课,当时我很晕,现在听来,明白了一些

论坛徽章:
0
7 [报告]
发表于 2005-06-17 10:31 |只看该作者

關於bootloader的思考和疑問

原帖由 "platinum" 发表:

其实 windows 也是将实际的 WIN 引导部分写在自己逻辑分区的 1 扇区上面的,如果用 debug 载入 0 道 0 面 1 扇区后就可以得到证实,MBR 的部分只不过是一个“跳板”

主要是windows安装的时候一定要把自己的”跳板“写在MBR里,然后指向自己的分区。这点不是很爽。

论坛徽章:
0
8 [报告]
发表于 2005-06-17 10:58 |只看该作者

關於bootloader的思考和疑問

原帖由 "sakulagi" 发表:

主要是windows安装的时候一定要把自己的”跳板“写在MBR里,然后指向自己的分区。这点不是很爽。

是呀是呀
不过好像所有的 OS 几乎都是用同一个“跳板”,真正自己的引导程序在自己的逻辑分区的第一个扇区上
一些早期的引导型病毒,以及某些 bootloader,还有些硬盘加密卡,他们会修改 MBR,做个“钩子”出来

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
9 [报告]
发表于 2005-06-17 11:00 |只看该作者

關於bootloader的思考和疑問

[quote]原帖由 "sakulagi"]主要是windows安装的时候一定要把自己的”跳板“写在MBR里,然后指向自己的分区。这点不是很爽。[/quote 发表:

9494,这点不爽。
而且还要自动激活 windows 分区。
其实我发现,先装 linux,再装 windows,那么 windows 的 MBR 程序(注意不是 BOOT RECORD)也可以引导 linux。
方法就是在 windows 的磁盘管理器中将 linux 的 grub 所在分区设置成活动分区就可以了。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
10 [报告]
发表于 2005-06-17 11:04 |只看该作者

關於bootloader的思考和疑問

MBR 是哪个操作系统装的并不重要,
因为 MBR 还算是有规范的:最终都会跳到活动分区的 BOOT RECORD 中去,
所以,只需要将 boot loader 写到自己的 BOOT RECORD 中,然后再设置好活动分区,就不怕有多少个操作系统了。
我一般都是 MBR 到 grub,然后用 grub 引导多系统。
我从不把 grub 写到 MBR,就是怕 windows 搞坏它。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP