[lkml]   [2002]   [Apr]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: C++ and the kernel
* Richard B. Johnson ( wrote:
> I would like to rewrite the kernel in FORTRAN because this was
> one of the first languages I learned.
> Seriously, the kernel MUST be written in a procedural language.
> It is the mechanism by which something is accomplished that defines
> an operating system kernel.
> C++ is an object-oriented language, in fact the opposite of a
> procedural language. It is not suitable.


There are many places in the kernel that are actually very OO - look at
filesystems for example. The super_operations sturcture is in effect a
virtual function table.

Sure making every file an object is probably OTT; but large scale things
like a filesystem, a network device or the like probably actually fit
very well.

Sure, there are a lot of features of C++ to stay clear of - exception
handling probably being one of them, and I wouldn't let the C++ stuff
anywhere near the memory management code.

Point being that it is a case of using the write tool for the job. C++
douesn't add any extra overhead just by calling it C++ and not using any
of the features; careful use of the features where appropriate does no
harm and might actually make the code cleaner, and possibly more

I will agree going head in and just throwing C++ at it is a bad thing.


---------------- Have a happy GNU millennium! ----------------------
/ Dr. David Alan Gilbert | Running GNU/Linux on Alpha,68K| Happy \
\ gro.gilbert @ | MIPS,x86,ARM, SPARC and HP-PA | In Hex /
\ _________________________|_____ |_______/
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at
 \ /
  Last update: 2005-03-22 13:22    [from the cache]
©2003-2014 Jasper Spaans. hosted at Digital Ocean