免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: betatoy
打印 上一主题 下一主题

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

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

關於bootloader的思考和疑問

原帖由 "flw" 发表:
MBR 是哪个操作系统装的并不重要,
因为 MBR 还算是有规范的:最终都会跳到活动分区的 BOOT RECORD 中去,
所以,只需要将 boot loader 写到自己的 BOOT RECORD 中,然后再设置好活动分区,就不怕有多少个操作系统..........


我一般都是 MBR 到 grub,然后用 grub 引导多系统。
我从不把 grub 写到 MBR,就是怕 windows 搞坏它。

这两句不懂

mbr到grub和grub到mbr有什么区别??? 偶像

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

關於bootloader的思考和疑問

我一般都是 MBR 到 grub,然后用 grub 引导多系统。
我从不把 grub 写到 MBR,就是怕 windows 搞坏它。

我也看不懂~
~~~~~~~~~~~
我的个人理解(有疑问大家可以一起讨论):
呵呵~~~ mbr只是一个指针,mbr说跳到哪里执行就从哪里执行.
这个哪里执行,其实就是一个os loader (也是一个程序)的位置,或者就是直接的os的启动代码位置,负责把os引导起来.
grub是一个os loader,lilo也是一个os loader,nt也有一个load,好像叫什么 xxx load,忘记了~~
os loader和操作系统无关~~~~
不过os loader的位置和是否可以启动os有关,因为bios只能读到8g硬盘前的数据(os loader没有载入之前,硬件是bios控制的),os loader别装太后面(8g后面),至于os的启动文件在哪里就没有8g的限制,因为grub载入后可以读到整个硬盘的数据了~~~

论坛徽章:
0
13 [报告]
发表于 2005-06-17 12:46 |只看该作者

關於bootloader的思考和疑問

原帖由 "glider126" 发表:

因为bios只能读到8g硬盘前的数据(os loader没有载入之前,硬件是bios控制的)

BIOS 用中断 0x13
MBR 里面也调用中断 0x13
MBR 是一个标准,几乎所有硬盘里面的 MBR(除了分区表)都是一样的,BIOS 都是把把硬盘的物理第 1  扇区载入内存,然后 MBR 跳转到到某个逻辑分区的引导程序上来完成引导的

好了,问题出来了,BIOS 是用 0x13,而且调用的就是 BIOS 的 0x13,因此恐怕说“因为bios只能读到8g硬盘前的数据”是错误的 :em11:

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

關於bootloader的思考和疑問

>;>;>;mbr只是一个指针
================
MBR 是 Master Boot Record 的简称。
主引导记录,也是机器控制权交给用户程序的唯一入口。

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

關於bootloader的思考和疑問

The Interrupt 13h interface
When IBM engineered the AT they put the interface for the harddisk (Int 13h) in the system BIOS.
Whenever an application wants to read from/write to a drive, it calls DOS.
DOS knows the structure of the disk and where the target file is located. It then calculates a CHS (Cylinder, Head, Sector) address and calls the BIOS via Int 13h.
The BIOS then executes the read or write command at this CHS address by accessing the HD controller directly via its I/O-port addresses.
The result is passed back to DOS who passes it back to the application.
This scheme makes DOS (drive) hardware independent and leaves the hardware specifics to the BIOS.
The traditional BIOS Int 13h interface has the following limitations (when called from DOS):
1024 Cylinders, 256 Heads and 63 Sectors/track.
With 512 bytes/sector this counts up to 8 GB (8064 MB)!

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

關於bootloader的思考和疑問

int 13h 有扩展入口,可以读写 8G 以上的空间

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

關於bootloader的思考和疑問

platinum :
/dev/hda1            /         20g
/dev/hda2            /boot     100m
/dev/hda3            swap      256m

grub装在/boot里

请问,这个系统可以使用grub引导启动linux吗?

论坛徽章:
0
18 [报告]
发表于 2005-06-17 16:24 |只看该作者

關於bootloader的思考和疑問

MBR ->; 某个逻辑区的引导信息(一般是第一个)
在你这里,就是指的 / ,如果你的 MBR 指向的是 /boot,那么你就能引导,否则会用 / 的引导信息引导,就会报错
换句话说,即使是普通的 MBR(未经特殊修改), /boot 是 hda1,而 / 是 /hda2,那么也能引导

以上仅是理论分析,曾经看过 MBR 的一些资料,对里面的数据结构有所了解,但不知用来解释这个是否正确,还请指正

论坛徽章:
0
19 [报告]
发表于 2005-06-17 16:33 |只看该作者

關於bootloader的思考和疑問

原帖由 "flw" 发表:
>;>;>;mbr只是一个指针
================
MBR 是 Master Boot Record 的简称。
主引导记录,也是机器控制权交给用户程序的唯一入口。


有一点了解,不知我理解的对不对

正常应是mbr交给kernel
而现在是mbr交给grub
再由grub交给kernel
可以这样理解吗

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

關於bootloader的思考和疑問

到底谁能权威的、通俗的把boot loader的过程解释一下啊?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP