Tonight at kernel land…

The RPC benchmark development has led me to introduce some changes in the trunk recently, so now is probably the right time for an update on those matters :

  • The “addr_t” type, used in the past to provide an unsigned integer that has the same size as a pointer, has been renamed “size_t” in order to better fit traditional libC conventions.
  • The kernel memory allocator now supports pooled memory allocation, in sense of allocating a big block of memory once and making further calls to kalloc() just parse that block. Of course, much care must be taken when determining the size of that block of memory…
  • I now have functional versions of the new and delete operators and their array cousins, based on kalloc() and kfree(). A minor limitation is that these do not throw exceptions on allocation failure, but rather use NULL return values.
  • And when I was at it, I made myself a simple string class too, called KString.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s