From: Gordon Matzigkeit <[EMAIL PROTECTED]>
Subject: Re: the size restrictions for FAT and ext2fs stage1.5
Date: 06 Mar 1999 23:48:18 -0600
> Another idea is blocklist compression techniques, which would allow
> for a larger stage2 (i.e. if we have blocks 1,2,3,4,5,6,7,8 in the
> list, just make a special entry for 1-8).
Doesn't grub already do it? debug_fs_blocklist_func
(shared_src/cmdline.c) seems to gather continuous sectors into one
entry. Otherwise, stage1 can load only 4KB. I think this is the worst
thing in grub because stage1 fails to load stage2 when the sectors of
stage2 is not continuous at all. Of course, such a case rarely
happens, though.
I think of another idea. :-)
My idea is that stage2 itself has the list of its sectors. For
example, if the second sector of stage2 has the list, stage1 has only
the list of the first two sectors of stage2. At first, stage1 loads
the two sectors, and then look up the list stage2 has and loads the
sectors the list records. This algorithm enables to load infinite size
theoretically. Even if only the second sector has the list, the
maximum size of stage2 that stage1 can always load from any kind of
filesystem will be 65KB (1sector / 1 dword * 1 sector + 2
sectors). This size is large enough for grub i18n.
----------------------------------------------------------------------
OKUJI Yoshinori <[EMAIL PROTECTED]> ^o-o^
http://duff.kuicr.kyoto-u.ac.jp/~okuji (in English) m /