Return to BSD News archive
Path: sserve!newshost.anu.edu.au!munnari.oz.au!news.Hawaii.Edu!ames!pacbell.com!ihnp4.ucsd.edu!library.ucla.edu!csulb.edu!nic-nac.CSU.net!charnel.net.csuchico.edu!charnel!xmission!u.cc.utah.edu!cs.weber.edu!terry From: terry@cs.weber.edu (Terry Lambert) Newsgroups: comp.unix.bsd Subject: Re: net / free bsd ? Date: 30 Mar 1994 22:10:23 GMT Organization: Weber State University, Ogden, UT Lines: 49 Message-ID: <2nctcf$drs@u.cc.utah.edu> References: <Cn791D.B84@frobozz.sccsi.com> <2n86gv$md6@u.cc.utah.edu> <CnFIDC.CyJ@atria.com> NNTP-Posting-Host: cs.weber.edu In article <CnFIDC.CyJ@atria.com> jtk@atria.com (John T. Kohl) writes: ]>>>>> "TL" == Terry Lambert <terry@cs.weber.edu> writes: ]>>>>> "KB" = kevin@frobozz.sccsi.com (Kevin Brown) writes: ]KB> to load device drivers when running, i.e. in multiuser mode. For doing the ]TL> BSD supports it. I wrote the kernel stuff and released it at the end of ]TL> last May. NetBSD has it integrated. ] ](a) How do you deal with symbol tables for kernel debugging (serial line ]debugging, or crash dump symbol tables)? You don't. The kernel symbols are loaded from the kernel image. In reality, the kernel ought to know the location of its boot image and only carry the extension symbols around anyway. The new code (not by me) handles this correctly. By putting the link in the kernel, the kernel symbol lists can be revised at will. ](b) Can you unload drivers too? (I'd hope so!) Yes, you can, although there is a symbol space problem in unloading drivers in a dependent realtionship (ie: driver B uses symbols exported by driver A), since an unload/reload is impossible. Basically, the result of the driver link into the allocated kernel location is a file with the kernel symbols plus the module symbols, and a dependent driver must link against that instead of the kernel itself to get both sets of symbols. Independent drivers obviously would not have this problem. The new code should fix this as well, as long as it keeps a module origin for symbols and keeps a module reference count for depended upon modules. This would allow the backing out of symbol space information. The stuff I released that was adopted by NetBSD was really just prototype work, but as always, better than nothing. It's very similar to SunOS 4.1.2 kernel modules (I tried to keep that command line interface exactly). The new stuff is closer to the Solaris/SVR4 method. I've done similar work, but can't release it for various reasons. I'd say use the new code when it becomes available, since it should allow things like mount time demand loading of file systems, call time loading of system calls, etc. Terry Lambert terry@cs.weber.edu --- Any opinions in this posting are my own and not those of my present or previous employers.