manpages refer to source-code file?
Hiten Pandya
hmp at backplane.com
Wed Mar 17 15:38:11 PST 2004
Matthew Dillon wrote:
:i have been digging through newbus.. and wanted to know more, how it works
:(for educational purpose).
:
:so, i wanted to know where to find what i want.
:(sys/kern/subr_bus.c, for those interested and who didn't knew)
:
:do you think a section SOURCE, where the source files in the kernel (or in
:libc for that reason) are, is a good idea?
:
:i understand, that everyone working on this, should know how to search
:(ctags and such), but it might still be nice to have that in the manpages.
:
:~ibotty
For man pages regarding kernel functions, specifying the source file
is probably a good idea. But, unfortunately, these man pages tend to
be mostly out of date so the usefullness would be limited.
Learning how newbus works is a pretty big bite. I can barely figure it
out myself, mainly because since everything is so disconnected its
hard to figure out the chain of command.
Basically there is an API specification for various layers within
newbus, with default function assignments (the .m files you see lying
around), and individual busses/devices declare a subset of functions
that they support, with any unspecified elements being automatically
initialized to the default.
[ not a directly reply, but as a followup... ]
For a start, look at the arch-handbook chapter that I and
Jeroen wrote quite some time ago. Inorder to understand
the fundamentals of Newbus, you need to understand the KObj
framework.
I would like to point to: (Newbus tutorial)
http://www.freebsd.org/doc/en/books/arch-handbook/newbus.html
and a chapter on Kernel Objects (KObj):
http://www.freebsd.org/doc/en/books/arch-handbook/kernel-objects.html
Another hint, that the newbus framework gets pretty easy to understand
if you think in terms of Object Orientation. Things can be overridden,
new interfaces attached etc etc.
If you have more questions, do not hesitate to ask.
Hope that helps,
-Hiten
Hiten Pandya
hmp at xxxxxxxxxxxxx || hmp at xxxxxxxxxxx
More information about the Kernel
mailing list