Connecting Tech Pros Worldwide Help | Site Map

FYI:C++ in the Linux Kernel

 
LinkBack Thread Tools Search this Thread
  #1  
Old July 23rd, 2005, 04:51 AM
Steven T. Hatton
Guest
 
Posts: n/a
Default FYI:C++ in the Linux Kernel

http://netlab.ru.is/exception/LinuxCXX.shtml
We have implemented a complete kernel level run-time support for C++ in the
Linux kernel. In particular our run-time support enables the full use of
C++ exceptions in the Linux kernel, but notably also includes support for
global constructors and destructors, and dynamic type checking. Our kernel
level support is based on open source commodity components, specifically
the GNU gcc/g++ compiler and its exception implementation, the C++ ABI
version independent standard interface.
Currently only the i386 architecture is supported. Furthermore the kernel
patch has only been tested with gcc version 3.3.3, and (with the 0.0.3
release) 3.4.3

....

--
"If our hypothesis is about anything and not about some one or more
particular things, then our deductions constitute mathematics. Thus
mathematics may be defined as the subject in which we never know what we
are talking about, nor whether what we are saying is true." - Bertrand
Russell


  #2  
Old July 23rd, 2005, 04:51 AM
Rapscallion
Guest
 
Posts: n/a
Default Re: FYI:C++ in the Linux Kernel

Steven T. Hatton wrote:[color=blue]
> http://netlab.ru.is/exception/LinuxCXX.shtml
> We have implemented a complete kernel level run-time support for C++ in the
> Linux kernel.[/color]

For people who don't want to read the paper at your homepage you could
answer some questions:
[color=blue]
> In particular our run-time support enables the full use of
> C++ exceptions in the Linux kernel,[/color]

What does this mean?
[color=blue]
> but notably also includes support for
> global constructors and destructors, and dynamic type checking.[/color]

What does this mean?
[color=blue]
> Our kernel
> level support is based on open source commodity components, specifically
> the GNU gcc/g++ compiler and its exception implementation, the C++ ABI
> version independent standard interface.
> Currently only the i386 architecture is supported. Furthermore the kernel
> patch has only been tested with gcc version 3.3.3, and (with the 0.0.3
> release) 3.4.3[/color]

  #3  
Old July 23rd, 2005, 04:51 AM
Ioannis Vranos
Guest
 
Posts: n/a
Default Re: FYI:C++ in the Linux Kernel

Steven T. Hatton wrote:
[color=blue]
> http://netlab.ru.is/exception/LinuxCXX.shtml
> We have implemented a complete kernel level run-time support for C++ in the
> Linux kernel. In particular our run-time support enables the full use of
> C++ exceptions in the Linux kernel, but notably also includes support for
> global constructors and destructors, and dynamic type checking. Our kernel
> level support is based on open source commodity components, specifically
> the GNU gcc/g++ compiler and its exception implementation, the C++ ABI
> version independent standard interface.
> Currently only the i386 architecture is supported. Furthermore the kernel
> patch has only been tested with gcc version 3.3.3, and (with the 0.0.3
> release) 3.4.3[/color]

I think this would be better to be posted in Linux development newsgroups. True it may be
interesting for non Linux-kernel developers too, but only for encyclopaedic reasons. :-)




--
Ioannis Vranos

http://www23.brinkster.com/noicys
  #4  
Old July 23rd, 2005, 04:52 AM
Steven T. Hatton
Guest
 
Posts: n/a
Default Re: FYI:C++ in the Linux Kernel

Ioannis Vranos wrote:
[color=blue]
> Steven T. Hatton wrote:
>[color=green]
>> http://netlab.ru.is/exception/LinuxCXX.shtml
>> We have implemented a complete kernel level run-time support for C++ in
>> the Linux kernel. In particular our run-time support enables the full use
>> of C++ exceptions in the Linux kernel, but notably also includes support
>> for global constructors and destructors, and dynamic type checking. Our
>> kernel level support is based on open source commodity components,
>> specifically the GNU gcc/g++ compiler and its exception implementation,
>> the C++ ABI version independent standard interface.
>> Currently only the i386 architecture is supported. Furthermore the
>> kernel
>> patch has only been tested with gcc version 3.3.3, and (with the 0.0.3
>> release) 3.4.3[/color]
>
> I think this would be better to be posted in Linux development newsgroups.
> True it may be interesting for non Linux-kernel developers too, but only
> for encyclopaedic reasons. :-)
>[/color]

I posted it here for a variety of reasons. I believe it is relevant to how
C++ is, and can be used. Compare the opinions of the authors of the
article I referred to, and this opinion:

"In fact, in Linux we did try C++ once already, back in 1992. It sucks.
Trust me - writing kernel code in C++ is a BLOODY STUPID IDEA.
"The fact is, C++ compilers are not trustworthy. They were even worse in
1992, but some fundamental facts haven't changed: 1) the whole C++
exception handling thing is fundamentally broken. It's _especially_ broken
for kernels. 2) any compiler or language that likes to hide things like
memory allocations behind your back just isn't a good choice for a kernel.
3) you can write object-oriented code (useful for filesystems etc) in C,
_without_ the crap that is C++." - Linus Torvalds
--
"If our hypothesis is about anything and not about some one or more
particular things, then our deductions constitute mathematics. Thus
mathematics may be defined as the subject in which we never know what we
are talking about, nor whether what we are saying is true." - Bertrand
Russell

 

Bookmarks

Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Popular Articles

What is Bytes?

We are a network of experts and professionals in IT and software development that help one another with answers to tough questions and share insights. Get the best answers to your questions from over 220,840 network members.