Re: monoholitic, hybrid or not monoholitic?

From: Tommy Reynolds
Date: Wed Sep 15 2004 - 19:34:04 EST


Uttered Matt Kavanagh <matthew@xxxxxxxxxx>, spake thus:

> > the kernel were mostly descripted as monoholitic. but some sources means
> > that the linux kernel is not really monoholitic because of the feature
> > of loading kernel modules.
> I'd tend towards monolithic because the modules (as mentioned) run in kernel
> space.

These discussions are taking the wrong viewpoint. The difference
between "monolithic" and "modular" kernels refers to their *internal*
organization, not a cosmetic *packaging* decision.

Linux is a monolithic kernel because one kernel routine can call
another directly, without intervention of any message passing
overhead.

Linux modules are simply packaging exercises that allow some code
_not_ originally linked into the kernel image to be grafted into an
executing kernel image. Once installed, kernel modules can reference
other kernel resources with, again, a straight subroutine reference
without any message passing intervention.

All else is quibbling about the color of the ribbon used to wrap up
the module code ;-)

HTH.
--
--
.---------------------------------+----------------------------------------.
| Tommy Reynolds | Email: <Tommy.Reynolds@xxxxxxxxxxxxx> |
| P O Box 62 | Phone: +1.256.227.1839 |
| Danville, AL 35619 USA | Fax: +1.256.350.5099 |
| Sr. Software Devel/RHCE | IM: HisDivShadow |
+---------------------------------+----------------------------------------+
| Ask MegaCoder.com For Answers! |
'--------------------------------------------------------------------------'
--
--
.---------------------------------+----------------------------------------.
| Tommy Reynolds | Email: <Tommy.Reynolds@xxxxxxxxxxxxx> |
| P O Box 62 | Phone: +1.256.227.1839 |
| Danville, AL 35619 USA | Fax: +1.256.350.5099 |
| Sr. Software Devel/RHCE | IM: HisDivShadow |
+---------------------------------+----------------------------------------+
| Ask MegaCoder.com For Answers! |
'--------------------------------------------------------------------------'

Attachment: pgp00000.pgp
Description: PGP signature