Kernel frameworks

Julian Elischer julian at
Sun Oct 17 14:58:28 PDT 2004

Julian Elischer wrote:
> I.e., it sounds like a
>> reference count issue due to sockets using a slightly aberrant reference
>> model.  I'll try to come up with a workaround sometime in the next 12-24
>> hours, and hopefully also a proper fix.
>> Robert N M Watson             FreeBSD Core Team, TrustedBSD Projects
>> robert at      Principal Research Scientist, McAfee 
>> Research
> At the risk of sounding like a broken record, if we had a central policy 
> on how
> reference counts were done, and library/include support for doing it we 
> would
> be some distance ahead fo where we are now..
> There are too many examples of "aberrant reference model".

One of the things that John Dyson wanted to do before he overloaded
and had to take things easy for a while, was to rewrite
FreeBSD in another language.

These days I tend to agree with him on this..

My gut feeling is that the same algorythms and data structure mechanisms
keep occuring again and again in teh kernel, and that it should be possible to
specify the kernel in a meta-language (also known as a Very High Level Language)
and generate the result. I've actually thought a little about this.
I havent seen a language that fits the bill yet. Does anyone have a favourite
VHLL that they think could be used to describe a kernel?  My suspicion is that 
the descriptions would be such that we'd probably have to create our own KDS
(Kernel descripion Language :-)

With Gigabyte machines now however, it is becoming feasible to create very
large semantic and symbolic maps and model things that only a few years ago
would have been impossible.

Various frameworks such as geom, vfs, the BSD network stacks, netgraph,
process/thread hieararchies, the VM pmap and object layers, teh tty code (now)
etc. could all be described in some way I'm sure.

For example there are many fields in the proc structure,
the existance of which should be deducible from a description
of what structures exist and how they should be linked together.
it should not be neccesary that a human programmer needs to specify
them. In the same manner locking in these cases could be
automaticall generated..

Oh well.. enough dreaming.

> _______________________________________________
> freebsd-current at mailing list
> To unsubscribe, send any mail to "freebsd-current-unsubscribe at"

More information about the freebsd-current mailing list