Linked by Thom Holwerda on Fri 10th Jul 2009 22:53 UTC, submitted by poundsmack
OSNews, Generic OSes Captain, we've encountered another one. FreeNOS is a microkernel-based operating system written for learning purposes. "The system is very experimental, yet it currently supports virtual memory, simple task scheduling, and interprocess communication (IPC). It currently contains support for a few devices, including VGA, keyboard, i8250 serial, and PCI host controllers. FreeNOS has an experimental implementation of several filesystems, such as the virtual file system, procfs, tmpfs, and ext2fs. Current application libraries include libposix, libc, libteken (terminal emulation), and libexec (executable formats). All source code has been documented with Doxygen tags."
Thread beginning with comment 372999
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[4]: C++
by yorthen on Sun 12th Jul 2009 11:09 UTC in reply to "RE[3]: C++"
yorthen
Member since:
2005-07-06


At the kernel level, you're running on the bare metal and you have to provide all functionality from scratch. The features of C++ depend heavily on a runtime to handle things like RTTI, exceptions, global/static initialization, memory allocation and constructors/destructors, among other things.


Except of course that only RTTI and exceptions requires the runtime, constructors and destructors are just syntactic sugar for function calls at the right places. Global/static initialisation is also compile-time, memory allocation you have to manage in every OS and using C++ does not make it any simpler nor harder.

No, the real reason is probably that a couple of years ago when the debate started the computers were quite slow and memory quite expensive (compared to today's computers) and C++ compilers were quite bad. You simply could not afford the less optimal code that the C++ compilers generated. Today that is not a problem, a lot of time, money, and effort has gone into making efficient C++ compilers and I would say that most energy is put on making C++ compile well and not C (remember that both Intel and MS sells C++ compilers, even though they can compile C too (well, at least Intel's can)).

Reply Parent Bookmark Score: 2