On Sat, 2006-08-12 at 14:11 -0400, Luis Araujo wrote:
I actually believe languages play an important role in the design of
an operating system. So, it isn't good to underestimate its
influences. One of the reasons we keep living in a unix-like world
is because of C.
In my opinion, the reasons we are still in the C/C++ world for OS's are
as follows:
1. More modern languages all rely on GC. GC does not get along with
real time or DMA, media applications are important, and they
rely on both.
2. Legacy apps are written in these languages. Even if you write your
core system in something else, you need to be able to support the
C/C++ runtime environment for apps. This creates a legacy/fusion
problem in your architecture.
3. There is no compelling performance reason to choose a safe language
and language-enforced safety in preference to C and address spaces.
In fact, the Singularity numbers show that the costs are, at best,
equivalent.
4. The majority of alternatives rely on JIT compilers. A high
performance JIT compiler is easily 10x the complexity of a fast
microkernel, and takes *years* longer to develop.
Singularity is a notable exception to this statement, because they
chose to omit dynamic loading and also to compile in advance. Their
compiler is still within the TCB, but it can be removed from the
TCB for most purposes if the typed assembly language stuff works
out. They also gave up the class loader idea, which was a VERY good
decision. Class loaders are completely unnecessary if the OS has
a decent application domain model.
5. In the absence of a compelling advantage, the risk of adopting new
technology isn't justified **if** it doesn't already exist in
established form.
So the real question is: is there some market where the benefit might be
compelling so that the new technology can be demonstrated? More
precisely: where the benefit of new technology is so clear that the cost
of developing the new technology while simultaneously supporting the
legacy technology is justified.
Perhaps the answer is yes, but identifying that market is a very
challenging thing to do. It took us 10 years for the EROS/Coyotos stuff
to figure out the right initial market.
shap
_______________________________________________
L4-hurd mailing list
address@hidden
http://lists.gnu.org/mailman/listinfo/l4-hurd