FreeBSD Kernel Internals Documentation

Nikola Pavlović nzp at
Mon Jan 2 21:45:14 UTC 2012

On Sat, Dec 31, 2011 at 02:59:20PM -0500, David Jackson wrote:
> >>
> > FreeBSD is very well documented!
> > I guess a lot of people can't cope with how structured and professional it
> > is. They are used to chaos, fear, uncertainty and doubt and feel
> > comfortable that way.
> >
> >
> My experience is that FreeBSD kernel documentation is  spotty and not
> really sufficient to understand the kernel. Without good documentation,
> code can take so much time to decipher it might be quicker to just throw it
> out and start from scratch. Maintainable code requires documentation.

What you wrote here is so full of generalizations and banal truisms
mixed with weasel words that it doesn't really mean anything.

> >> 2. FreeBsd is a main-stream O/S-- just look at the number of different
> >> architectures/applications which are supported by FreeBSD.
> >>
> > Main stream and top player for web and internet servers
> >
> >
> FreeBSD is far from being mainstream or practical for most users. I tried

So what?  Using a helicopter to get from A to B is far from being
mainstream and practical for most users of transportaion.  That doesn't
mean we should start putting wheels on them in hope more people who need
cars will start using helicopters.

> to use a USB video capture device. For you, what may be "useless" may be
> indespensible for others.  

I don't think anyone is claiming FreeBSD shouldn't support as much
reasonable hardware as possible.

> We should improve FreeBSD to make it work for
> better for more people, experts and non-techies alike. I am really appalled
> at an attitude that some have against making it better, adding features and
> functionality that will make for a smoother experience, its as if they dont
> care about anyone else and want the OS to be useful to no one else. We need
> to make it better for everyone.

Why?  But more importantly, define "better" and "everyone".  Also, who
is this "we"?  I'm sorry but usually when someone starts lamenting that
"we should x", especially in volunteer and FOSS projects, he/she usually
means "anyone but me, I just want my stuff to work."

So you want your USB capture device to work, maybe you skimmed through
some documentation with the idea of writing a driver, but you can't make
sense of anything.  What are you doing on freebsd-questions posting
meaningless fresh-out-of-college ideas about software development?

You should be on freebsd-hackers asking specific question.

Linus has a good, timeless answer for the kind of phylosophy essays
you're writing here: "Talk is cheap, show me the code."  Yes, it may
seem harsh and user-unfriendly, but that's just the way it is.

> > 4. Drivers aren't really a limitation. Look at the history of computing,
> >> that modern O/S support such diverse platforms is an amazing development.
> >> As far as I'm concerned, FreeBSD supports main stream components, there
> >> are
> >> no classes of components that I'm aware of which aren't supported by
> >> FreeBSD. If you need to use a particular device, for which there is no
> >> driver, historically it's not unusual to find that on any particular
> >> platform a particular device is not supported.
> >>
> > It supports most things except the things you wouldn't want anyway
> >
> >
> Drivers are a huge limitation, the lack of them, Here I beleive you are
> just plain wrong. The fact is, people do not want to have to think about
> whether or not their hardware will work with an OS or fight the OS for days
> to make it work. Trhe truth is on Windows things really do just work. Ive
> set up Windows, I know this. Windows has other things however which make it
> undesirable to use. What I want to use is combine the things Windows has
> right with an open source, free OS. The way things are now does not make
> since, you can use Windows, and the hardwarw works, but its a closed
> platform. You can use FreeBSD, which has bad hardware support, but is an
> open platform. I want to see an open platforn that has great hardware
> support, even if we have to use binary drivers.

Let's ignore the oxymoronic open platform-binary drivers idea for a
moment.  Where did you get the idea that FreeBSD community in general
discards binary drivers?  How about bitching to the manufacturer of your
USB capture device?  "What, you mean drivers don't magically grow on
trees ready to be plucked?!"

> >
> >> 5. Nobody is making anyone use FreeBSD. It's free. If you don't enjoy it,
> >> don't use it. Maybe remove yourself from the mailing list-- or don't, if
> >> you just want to stay informed.
> >>
> > If you don't like it, please leave, there are a lot of alternatives
> >
> >
> What you are saying here is that your idea is instead of FreeBSD being
> responsive to the needs of all users, you basically want to own the project
> and dont care about anyone else.

No, he is saying you should act rationally and either use the tool that
gets your job done, or if you don't like the tool start doing something
productive to get the tool you would like to have.  What you're doing
instead is writing meaningless fantasies about rainbows, happy users
... and, of course, world peace.

> >> 7. The temptation to install illegal software on MS Windows is very high.
> >> Who wants to pay for every little gimmicky app? Who can afford to pay for
> >> some major applications, which are needed for studying etc.? This often
> >> leads to an unstable system and security problems. The ports system in
> >> comparison is a much preferred "software/ application distribution system"
> >> because at least you get to look at the source code, if you want to.
> >>
> > Most windows users and professionals I know are plane thieves, it is just
> > easy for hem to get away with it. It's not my cup -o- joe and I refuse to
> > be like that, no illegal software for me.
> >
> >
> I completely agree here. Especially for people of low incomes and who are
> not wealthy, the cost of windows software can be a killer.also terrible is
> the closed source nature of it which means you have no idea what the
> software is doing on your computer. It all reeks of dishonesty. People who
> can afford it should make contributions to open source projects to help
> them proceed, however, I am not for heaping up huge costs on low income
> people, many of them students stuggling under immense debt.

With the risk of sounding cynical, how does this terrible distrust you
have of closed source software mix with the idea that FreeBSD should
even use binary drivers if need be (as if someone is stopping vendors
from providing them)?

As for helping low income families and students--you do understand
writing drivers takes more than just good will and a desire to be a
decent human being?

> One gets the feeling that low income people are being made to suffer more
> because the way many software companies are, such as Apple, there is a high
> profit margin for the executives, even the programmers themselves recieve
> peanuts compared to what the executives of these companies recieve.

Yes, indeed, one would get the feeling this is the case, perhaps...  No,
it's not a feeling and it doesn't need to be sugar coated--that's how it
is, in fact, it's much, much worse, and yes people should do something about it.
But remind me again what does this have to do with FreeBSD kernel

> >> 8. It's an individual choice. Depends what you use your computer for.
> >> maths/R is one of my favorite applications and it even runs on windows.
> >>
> > It's all about choice and I'd rather learn from history than repeat it
> > over and over
> >
> >
> >> May the force be with you!
> >>
> > Use the force Luke, read the source :)
> >
> Reading the source alone is a poor way to try to understand the system,
> increased programmer productivity and development cycle can be acheived if
> source code is used along with documentation of the source code. this saves
> time. I know, ive tried reading FreeBSD source code.

Finally!  In 30+ years of BSD history you're the first outsider to the
selfish kernel developer "clique" who has tried to understand this
mysterious piece of software.  But you know what they say--never
attribute to malice, what you can attribute to incompetence.  They
probably just weren't aware of proper programmer productivity techniques
and the finer points of development cycles.

Q:	How many Harvard MBAs does it take to screw in a lightbulb?
A:	Just one.  He grasps it firmly and the universe revolves around him.

More information about the freebsd-questions mailing list