Re: Kernel callable functions

Andrew Mileski (dmtech@magi.com)
Wed, 28 Feb 1996 10:40:42 -0500 (EST)


> You really *do* learn something new every day using Linux. The

Very true. I recently learned it is *EASIER* by far to install Linux
than Windows'95. (I just put '95 on my system - lost count of the
number of reboots needed, but it *did* take 3 reboots/device to
install the device drivers!)

>driver I'm doing right now is the first kernel-space code I've ever
>written, and I didn't realize until this afternoon that a great deal of
>libc isn't available outside of user-space |-<.

Welcome to the wonderful world of kernel hacking!

> I'd like to find a list
>of what standard library functions ARE available and how to get at them,
>but I cannot seem to locate any documentation on that specific topic.

You *must* read the code. There are only essential calls in the
kernel, for example there are a *few* string ones, but that's
about it. Look at other drivers (basic ones like the console and minix
are good examples)

> I've read over every FAQ, HOWTO, man page, etc. that I can think
>of, as well as the kernel hacker's guide, but all of the available
>resources are diffuse, skimpy, and don't collect all the info together in
>one place. A lot of them are really badly out-of-date as well.

I invite you to re-write them (nobody else wants to).

> I even
>tried resorted to pawing through the kernel sources |->, but after seeing
>how incredibly obscure and badly-commented they are, I figured that I
>should ask here to see if I've missed anything.

WOW! Another person who AGREES there is no such thing as, and I quote,
"self documenting code".

The kernel's overall workings are SIMPLE. The details can easily be
overwhelming though (I don't claim to understand it all).

> I find it hard to
>believe that, with all the kernel hacking that goes on in the Linux
>community, there isn't a better collection of info on the topic than what
>I've found so far....

We're a rough-and-tough bunch that floss our teeth with razor wire, and
trim our nails with a chainsaw :-)

"All good programers are lazy", so I'm told...I haven't got
around to checking if it is true or not :-)

One of the bigest "problems" with Linux is that it changes so rapidly.
It is a chore to document, so many people skip this part.
A common flaw - too many pleople just code, not enough engineer.

-- Andrew E. Mileski --

-------------------------------------------------------
Located in Canada's Capital: Ottawa! (EST)
mailto:dmtech@magi.com http://www.magi.com/~dmtech/