OSEC

Neohapsis is currently accepting applications for employment. For more information, please visit our website www.neohapsis.com or email hr@neohapsis.com
 
Re: Why *are* the kernels monolithic?

From: Rogelio Serrano (rogeliosmsglobal.net)
Date: Wed Jun 02 2004 - 00:58:15 CDT


On 2004-06-02 13:41:51 +0800 Damien Miller <djmmindrot.org>
wrote:

> Chuck Yerkes wrote:
>
>> The OS is capable of loadable kernel modules. And yet, I'd
>> be
>> pressed to name any.
>>
>> While I understand that many of the substructure devices would
>> want to be in the kernel (mii, etc). But *do* we need live
>> drivers
>> for 15+ scsi controllers in RAM?
>
> Probably not, but the cost is low. Compared to the cost of
> kernel-level
> rootkits or the hassle of implementing and maintaing a module
> system as
> robust as a static kernel, very low.
>
>> While it's almost moot on a box with 4 or 8GB of RAM, BSD
>> finds itself
>> often called on in the embedded market. Fitting a computer
>> into small
>> spaces for low cost (where a second 4MB of RAM *is* a signif
>> cost) is
>> a great place for BSD. Now these folks aren't using GENERIC
>> anyway,
>> but not having to work for it is a plus.
>
> People who are building embedded boxes can modify things to
> suit their
> needs and should be able to fix things when they break.
>
>> The big rack computers don't care. And I've twiddled kernels
>> long
>> enough to debug them myself on the < 4 MB boxes. I just
>> wonder
>> about module phobia or dislike.
>
> Then you also know:
>
> - How to build a custom kernel that suits you; and either:
> - How to debug it; or
> - How to boot with a GENERIC kernel before reporting bugs
>
> So you get to have it both ways anyway.
>
> One of the best things about OpenBSD is that it works out of
> the box. I
> don't have to worry about kernel modules not matching my
> kernel,
> runtime-loaded kernel rootkits or obscure module dependancy
> bugs. I
> can't recall one occasion where I have /wished/ for a
> particular driver
> to be a module.
>
> -d
>
>

OBSD is monolithic because its the most efficient and secure
system possible for a unix kernel. If you want efficient secure
and fast modular kernels you have to go non unix.