Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Sep 1995 15:45:04 -0400
From:      dennis@etinc.com (dennis)
To:        "Justin T. Gibbs" <gibbs@freefall.FreeBSD.org>
Cc:        jkh@time.cdrom.com, hackers@freebsd.org
Subject:   Re: FreeBSD 2.1 will require a minimum of 8MB for installation. 
Message-ID:  <199509301945.PAA06042@etinc.com>

next in thread | raw e-mail | index | archive | help
>>>Fixing LKMs (something even people with more than 4MB want) should take
>>>care of this.
>>>--
>>
>>It really shouldn't. I think that  what is needed is a "bootload" kernel and
>>a "generic"
>>kernel. While its ok for the generic kernel to be large, the "bootload"
>>should allow someone to 
>>load the system and compile (or load) a custom kernel, which can be much
>>smaller. There's no
>>reason why the generic kernel has to be used on the boot floppy.
>
>I respectfully disagree.  ;-)
>
>The "boot kernel" should have enough glue to load LKMs for anything from
>NFS support to your favorite SCSI driver off of the boot floppy (or even
>additional floppies).  The LKM for device drivers should have an entry
>point that lets you determine presence of the hardware before committing
>the whole module to memory.  In this way, a "generic" boot floppy could
>cycle through all LKMs asking them to do the probe and only load the full
>module (or perhaps unload the module in the event of failure) if the probe
>is successful.  In this way, the only way you'd not be able to install
>in a low memory configuration is if you had everything but the kitchen
>sink in your machine.
>
>I want to move toward a more dynamic system where
>in most cases you don't have to recompile the kernel to get the right
>configuration for you system.  LKMs seem the natural solution.

This is a lofty goal that requires not only that LKMs be substantially
improved, but that every
driver (almost) be implemented as a loadable module and that the modules be 
extremely clean and non-destrucitve. While this is certainly possible, its
not a solution for today
or even a very near tomorrow. I still don't think that the wavelengths are
in sync here. What you've described
is a pretty neat "smart kernel" that could be used generically by just about
anyone, and it is an excellent
goal. It seems, however, that the problem at hand is that the basic
requirement for loading a system initially
is greater than that of the systems that many of us will be running.

The goal of the initial load of a unix system is to get a running system
with enough tools to build an
appropriate system for a growing number of devices. The generic kernel has
little value after the load as
no-one who knows what they're doing is going to use it. While requiring that
those that can't build a kernel to have
8MB is OK, making it a basic requirement is creates a major problem. If it
were unavoidable, that is one thing, but the "I can't do it by Sunday" is
another.

My guess is that everyone who "has to have 2.1" already has it or something
close to it, so it seems that forcing something out  that is clearly not
ready to meet some sort of self-imposed deadline will defeat its own purpose
in the long run. From a purely marketing standpoint, there is a mindset
about memory requirements (created mostly by Microsoft) that the "minimum
requirement" is not enough. If you have a product that "requires 8MB" it
will be assumed that you need 12 or 16. There is a significant marketing
advantage to be able to say that it will run with 4MB (which it
will)...saying "but you need 8 to load it" is pretty hard to explain.

Dennis
----------------------------------------------------------------------------
Emerging Technologies, Inc.      http://www.etinc.com

Synchronous Communications Cards and Routers For
Discriminating Tastes. 56k to T1 and beyond. Frame
Relay, PPP, HDLC, and X.25




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199509301945.PAA06042>