[Subject Prev][Subject Next][Thread Prev][Thread Next][Subject Index][Thread Index]
Re: Defragmenting an ext2 FS, was --> Re: [LI] shoury
On Fri, Nov 26, 1999 at 12:53:59PM +0530, C Hanish Menon wrote:
> The ACTUAL boot loader code as to be very small
Sure, there are size constraints, but it can be overcome using a
multilevel bootloader.
http://www.freebsd.org/cgi/man.cgi?boot
http://www.freebsd.org/cgi/man.cgi?loader
> neutral to filesystems to support loading of Kernel or PreKernel image
> from the different Filesystems used by the different OSes.
I don't see this as a particular advantage. What percentage of
Linux installs boot from a fs other than ext2fs ? In such cases,
there'll always be an alternate route - things like loadlin.
> Also one as to note that when the boot loader is having control of your system
> there is NO KERNEL or FS DRIVERS loaded in the system.
That's the point. The fs driver can be linked into the bootloader.
>
> Because of their neutrality they MAY have ONE constraint that the file or
> kernel image to be loaded is NOT FRAGMENTED, (this can be overcome, without
> much code increase, but I don't know exactly how lilo handles this case).
This is not a constraint. LILO doesn't need /boot/vmlinuz to be unfragmented.
When you run /sbin/lilo, it queries the filesystem for a map of /boot/vmlinuz
and stores the actual fragmented map (list of disk blocks that make up
vmlinuz) of /boot/vmlinuz in /boot/map.
Then at boot time, LILO reads /boot/map (not through a ext2fs driver,
but using an absoulte disk address stored in the MBR) and uses that
to get to /boot/vmlinuz.
This requires that the filesystem should implement an interface, that allows
a user program to query the "map" of a file on the disk. A bloat, I don't
want in memory at run time, because no one else uses it. In other words,
LILO can't boot from a filesystem that doesn't implement the above interface.
-Arun
--------------------------------------------------------------------
The Linux India Mailing List Archives are now available. Please search
the archive at http://lists.linux-india.org/ before posting your question
to avoid repetition and save bandwidth.