Post details: Two level kernel OS? (a probably stupid idea)

03/01/06

Permalink 02:03:38 pm, Categories: Linux kernel, 292 words   English (US)

Two level kernel OS? (a probably stupid idea)

A minute ago I had this (probabaly stupid) idea: What if to split the kernel of an OS into two parts?

[More:]

Traditional operating systems (such as Linux or FreeBSD) have a big kernel which contains not only strictly kernel specific code but also code which could be alternatively run in user space (e.g. cryptography, TCP/IP networking, etc.)

The reason for this (among of historic reasons) is that running a code inside the kernel allows it to run faster. (It is faster because it is run without protection and so does not need to switch mode to the kernel mode when interoperating with other parts of the kernel; while when user space processes interoperate with the kernel there is needed protected mode switch from the user mode to kernel mode. My explanation is crude but it is essentially so.) The main deficiency of this approach is that kernel becomes big and consequently may become unreliable (buggy). Big kernel is also harder to maintain and control.

The so called microkernel approach for reliability and flexibility denies the above concept and puts in kernel only the most necessary parts (that code which is necessarily needs to be in kernel, not in user space, such as the most low level system device drivers).

Several minutes ago I have thought that there may probably be some intermediary, kernel split into two parts, the core microkernel and some kind of second level kernel which is more protected than user level processer but is less protected than the core kernel.

I suppose that it may probably somehow be almost as reliable as microkernel but almost as fast as a monolitic kernel.

Just an idea, maybe a stupid. I am not (yet) an expert in operating system kernels.

Comments, Trackbacks, Pingbacks:

No Comments/Trackbacks/Pingbacks for this post yet...

Software Blog

See also my free software. This weblog will contain information about:
  • software developed by me;
  • my software patches (for others' software);
  • my software related reviews, comments, suggestions, ideas
and other misc software related things.

Recently ||

Last comments

Search

Syndicate this blog XML

Add to MyYahoo

What is RSS?

powered by
b2evolution