Date: Mon, 11 Sep 2000 13:41:52 +0700 (ALMST) From: Boris Popov <bp@butya.kz> To: Bruce Evans <bde@zeta.org.au> Cc: freebsd-arch@FreeBSD.ORG Subject: Re: Shared kernel code Message-ID: <Pine.BSF.4.10.10009111329070.27558-100000@lion.butya.kz> In-Reply-To: <Pine.BSF.4.21.0009111610080.646-100000@besplex.bde.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 11 Sep 2000, Bruce Evans wrote: > > But there is an interesting question arises - where to put source > > code for those modules which don't represent any device and may consists > > from multiple source files ? > > > > Historically such files were placed in the kern and libkern > > directories. But it seems that both aren't suitable for newly added > > interfaces because of the flat name space. So, my suggestion is to create > > Why not? I like flat name spaces :-), or at least flat directory trees. Looks good for me if each set of files have a prefix. Eg, iconv_*, mbuf_* (sys/kern as example). > > Basically, sys/libkern also can be moved under lib directory. > > I think libkern as an actual library should be brought back. I made > linkern object files normal kernel object files 5 years ago to avoid > configuration and linkage complications, especially for modules. I > think libraries can now be handled reasonably by the kernel linker. > Use libkern.a (and possibly other libraries) in the usual way for > static linkage. This would result in unreferenced objects not being > linked into the kernel. Turn libkern.a into a module (libkern.ko) > to satisfy references from modules that aren't satisfied by the kernel > proper. Most modules would depend on libkern.ko. Use other modules > containing special purpose objects to avoid bloating libkern.ko. Agreed. I think ongoing Peter's work on KLDs will handle it very well. The only disadvantage is that libkern.ko will load all functions despite of the fact some of them already compiled statically. So, time for MODULE_VERSION(libkern, X) and MODULE_VERSION(kernel, X) :) -- Boris Popov http://www.butya.kz/~bp/ To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.10.10009111329070.27558-100000>