Re: [Criticism] On the discussion about C++ modules

From: J . A . Magallon (
Date: Sun Oct 15 2000 - 19:36:06 EST

On Mon, 16 Oct 2000 02:06:05 Jeff V. Merkey wrote:
> The [new] and constructor/destructor operations create hidden memory
> allocations in C++ that can blow performance in kernel "fast paths".
> Writing kernel code in C++ is never a good idea because of this problem,

I agree that C++ for kernel is not a good idea, libstdc++ should be in the
code would be bigger, there's a complicated runtime under C++ doing things
by itself (copy constructors-operators and so on), inheritance adds some
little calling overhead.

But there are some features of C++ that would be of great value for kernel
development (in general for imperative programming), for example:
- <const &> args : dont break your untouchable data, and get rid of pointer mess
- for (int i=0; ...) : don't use index outside loop
And simple member functions are also fine, they impose NO call overhead
and simplify the use of structs (hey, you can define structs with member
funcs in C++, they dont have to be classes).

So the base C++ is fine, its organized C. Esoteric features make the
difference. This remembers me a thing a saw one time in a Degree project
at the University department I work: there's a thing called
EmbeddedC++, that is just that: C++ whitout the toys, just the basic, designed
write code for cellular phones and so on (the project was for a
company in spain to develop the GUI for its mobile phones).

Perhaps a g++-embedded mode could be the solution...

Juan Antonio Magallon Lacarta                

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to Please read the FAQ at

This archive was generated by hypermail 2b29 : Sun Oct 15 2000 - 21:00:29 EST