Date: Thu, 9 Nov 1995 06:59:41 +1100 From: Bruce Evans <bde@zeta.org.au> To: bde@zeta.org.au, phk@critter.tfs.com Cc: CVS-commiters@freefall.freebsd.org, cvs-sys@freefall.freebsd.org Subject: Re: cvs commit: src/sys/kern kern_sysctl.c Message-ID: <199511081959.GAA07042@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
>> Linker sets are very old technology. They are useful for static linking
>> and configuration, but we're trying to get away from those. Consider an
>>...
>Well, how would you dynamically add something to a switch() {} ?
Not :-). The switches would have to be replaced by a table lookup.
>> think it is better for the primitive operations to be addition and
>> removal operations on a tree. The `sysctl_' linker set would just
>> give a list of things to be added to the tree initially.
>no, wastes too much storage. Been down that road once. You end up
>having to store the entire name in each entry. Bad for your RAM.
Can't the tree contain only node pointers and pointers to static info?
The node pointers could replace a lot of code in switches but you won't
see benefits like that without rewriting more.
I'm surprised that you found a lot of storage wasted. I would have thought
that there aren't enough sysctl variables to matter. There aren't many
because they were too hard to add :-).
Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511081959.GAA07042>
