Click here to Skip to main content
15,942,756 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
hi guys :)
i have a question:
during writing an o.s which programming models is used(structured,oop,...)?
for example in linux and unix which programming model is used?

There is no a single model of the level you mean even in a single OS.
The programming models used in new systems are too different to make any sensible answer.
I think if you aim to write you own you need to make your own decision — the less you look behind at existing OS, the more valuable might be yours (in case of success, of course).

Linux is not object-oriented, probably as every Unix (but I cannot guarantee that), but some others are deeply object-oriented (notable example is Singularity[^]).

Most common classification of OS is based on the modularity concept, especially relative sizes of the kernel and how independent they are (Microkernel, Hybrid kernel, Monolithic kernel, etc., see[^]).

Share this answer
Espen Harlinn 30-Jan-11 13:53pm    
5+ Nice answer that indirectly points to fiasco - as I've explained below :)
Sergey Alexandrovich Kryukov 30-Jan-11 13:58pm    
Thank you very much.
Somehow even I failed :-) to understand which fiasco did you mean; so other readers may fail to. Would you elaborate on that?
Espen Harlinn 30-Jan-11 14:03pm    
Maybe I should have answered first, and then commented on your answer :)
Reza Oruji 30-Jan-11 15:29pm    
Thank you
Think of this as an elaboration on SAKryukov's answer - and a way to enjoy the benefits of a monolithic kernel on top of a micro-kernel. The best of both worlds :)

I'd take a look at Fiasco µ-kernel[^]. It's a C++ implementation of the L4 kernel interface that is fully preemptible. It will let you support "hard real-time" requirements.

L4Linux[^] runs on top of Fiasco, turning this into an extremly interesting architecture.

Espen Harlinn
Share this answer
Sergey Alexandrovich Kryukov 30-Jan-11 15:00pm    
Most interesting illustration of the diversity in approaches -- my 5.
Espen Harlinn 30-Jan-11 15:15pm    
Fiasco is on my very short list of solutions looking for a problem, meaning I would love to play around with it if there was any money in doing so.
Reza Oruji 30-Jan-11 15:29pm    

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900