Click to See Complete Forum and Search --> : The Kernel, what is it?


skeen
09-24-2003, 02:03 AM
Hello;

From what I have read from a variety of websites, the Kernel is what makes Linux, Linux... instead of Unix. This is the most information I have gathered!

Can someone give me a proper explanation about what the Kernel actually is? So far its just a name to me.

Thanks alot.
~Skeen.

freakmn
09-24-2003, 02:46 AM
If a Linux distro were a car, the Kernel would be the engine.

skeen
09-24-2003, 04:03 AM
Originally posted by freakmn
If a Linux distro were a car, the Kernel would be the engine.

LOL, yeh... thats all I hear, little sayings like that! Are there any more detailed descriptions that I would be able to read?

El_Cu_Guy
09-24-2003, 04:05 AM
Of course Linux makes linux, uh, linux. Linux is Linux.

Linux is not an OS but it has become the common name from the entire OS. The kernel alone doesn't make Linux (as in the OS or GNU/Linux) not Unix. The system or system programs (ie GNU) is also not Unix but Unix-like.

So you wanna know what the kernel is. OK. Here's a text book definition:

KERNEL
The fundamental part of a program, typically an operating system, that resides in memory at all times and provides the basic services. It is the part of the operating system that is closest to the machine and may activate the hardware directly or interface to another software layer that drives the hardware.

Here's a better explanation:

A kernel is merely a computer program that acts as a mediator through which the user interacts with the computer and its components and peripheral devices (processor, processes, files, disks, terminals, printers, plotters, etc.). A UNIX operating system consists of a kernel and some system programs. There are also some application programs for doing work. The kernel is the heart of the operating system. It keeps track of files on the disk, starts programs and runs them concurrently, assigns memory and other resources to various processes, receives packets from and sends packets to the network, and so on. The kernel does very little by itself, but it provides tools with which all services can be built.

Everything that the kernel supports does not have to be in memory all the time. Now days most of the kernels are modular. It means that some system functions are loaded into memory when needed. A kernel module is simply an object file containing routines and/or data to load into a running kernel.

mrBen
09-24-2003, 04:15 AM
What truly makes Linux not Unix, IIRC, is that:

a) It is only 99% POSIX compliant, rather than 100%

b) Nobody ever bothered to pay the huge amount of money required to be 'officially' Unix (ie AIX and HP-UX are officially Unix, because IBM and HP paid to have them certified)

El_Cu_Guy
09-24-2003, 04:29 AM
1. POSIX compliance != Unix. Hell, Windows was POISX compliant at one time (which allowed them to gain governement contracts (when it was "Unix only") due to a "poor choice" of definition similar to yours).

2. Now you're getting into a very grey area. Here's what the Open Group has to say:

Developed by Linus Torvalds, Linux is a product that mimics the form and function of a UNIX system, but is not derived from licensed source code. Rather, it was developed independently; by a group of developers in an informal alliance on the net. A major benefit is that the source code is freely available (under the GNU copyleft), enabling the technically astute to alter and amend the system; it also means that there are many, freely available, utilities and specialist drivers available on the net.

Recent versions of Glibc include much functionality from the Single UNIX Specification, Version 2 (for UNIX 98) and later.

Saying whether it's not Unix depends on your definition. Family of OSes..... or based on licensed code....

Certification means that its UNIX and follows all specifications required for certification. Note the use of Unix and UNIX.