Mailing List Archive

Support open source code!


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

tlug: Re: kernel modules (was: Kernel rebuild problem)



On Wed, Sep 30, 1998 at 01:32:24PM +0900, Chris Sekiya wrote:
> 
> IIRC, the whole module concept was thought up by Peter MacDonald (anyone
> know what happened to him?).  The idea was to have kernel drivers that
> didn't need to be rebuilt each time the kernel was upgraded.  In practice,
> though, the ABI transmogrified so swiftly that a module rebuild would be
> necessary anyway.
> 
> Further, each module eats up at least one complete page per.  Rather
> wasteful for a 436-byte driver.
> 
> Lastly, modules make for weakened system security.  I've seen a number of
> machines with insmod suid root for convenience.

Not everything needs to be made a module, certainly.  I can't think of
many reasons not to compile a 436 byte driver into every kernel.

However there are more reasons to use modules than to simply avoid
recompilation after a kernel upgrade or to make Linux distribution
vendor's lives easier.  If that's all you think modules are for, no
wonder you don't care for them.

Have you ever tried to administer a network of dozens or even hundreds
of client machines as well several servers -- most with different
hardware configurations?  I've only a handful of Linux machines I
administer now, and I'll tell you I wouldn't give up modules for the
world.

At various times in my career I've administered networks of SunOS
machines, AIX machines, Windows/NT machines, HP-UX machines, VMS
machines, VM machines (!), ad nauseum.  Only recently have I had the
pleasure of administering a "network" of a few Linux machines (though
I've been fooling with linux since the 0.9x days) and I'm truly looking
forward to the day when I see a network of hundreds of Linux clients.  

The only way to keep your sanity with a large network is to make the
client boot disks as identical (and as read-only) as possible -- you
don't *WANT* to have different disk images on every machine (it's almost
impossible to avoid it in the Microsoft case).  

You rail against loadable modules and against binary distributions
because your worldview is hacking on your own machine.  My worldview is
"enterprise computing", and things like loadable modules and the RPM and
debian package managers are exactly *why* I'm looking forward to the day
when the majority of the machines on the networks I (or my clients)
administer are running Linux.  Administrators lives will be made easier,
and end users will be able to get more done.

Loadable modules are at least conceptually convenient for infrequently
used things.  I seriously doubt I would ever compile minix or hpfs
filesystems into one of my production kernels, but if ever I needed to
mount a floppy or whatever with one of those filesystems on it, it's
nice to know I won't need to compile a kernel and reboot (an
artificial -- and unlikely -- example but the concept is valid).

Then there is the case of: "yesterday I was using a tulip based ethernet card,
today it went up in flames but I happen to have an Intel etherpro
lying around".  Sure I've still got to reboot to make a hardware change
but it sure is nice not having to recompile a kernel to do it.  I also
don't necessarily *want* a compiler available on all my clients machines
(Joe and others will attest: you don't put anything on a trader's client
than the applications they tell you to put on).

Anyone developing a driver will certainly appreciate the ability to load
and unload development versions without having to relink a kernel and
reboot.

Finally, I must say that despite the fact that I often jokingly refer to
myself as a "Unix bigot", *I'm* offended by the pure snobbery/eletism
being displayed here.  Many of the things I've read on this list sound
to me like variations on the following: 

    "I remember Serdar Argic and green-card spam on every newsgroup, and
    I remember the Morris worm -- you don't even know who Serdar Argic
    is or what news and {da,a}rpanet were even like in the good old days".

    "Anyone who depends on binary distributions instead of compiling all
    their applications from source must be incompetent.  Binary packages
    are evil."

    "There is no good reason for loadable modules -- anyone as competent
    as me compiles everything they need into their kernel.  Anyone who
    can't compile their own kernel shouldn't use Linux."

    "We don't want user friendly applications and novice users diluting
    the quality of the company in the 'Linux Community'."  (Hmm ...
    "There goes the neighborhood" perhaps?).

I'm being overly harsh, of course.  I don't really think you're as
bigoted as I make you sound above.  I suspect you simply have never
really spent much time using modules/rpms/debs or whatever, therefore
you just don't see the point.  I do sympathize with many of your points,
but I can also understand why people are affronted by the clubbishness
of this list (and Linux advocates in general).

Regards,
-- 
Rex
---------------------------------------------------------------
Next Meeting: 10 October, 12:30 Tokyo Station Yaesu central gate
Featuring the IMASY Eng. Team on "IPv6 - The Next Generation IP"
Next Nomikai: 20 November, 19:30  Tengu TokyoEkiMae 03-3275-3691
---------------------------------------------------------------
Sponsor: PHT, makers of TurboLinux http://www.pht.co.jp


Home | Main Index | Thread Index

Home Page Mailing List Linux and Japan TLUG Members Links