FACTOID # 50: Libya is the only country with a single-coloured flag.
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

FACTS & STATISTICS    Simple view

  1. Select countries to view: (hold down Control key and click to select several)

     

     

    Compare:

     

     

  1. Select fact or statistic: (* = graphable)

     

     

     

  2. (OPTIONAL) Compare to statistic: (both need to be graphable)

     

     

     

  3. View result as:

     

       
(OR) SEARCH ALL encyclopedia, stats & forums:   

Encyclopedia > Loadable kernel module

In computing, loadable kernel modules, or LKM, are object files that contain code to extend the running kernel, or so-called base kernel, of an operating system. Most current Unix-like systems, and Microsoft Windows, support loadable kernel modules, although they might use a different name for them, such as "kernel extension" ("kext") in Mac OS X. The Linux kernel generally makes far greater and more versatile use of LKM's than other systems[citation needed]. LKM's are typically used to add support for new hardware and/or filesystems, or for adding system calls. When the functionality provided by an LKM is no longer required, it can be unloaded in order to free memory. Image File history File links Broom_icon. ... RAM (Random Access Memory) Look up computing in Wiktionary, the free dictionary. ... In computer science, object file or object code is an intermediate representation of code generated by a compiler after it processes a source code file. ... Kernel can mean: seed kernel (computer science) kernel (mathematics) See also Kernel (serbias leading dnb producers & djs - Phase & Toxic, also known as Codex ) Colonel (a homophone) This is a disambiguation page: a list of articles associated with the same title. ... // An operating system (OS) is the software that manages the sharing of the resources of a computer. ... Diagram of the relationships between several Unix-like systems A Unix-like operating system is one that behaves in a manner similar to a Unix system, while not necessarily conforming to or being certified to any version of the Single UNIX Specification. ... Windows redirects here. ... Mac OS X (IPA: ) is a line of graphical operating systems developed, marketed, and sold by Apple Inc. ... The Linux kernel is a Unix-like operating system kernel. ... For other uses, see Hardware (disambiguation). ... See Filing system for this term as it is used in libraries and offices In computing, a file system is a method for storing and organizing computer files and the data they contain to make it easy to find and access them. ... In computing, a system call is the mechanism used by an application program to request service from the operating system. ... This article does not cite any references or sources. ...

Contents

Description

Without loadable kernel modules, an operating system would have to have all possible anticipated functionality already compiled directly into the base kernel. Much of that functionality would reside in memory without being used, wasting memory, and would require that users rebuild and reboot the base kernel every time new functionality is desired. Most OSes supporting loadable kernel modules will include modules to support most desired functionality. ReBoot was a CGI animated series that was produced by Canadian production company, Mainframe Entertainment, and created by Gavin Blair, Ian Pearson, Phil Mitchell and John Grace, with the visuals designed by Brendan McCarthy after an initial attempt by Ian Gibson. ...


License issues

Linux

In the opinion of Linux maintainers, LKM are derived works of the kernel. The Linux maintainers tolerate the distribution of proprietary modules but allow symbols to be marked as only available to GPL modules. This article needs cleanup. ... It has been suggested that closed source be merged into this article or section. ... The GNU logo The GNU General Public License (GNU GPL or simply GPL) is a widely-used free software license, originally written by Richard Stallman for the GNU project. ...


Tainting

Loading a proprietary LKM will taint the running kernel—meaning that any problems or bugs experienced will be less likely to be investigated by the maintainers. This is because, in that LKM's (effectively thus do) become part of the running kernel, they (therefore, and often necessarily) have the ability to corrupt kernel data structures—and/or, to introduce some other bug that cannot be investigated due to the proprietary nature of the module.


Linuxant controversy

In 2001, Linuxant—a consulting company that releases proprietary device drivers as loadable kernel modules—attempted to bypass GPLONLY symbol restrictions by abusing a NULL terminator in their MODULE_LICENSE. Year 2001 (MMI) was a common year starting on Monday (link displays the 2001 Gregorian calendar). ... The null character (also null terminator) is a character with the value zero, present in the ASCII and Unicode character sets, and available in nearly all mainstream programming languages. ...

 MODULE_LICENSE("GPL0for files in the "GPL" directory; for others, only LICENSE file applies"); 

The string comparison code used by the kernel at the time to determine whether the module was GPLed stopped when it reached a null character (0), so it would be fooled into thinking that the module was declaring its licence to be just "GPL". The GPL directory referred to in the rest of the licence string was empty.

  • Further discussion here

Binary compatibility

Because of the intimate relationship between loadable kernel modules and the base kernel, relatively minor differences in internal structures or methods can result in problems.


On Linux, in an attempt to mitigate this problem, symbol versioning is used and placed within the .modinfo section of ELF modules. This versioning information can be compared to the running kernel; if incompatible, the module will not be loaded. In computing, the Executable and Linking Format (ELF, formerly called Extensible Linking Format) is a common standard file format for executables, object code, shared libraries, and core dumps. ...


Fragmentation penalty

One minor criticism of preferring a modular kernel over a static kernel is the so-called Fragmentation Penalty. In computer storage, there are three related uses of the term fragmentation: external fragmentation, internal fragmentation, and data fragmentation, all related to storage. ...


The base kernel is always unpacked into real contiguous memory by its setup routines; so, the base kernel code is never fragmented. In psychology, memory is an organisms ability to store, retain, and subsequently retrieve information. ...


Once the system is in a state where modules may be inserted—for example, once the filesystems have been mounted that contain the modules—it is probable that any new kernel code insertion will cause the kernel to become fragmented, thereby introducing a minor performance penalty. See Filing system for this term as it is used in libraries and offices In computing, a file system is a method for storing and organizing computer files and the data they contain to make it easy to find and access them. ... Mounting, in computer science, is the process of making a file system ready for use by the operating system, typically by reading certain index data structures from storage into memory ahead of time. ...


Security

While loadable kernel modules are a convenient method of modifying the running kernel, this can be abused by an attacker on a compromised system to prevent detection of his processes or files, allowing him to maintain control over the system. In computing, a process is an instance of a computer program that is being executed. ... File has several meanings: Computer file File (tool) file (Unix), a program used to determine file types. ...


Many rootkits make use of LKM's in this way. A rootkit is a set of software tools frequently used by a third-party (usually an intruder) after gaining access to a computer system. ...



 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments
Please enter the 5-letter protection code

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms.