Board logo

标题: 学习grub遇到的几个学术问题,希望大虾能解释下。谢谢 [打印本页]

作者: ypy121     时间: 2010-3-18 09:13    标题: 学习grub遇到的几个学术问题,希望大虾能解释下。谢谢

为什么叫 iso连续?(是不是iso只是一个文件)
还有什么叫 iso文件不连续存放?
iso仿真? 是不是说iso仿光盘?
作者: 不点     时间: 2010-4-9 08:20
在 grub4dos 中,一个文件的所谓“连续性”是指这个文件在磁盘上的物理存放位置是一整块连续的扇区序列,中间没有“空洞”。或者用通俗的语言来说,一个“连续”的文件,就是一个“没有碎块”的文件。

操作系统所建立的文件,不一定是连续的。一个文件可能被分为很多个碎块。contig 和 wincontig 命令能够把一个不连续的文件整理成连续的文件。我用过 contig 命令,但是,它可能还不能一下子就整理完毕,可能需要多次整理,才可以最终整理成一个连续的、没有碎块文件。

map 命令能够检测到一个文件是否连续,对于不连续的文件,map 拒绝仿真它。但 map --mem 的情况不需要文件是连续的,因为此时 map 会把不连续的映像文件的各个碎片拷贝到内存,变成(内存中的)一个连续的映像文件。

由于 map 的仿真代码不使用 DOS 而只使用主板的 BIOS,所以,在 DOS 下可以访问的普通不连续的文件,在 map 的仿真代码看来就无法访问。BIOS 只认得“扇区”这个概念,不认得“文件”这个概念。而仿真代码只使用 BIOS,所以,也就不认得 DOS 的文件了。但是,当 DOS 的文件被整理成连续之后,它就变成一整块的“扇区”序列了,于是,仿真代码也就能够方便地访问它了。原则上讲,仿真代码也可设计为支持具有多个碎块的映像文件,但是,这个工作量很大,处理起来比较麻烦,实现起来有一定的困难。

grub4dos 目前已经支持软盘、硬盘以及光盘的仿真。最新的 memdisk 也已经支持这些仿真。ISO 仿真就是指用 ISO 文件来仿真光盘。
作者: wangmeng052     时间: 2010-4-24 21:06
不点大师亲自讲解,难得!我们受教了。