Jain,

--- On Thu, 6/5/08, Jain Johny <jainmjo at gmail.com> wrote:

> I have read that wiki page. There is nothing in it. It says
> *"Many operating
> systems and kernel experts (incl. Torvalds and Rao) have
> dismissed the label
> as meaningless, and just marketing"*. Does it mean
> that hybrid kernels are
> bad? I don't think so.

They call it bad, because from the point of view of a comp. scientist, it's 
hard to maintain, difficult to debug and maintain, and the design is flawed.  
Microkernel advocates support because "design"-wise it's superior, very secure, 
and fuctionally surpassing the monolithic ones.

Hybrid -- yeah, seems like a Marketing term -- like cars. Both petrol AND CNG.  
But UNIX philosophy says (40yrs old OS design) simple things work most.  That's 
why microkernels are hard to write.

Besides, having the "servers" in kernel space makes them very easy to exploit 
-- you can't do that in micro-kernel ones.  Servers are in userspace and memory 
protection is very strict.  Think modern Linux systems here: kernel rootkits!

Hybrid (if you dare use the term) technically one of the either (monolithic or 
micro) kernels with features of the other added. linux 2.6 and above are 
essentially hybrid, if you look at it -- technically.  But since IPC, GUI 
handling, process handling (init) etc are handled in user-space, I don't think 
anyone calls it hybrid.

If you look at it from "good and bad" side -- there's bad to everything.  but 
if it solves the problem, that you're wanting it to solve.  It's good.

> 
> Doesn't NT kernel serves the purpose for Windows?
Yeah, it's purpose is to proliferate viruii.

> Doesn't XNU kernel serves the purpose for Mac OS X?

Darwin? yes.  But Apple is a niche OS.  Think of Apple being deployed as a 
server?  Can it scale?  Can it handle load?  Can it multi-task? threads?  
clustering?

Inferno is a distributed OS -- it scales.

> 
> The "loadable kernel modules" and
> "fuse" in Linux are actually Micro kernel
> features. Right? The monolithic Linux kernel also has now a
> kind of hybrid
> design.
It's hybrid -- technically.  But is there a "standard" to compare against, and 
to label it as "OK, it satisfies the said features -- let's call it hybrid".

We need someone with both OS research and OS writing background to decide 
authoritatively about the "goodness" and "badness" of kernel design. I am 
neither.

But as I said.  Designs are built to satisfy, and rectify one problem.  That 
doesn't make it the be-all and end-all of "Good, clean, ideal" kernel design.

See this link: 
http://www.realworldtech.com/forums/index.cfm?action=detail&id=66595&threadid=66595&roomid=2

click on "Next post >>>" to read through various mails in the thread. That's 
experts discussing the issue.  Might throw some light.

In the mean time, search "Is hybrid kernels good?" in scholar.google.com -- it 
does bring out something.

No worries,

Mahesh Aravind.
-----
PS: I see that you've taken out your "license".  Good!


      

Reply via email to