The subset of the domain of a mapping that maps to .

The kernel is the software that manages program access to machine resources.

In UNIX/Linux, the kernel provides process management, memory management, input/output management and file management.

  • The Process Management portion of the kernel controls the scheduling, creation, termination, and accounting of all processes, including making/terminating child processes.

  • The Memory Management portion of the kernel provides the control, accounting and management of real and virtual memory through paging and segmentation.

  • The Input/Output Management subpart of the kernel is the interface between the hardware and software. The management occurs between the user address space and the kernel address space. It also manages the data between the kernel address space and the hardware devices.

  • The File Management portion of the kernel controls the structure and storage of user and system data in long-term, non-volatile medium.

(Group Theory)

Given a homomorphism H between two groups G1 and G2, the homomorphism's "kernel" (symbolized Ker H) is the set of elements of G1 that give rise to the identity element of G2.

If we call the identity element of G2 "i2", we can say

g e Ker H -> H(g) = i2

Ker H necessarily contains the identity element i1 of G1.

Since H is a homomorphism, for all p, q e G1,

G2(H(p), H(q)) = H (G1(p, q)).

Let a = H (i1).  Now, for any g e G1,

G2(H(i1), H(g)) = H (G1(i1, g))

But this means that

G2(a, H(g)) = H (g)

for all g e G1,  Although Im H is not necessarily G2, G2 is still a group. Therefore, a = i2, meaning i1 e Ker H, which was to be proven.

In linear math, the kernel of a linear transformation in T(x)=Ax (where x is a vector, and A is a coefficient matrix) is the set of all vectors x such that Ax=0 (the zero vector that is.)

In operating systems, the most important piece of code/software is the kernel.


The kernel controls all functions of the system: manage memory, connect software to the hardware, dictate what processes get CPU time and when, etc.

There are two types of kernel design: monolithic kernels and microkernels. Monolithic kernel "architecture" is where all functions are grouped together in a single program. Examples of this type of kernel design include Microsoft Windows (not NT-derived like Win2k or XP), Linux, Unix, and MacOS.

Microkernel architecture is more complex. Specific functions of the kernel (memory management, etc.) are separated into individual processes running on their own. They all communicate to each other using messages and semaphores. The advantages to this design are that a kernel could be configured to fit a specific function and thus use resources more efficently than a monolithic kernel; individual kernels can be rebooted without having to reboot the entire system. Examples of microkernel design include NeXTStep, Microsoft Windows NT/2k/XP, Linux's Networking System (see below), Mac OSX (based on NeXTStep), Mach (the microkernel behind NeXTStep and to a degree OSX), GNU Hurd, and BeOS.


Whether one architecture is better has not been settled.

The reason Linux's Networking System is under microkernel is because the design of the system is very modular and is largely based on microkernel theory, despite being only part of Linux and not necessarily the kernel itself.

Ker"nel (?), n. [OE. kernel, kirnel, curnel, AS.cyrnel, fr. corn grain. See Corn, and cf. Kern to harden.]

1.

The essential part of a seed; all that is within the seed walls; the edible substance contained in the shell of a nut; hence, anything included in a shell, husk, or integument; as, the kernel of a nut. See Illust. of Endocarp.

' A were as good crack a fusty nut with no kernel Shak.

2.

A single seed or grain; as, a kernel of corn.

3.

A small mass around which other matter is concreted; a nucleus; a concretion or hard lump in the flesh.

4.

The central, substantial or essential part of anything; the gist; the core; as, the kernel of an argument.

 

© Webster 1913.


Ker"nel, v. i. [imp. & p. p. Kerneled (?) ∨ Kernelled; p. pr. & vb. n. KernelingKernelling.]

To harden or ripen into kernels; to produce kernels.

 

© Webster 1913.

Log in or register to write something here or to contact authors.