flat assembler
Message board for the users of flat assembler.

Index > OS Construction > Microkernel vs Hybrid Kernel vs Modular Monolithic


Out of the following types of kernel, which one offers the highest level of security?
Modular Monolithic
38%
 38%  [ 7 ]
Hybrid
27%
 27%  [ 5 ]
Microkernel
33%
 33%  [ 6 ]
Total Votes : 18

Author
Thread Post new topic Reply to topic
Adam Kachwalla



Joined: 01 Apr 2006
Posts: 150
Adam Kachwalla 13 Jul 2007, 01:34
I'm writing a kernel (only 5-10% complete a.t.m), and I have been writing some modules for it as well (for filesystem, window management, network I/O, etc) and have been working on system calls and callable functions. I am now wondering which is the most secure design to go for. The three designs I am considering are (in preferrential order):

1. Modular Monolithic
2. Hybrid
3. Microkernel

I did not choose solid monolithic becaise changing one module means changing the entire kernel and recompiling the whole kernel image. The exokernel is also phased out for me as I cannot make such a design secure enough for my purpose (exokernels allow direct hardware access!).
Post 13 Jul 2007, 01:34
View user's profile Send private message Reply with quote
Adam Kachwalla



Joined: 01 Apr 2006
Posts: 150
Adam Kachwalla 21 Jul 2007, 02:16
Can someone explain why a microkernel would be more secure?
Post 21 Jul 2007, 02:16
View user's profile Send private message Reply with quote
Adam Kachwalla



Joined: 01 Apr 2006
Posts: 150
Adam Kachwalla 24 Aug 2007, 09:09
Still waiting...
Post 24 Aug 2007, 09:09
View user's profile Send private message Reply with quote
Rahsennor



Joined: 07 Jul 2007
Posts: 61
Rahsennor 27 Aug 2007, 09:45
Microkernels are said to be more secure because the different functions are seperated - If a malicious program finds a fault in one piece of code, it cannot exploit that fault to cause trouble elsewhere. In a microkernel the different parts could be at different addresses, depend on different APIs, etc. In a monolithic kernel, all the code has access rights to all the other code, so one bug could be used by a hacker in any number of ways.

I hope that helps.
Post 27 Aug 2007, 09:45
View user's profile Send private message Reply with quote
Adam Kachwalla



Joined: 01 Apr 2006
Posts: 150
Adam Kachwalla 03 Sep 2007, 08:19
What about a hybrid kernel? How come so many OSes are using hybrid kernels?

So that phases out "Modular Monolithic" as an option
Post 03 Sep 2007, 08:19
View user's profile Send private message Reply with quote
drhowarddrfine



Joined: 10 Jul 2007
Posts: 533
drhowarddrfine 03 Sep 2007, 23:03
According to FreeBSD Unleashed, Linux and Windows 98 are monolithic kernels in which the code is more optimized for performance and to minimize context switching. This makes for code that's cleaner and easier for developers to maintain, but the administrator is required to recompile the kernel every time support for a new device is added. (It goes on to mention there are differences in that statement today)

A microkernel is fairly small and modular and new devices can be more frequently added but the differences with monolithic are more a philosophical one than anything having to do with devices.

The biggest and most fundamental difference is that a microkernel has a mechanism for passing certain non-core system calls to a user level process rather than handling it internally. This keeps only essential functions in the kernel and makes it more robust, manageable and understandable. It also provides a measure of inherent security.

Although the ideal of total modularity is all well and good, a kernel in which every kind of device and option is modular and loadable during runtime is as theoretical as perpetual motion.

Parts of the above were edited by me for brevity.
Post 03 Sep 2007, 23:03
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2024, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.