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

Re: Moving F7



William Case wrote:
> 
> Are modules drivers with special C code wrapped around them so they can
> be loaded for use by the kernel?  Or,
> 
> Are they just drivers by another name?  Or,
> 
> Are they specially built drivers for Linux systems?  Or,
> 
> Is some lower level program reconfiguring a new driver so that it has
> special properties for the use of the kernel?  Or,
> 
> What?
> 
Before that can be answered, we need your definition of drivers.

Kernel modules can provide an interface between the kernel and
hardware. (Driver?) They can let the kernel access different file
system formats. They can let the kernel use different networking
protocols. They extend the function of the kernel. Most modules can
also be built into the kernel instead.

Modules have a defined format. Most modules are written specifically
for use by the Linux kernel, and are not drivers designed for
something else with a C wrapper around them. (There are modules that
are basically wrappers that let you use other format drivers.)

Unless extra steps are taken, modules are limited to the version of
the kernel they were compiled ageist. Some kernel options also make
a difference. For example, a 64 bit module in not going to work on a
32 bit processor, or be loadable by a 32 bit kernel.

It is possible to build a kernel that does not have any loadable
modules, or even support for loadable modules. This works well for
embedded systems where the requirements are not going to change.
 For a laptop, it may make sense to build a kernel optimized for the
processor in the laptop, build in support for the hardware in that
laptop, and for the file systems always used. You would only enable
modules for the hardware you expect to be using. (No support for PCI
or ISA SCSI controllers, or multi-port serial cards. But maybe
support for PCMCIA and/or cardbus SCSI cards.)
 But while a custom kernel may make sense for a specific machine, it
does not make sense for a distribution's kernel. So most things are
build as modules, and you load the modules for your specific needs.

Mikkel
-- 

  Do not meddle in the affairs of dragons,
for thou art crunchy and taste good with Ketchup!

Attachment: signature.asc
Description: OpenPGP digital signature


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