Source-Changes-D archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: CVS commit: src/sys/arch/amd64/conf



On 20.02.2011 15:45, matthew green wrote:
>> Have you measured how much modules supposedly increase the size compared to
>> compiling things directly to the kernel? This seems like a rather silly point
>> to me (without numbers, at least).
> 
> well, i dunno about others but i've found that the old modules
> lying around tends to fill up space pretty quickly, but ignoring
> that problem and looking at recent i386 builds, i see that the
> MONOLITHIC kernel set is only 440kb larger than GENERIC, yet the
> modules set is 3500kb.
> 
> i didn't look into why, but there's some numbers to go from.

(for i386)

When I tried to use GENERIC as a replacement for MONOLITHIC for install
floppies, I took a look at some of the duplication that happens between
"filesys" and "builtin" modules.

All in all, there are approx. ~700kiB of modules in /stand that are also
accountable (e.g. "builtin") inside GENERIC.

Taking the options(4) embedded inside MONOLITHIC and comparing them to
their modules counterpart:

- COMPAT_* => 400kiB as standalone modules
- various fs => 720kiB
- other options (PPP, accf_*, pseudo-devices): 200kiB

=> 1.3MiB. So, a total of 1.3M + 700k = 2MiB. Still missing 1.5MiB.
MODULAR options seems to consume ~70kiB , so I would assume that the
rest is due to PIC mode and ELF headers... ?

That's still 1.5MiB bigger (a complete monolithic kernel vs a full-blown
modular kernel). Needs to be xchecked though.

Note that /stand also includes modules that cannot be included inside a
monolithic kernel, like zfs and solaris compat layer. And these makes up
for ~ half the size of /stand (5MiB).

-- 
Jean-Yves Migeon
jeanyves.migeon%free.fr@localhost


Home | Main Index | Thread Index | Old Index