The Linux Kernel: An Explanation In Layman’s Terms

There are so many Linux distributions out in the wild, but there is only one de facto thing that they have in common: the Linux kernel. But while it’s often talked about, a lot of people don’t really know exactly what it does.

Let’s take a look at what the Linux kernel really does and why it’s needed, with as few geeky terms as possible.

What’s a Kernel?

Each operating system uses a kernel. Without a kernel, you can’t have an operating system that actually works. Windows, Mac OS X, and Linux all have kernels, and they’re all different. It’s the kernel that also does the grunt work of the operating system. Besides the kernel, there are a lot of applications that are bundled with the kernel to make the entire package something useful — more on that a bit later.

The kernel’s job is to talk to the hardware and software, and to manage the system’s resources as best as possible. It talks to the hardware via the drivers that are included in the kernel (or additionally installed later on in the form of a kernel module). This way, when an application wants to do something (say change the volume setting of the speakers), it can just submit that request to the kernel, and the kernel can use the driver it has for the speakers to actually change the volume.

The kernel is highly involved in resource management. It has to make sure that there is enough memory available for an application to run, as well as to place an application in the right location in memory. It tries to optimize the usage of the processor so that it can complete tasks as quickly as possible. It also aims to avoid deadlocks, which are problems that completely halt the system when one application needs a resource that another application is using. It’s a fairly complicated circus act to coordinate all of those things, but it needs to be done and that’s what the kernel is for.

linux kernel map   The Linux Kernel: An Explanation In Laymans Terms

What Else Makes Up An Operating System?

Like I mentioned earlier, operating systems include their own kernel along with a bunch of other applications. With just a kernel, it’s nearly impossible to do anything with the operating system. You also need some other applications to be bundled with it, such as a shell. The shell is responsible for displaying the prompt that you see in terminals or command lines. Shells are a much easier way to launch applications, navigate through folders, and much more. All of those tasks that you can do in a shell are supported via other applications that must be bundled as well. For example, the tar application is needed if you’re working with tarballs in a shell.

ubuntu trusty desktop   The Linux Kernel: An Explanation In Laymans Terms
Operating systems, particularly Linux distributions, then continue to bundle more applications, such as a desktop environment, a web browser, an office suite, and other applications that you often interact with directly. So as you can see, the kernel is just a very small portion of an operating system, but it’s arguably the most crucial one.

Linux History

linux kernel torvalds   The Linux Kernel: An Explanation In Laymans Terms
How long has the Linux kernel been around? It was first created by a Finnish student named Linus Torvalds in 1991. He sent out an email to a mailing list saying, “Hello everybody out there using minix — I’m doing a (free) operating system (just a hobby, won’t be big and professional like gnu) for 386 (486) AT clones.” Over the course of over two decades, the hobby operating system has turned into a major piece of software that now powers millions of devices all over the world.

During this time, Linus decided to license the kernel using the GPL license, meaning that it was open source. People were free to look at the code, modify it to their needs, and then distribute it to others (under the same license).

You Now Know About The Linux Kernel

So there you go! Now when anyone asks you what the Linux kernel is and does, you’ll be able to tell them all about it! If you have any other questions about the Linux kernel, ask away in the comments and I’ll try my best to answer it.

Don’t forget that it’s important to update your Linux kernel regularly, and you should consider compiling your own as well!

Check out more about:

6 Comments - Write a Comment

0 votes
Reply

flyup

I use Linux Mint- what kernel am I using? Also, is Linus Torvalds making any money off Linux? Thanks!

0 votes

Pawel

just type in the terminal
uname -a
then you can read all information about your kernel

0 votes
Reply

MB

If you are using the latest Linux Mint, which is Qania or Version 17 you are using the Linux Kernel 3.13.
If some of your Hardware, for example a soundcard or a SD-Cardreader does not work, it might be supported with a newer kernel.
You can easily upgrade via the updatemanager.
To see all system information you can use sysinfo, what can be installed via the softwarecenter.
If upgrading your kernel caused any problems, you can choose to boot from the old one by pressing shift while bootup. Hope this helps.
As far as I know, does Linus not make money out of Linux. He is working for some Softwarecompany and maby gets a little bit from the donations made for Linux.

0 votes
Reply

Kjell

Hi !
The question about if Linus makes any money of Linux is interesting, He actually does because he is emplyed by the linuxfoundation to work on the Linux kernel and other stuff, but every little bit of that work we all are given for free. So yes he is paid to work on Linux but we get the lot for free.
I think the decision he made when he decided on using the GPL licens was brilliant. I have been using Linux as my main OS for about 15 years now, right now i am using LinuxMint distro.

Cheers Kjell

0 votes
Reply

sheiBer

Back in 1999 he had earned/valuation of $20 million dollars. Today he gets millions from the foundation.

0 votes
Reply

Tremson

I appreciate any attempt to make Linux and computing more accessible to people, but that’s a pretty misleading explanation of what a “shell” is, especially given the intended audience.

http://en.wikipedia.org/wiki/Shell_(computing)

Also, you may want to be wary of advocating direct kernel updates to beginners. It could cause some problems with the rest of their programs retrieved via the Ubuntu Software Center, for example. That said, getting your feet wet is not something you should fear, but embrace.

Your comment