Originally Posted by atul borgaonkar
what is mean by linux kernel
The Linux Kernel is said to be the "core" of a Linux OS. It is what provides an interface between the system hardware such as Hard Disk and CPU, and the OS and other Applications that users run. In fact, a Linux Distribution would do just with Kernel because there are lots of programs or libraries and modules and tools available under GNU. That way, you can create your own Linux OS.
Whatever goes inside a Linux OS or any interaction from the side of a user or a program is handled by the Kernel.
Let's say, you have opened a user account for your friend on your Linux System. You would not like to get your storage device / hard disk filled with his files alone or you would not like to see that his activities consume most of the CPU resource / time. But you do not have to worry about such things at all. The Linux Kernel will take care of any such actions performed on a system.
When you execute a program or command it enters a User Space. When your program needs access to your Hard Disk, the Kernel let it do so by taking it off the User Space and bringing it into its own space called Kernel Space and when the operation is finishes, the Kernel bring your program back into the User Space. That wat, the Kernel is monitoring every activity being performed on your system and an ordinary user is able to read files and write to them.
for interesting downloadable books / PDFs on Kernel and Linux.
Remeber that Linus Torvald maintains Linux Kernel and he is the one who created it.