From owner-freebsd-questions Sat Jan 10 01:21:02 1998 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id BAA12058 for questions-outgoing; Sat, 10 Jan 1998 01:21:02 -0800 (PST) (envelope-from owner-freebsd-questions) Received: from allegro.lemis.com (allegro.lemis.com [192.109.197.134]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id BAA12023 for ; Sat, 10 Jan 1998 01:20:53 -0800 (PST) (envelope-from grog@lemis.com) Received: from freebie.lemis.com (freebie.lemis.com [192.109.197.137]) by allegro.lemis.com (8.8.7/8.8.5) with ESMTP id TAA01830; Sat, 10 Jan 1998 19:50:49 +1030 (CST) Received: (from grog@localhost) by freebie.lemis.com (8.8.8/8.8.7) id TAA13779; Sat, 10 Jan 1998 19:50:48 +1030 (CST) (envelope-from grog) Message-ID: <19980110195048.17940@lemis.com> Date: Sat, 10 Jan 1998 19:50:48 +1030 From: Greg Lehey To: Jason Wells Cc: freebsd-questions@FreeBSD.ORG Subject: Re: LKM versus Static Kernel References: <3.0.3.32.19980104175505.007cc9b0@jcwells.deskmail.washington.edu> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Mailer: Mutt 0.84e In-Reply-To: <3.0.3.32.19980104175505.007cc9b0@jcwells.deskmail.washington.edu>; from Jason Wells on Sun, Jan 04, 1998 at 05:55:05PM +0000 Organisation: LEMIS, PO Box 460, Echunga SA 5153, Australia Phone: +61-8-8388-8286 Fax: +61-8-8388-8725 Mobile: +61-41-739-7062 WWW-Home-Page: http://www.lemis.com/~grog Sender: owner-freebsd-questions@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk On Sun, Jan 04, 1998 at 05:55:05PM +0000, Jason Wells wrote: > I was considering adding Linux compatibility to my system. After looking > thru the handbook, I noticed that this can be done as a loadable kernel > module. I looked in the lkm directory and noticed the linux object file. > > Why is using an lkm better than using a statically compiled kernel? Vice > versa? What are the issues at stake? Strange that nobody has answered this message. I don't see any important disadvantages in loadable kernel modules; in fact, it's my preferred method of implementing additional functionality. Briefly, Pro: 1. LKMs are modular. You can load them or not load them, and you don't need to rebuild the kernel to add their functionality. 2. You only need to have an LKM loaded when you want to run it. If you want, you can unload it and reclaim the memory it occupies. 3. Starting the system can be faster, since you don't need to initalize the kernel version of the LKM. Con: 1. Although they're separate, LKMs are part of the kernel, and they must match the release. If you try to run a 2.2.2 release LKM with release 2.2.5, you could have trouble, including panics, or it might not work at all. I'm sure there are more; if anybody wants to, feel free to add to this list. Greg