C++ class library for kernel mode programming

T

tzuchien.chiu

I've searched this new group with the keyword: "kernel library array
list".

I am looking for an open source C++ class library for kernel mode
programming, because the C++ standard library and STL cannot be used in
the kernel mode. The library should provide some fundamental data
structures and algorithms like dynamic size array, list, string,
hash/map, tree, graph, sort, etc. It has to be licensed in LGPL style.

The most important of all, this library cannot use any C++ RTL and STL
functions.
 
V

Victor Bazarov

I've searched this new group with the keyword: "kernel library array
list".

I am betting you haven't found much, have you?

Have you heard of "Google"? I mean, the _web_search_.
I am looking for an open source C++ class library for kernel mode

Which kernel do you mean?
programming, because the C++ standard library and STL cannot be used
in the kernel mode.

It cannot? Well, I suppose that's right. The C++ Standard mentions
nothing about "kernel mode".
The library should provide some fundamental data
structures and algorithms like dynamic size array, list, string,
hash/map, tree, graph, sort, etc. It has to be licensed in LGPL style.

The most important of all, this library cannot use any C++ RTL and STL
functions.

If it can't use RTL, how in hell would it provide dynamic size array
without 'malloc'? Oh, wait, it must be allowed to use OS-specific
means to allocate memory, right? Shouldn't you then be asking about
it in the _OS-specific_ newsgroup?
 
T

tzuchien.chiu

Yes, I tried to google for it. Some are commerical. Some seem not
matintained anymore or I cannot tell the number of users (assume it's
proportion to the stability). For example:
http://cxx.uclibc.org/index.html

C++ RTL and STL cannot be used in the kernel mode. Please refer to
http://www.microsoft.com/whdc/driver/kernel/KMcode.mspx. I am looking
for replacements for them.

The library should not be specific to any kernel mode. I am looking for
a cross platform library.

"If it can't use RTL, how in hell would it provide dynamic size array
without 'malloc'? Oh, wait, it must be allowed to use OS-specific
means to allocate memory, right?"
- Yes, if it uses the new operator, we can override it with some
OS-specific memory allocation functions.

It's something similar to the Embedded C++ library or Embedded STL. Is
there any open source LGPL implementation?
 
I

Ian

Yes, I tried to google for it. Some are commerical. Some seem not
matintained anymore or I cannot tell the number of users (assume it's
proportion to the stability). For example:
http://cxx.uclibc.org/index.html

C++ RTL and STL cannot be used in the kernel mode. Please refer to
http://www.microsoft.com/whdc/driver/kernel/KMcode.mspx. I am looking
for replacements for them.

The library should not be specific to any kernel mode. I am looking for
a cross platform library.
Do what I did, write the bits you need when you need them.

You'll be hard pushed to find such a library, for a start every compiler
has its own way of doing its run time, which is unlikely to be documented.

It's surprising how much you can do with just your own new and delete.

Ian
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,954
Messages
2,570,116
Members
46,704
Latest member
BernadineF

Latest Threads

Top