KLD module with C++ iostreams ?

Chuck Robey chuckr at chuckr.org
Wed Apr 20 19:28:55 PDT 2005


David Leimbach wrote:
> Interesting question.  People usually have to implement the C++
> runtime to be usable from within the kernel.  Things like exceptions
> and "stdout" may not be defined in kernel space :)
> 
> I'm not terribly familiar with how it works on FreeBSD but I know it
> took a special effort to get C++ support into linux.
> 
> Dave
> 
> On 4/20/05, Aziz KEZZOU <opensource.enthousiat at gmail.com> wrote:
> 
>>Hi hackers,
>>I am wondering if I can use c++ iostreams inside the kernel ?
>>After all the code : cout << "Hello world!" << endl;
>>ends accessing the stdout just like : printf("Hello world!\n"); right ?

No, that's not true, all the iostreams stuff is totally independent. 
The iostreams stuff is coming from some of the ugliest code in C++. 
But, that's not the question, or at very least, it shouldn't BE the 
question.  There is ZERO need to bring in features from C++, all it will 
do is to directly confuse the code base by greatly adding to the 
complexity of the code, without giving anything like equivalent features.

Some very, very elegant work has been code, OO-ing the kernel code, 
adding OO features, all without violating the C language code base. 
Adding in C++ features over stdio stuff is so senseless, it's nearly 
obscene.

If the gain at the end of the road was large enough, I wouldn't be 
against it so stridently, but I see *so* little gain.

BTW, you know where the ugliest code in computer science today is: half 
is in the actual implementation of the cstdio/template code, the other 
half is the iostreams stuff.  The fact that they energize some very 
elegant code is causing many folks never to see the fact of the horrible 
code lumps that exist out in the backyard.

>>
>>So if I could compile my KLD module with static linkage to libstdc++,
>>that should be ok, right ?
>>
>>Any one did or knows how to do this ?
>>
>>Thanks,
>>-aziz
>>_______________________________________________
>>freebsd-hackers at freebsd.org mailing list
>>http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
>>To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
>>
> 
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"



More information about the freebsd-hackers mailing list