What is a kernel?

What is a kernel?  If you spend any time reading Android forums, blogs, how-to posts or online discussion you'll soon hear people talking about the kernel.  A kernel isn't something unique to Android -- iOS and MacOS have one, Windows has one, BlackBerry's QNX has one, in fact all high level operating systems have one.  The one we're interested in is Linux, as it's the one Android uses. Let's try to break down what it is and what it does.

Android devices use the Linux kernel, bet every phone uses their own version of it. Linux kernel maintainers keep everything tidy and available, contributors (like Google) add or alter things to better meet their needs, and the people making the hardware contribute as well, because they need to develop hardware drivers for the parts they're using for the kernel version they're using.  This is why it takes a while for independent Android developers and hackers to port new versions to older devices and get everything working.  Drivers written to work with one version of the kernel for a phone might not work with a different version of software on the same phone. And that's important, because one of the kernel's main functions is to control the hardware.  It's a whole lot of source code, with more options while building it than you can imagine, but in the end it's just the intermediary between the hardware and the software.

When software needs the hardware to do anything, it sends a request to the kernel.  And when we say anything, we mean anything.  From the brightness of the screen, to the volume level, to initiating a call through the radio, even what's drawn on the display is ultimately controlled by the kernel.  For example -- when you tap the search button on your phone, you tell the software to open the search application.  What happens is that you touched a certain point on the digitizer, which tells the software that you've touched the screen at those coordinates.  The software knows that when that particular spot is touched, the search dialog is supposed to open.  The kernel is what tells the digitizer to look (or listen, events are "listened" for) for touches, helps figure out where you touched, and tells the system you touched it.  In turn, when the system receives a touch event at a specific point from the kernel (through the driver) it knows what to draw on your screen.  Both the hardware and the software communicate both ways with the kernel, and that's how your phone knows when to do something.  Input from one side is sent as output to the other, whether it's you playing Angry Birds, or connecting to your car's Bluetooth.  

It sounds complicated, and it is.  But it's also pretty standard computer logic — there's an action of some sort generated for every event, and depending on that action things happen to the running software. Without the kernel to accept and send information, developers would have to write code for every single event for every single piece of hardware in your device. With the kernel, all they have to do is communicate with it through the Android system API's, and hardware developers only have to make the device hardware communicate with the kernel. The good thing is that you don't need to know exactly how or why the kernel does what it does, just understanding that it's the go-between from software to hardware gives you a pretty good grasp of what's happening under the glass.  

Sort of gives a whole new outlook towards those fellows who stay up all night to work on kernels for your phone, doesn't it?

Jerry Hildenbrand
Senior Editor — Google Ecosystem

Jerry is an amateur woodworker and struggling shade tree mechanic. There's nothing he can't take apart, but many things he can't reassemble. You'll find him writing and speaking his loud opinion on Android Central and occasionally on Threads.

Latest in Apps & Software
Samsung Galaxy S25 Ultra Home Screen - 16x9
Heads up — Samsung's detailed One UI 7 rollout schedule for Galaxy appears
The old Android logo at Google's Pier 57 building in New York City
Report claims Google may move to 'privately' develop Android's future
Comparing the display size on the Samsung Galaxy S25 with the Samsung Galaxy S25 Plus
What you need to know about One UI 7: Software is hard
The Google Maps logo at the Google Maps Street View Garage
Google Maps might predict more than just the traffic for you soon
Top Charts in the Play Store on the Galaxy S25 Ultra
Google Play Store will get more tools to protect users from scammy apps
Google Gemini Image Query on Google Pixel 9 Pro XL
Gemini could soon allow you to upload multiple images in a single prompt
Latest in How-to
Testing Google Pixel 9's camera
Your Pixel 9 lets you connect to remote cameras and film content from different angles. Here's how
Notification Cooldown on Google Pixel
How to enable Notification Cooldown on a Google Pixel
A Google Pixel 9 Pro XL in the bootloader recovery menu.
The March Pixel update has been causing lots of headaches, but going back isn't easy
The Modes menu on a Pixel 9 showing Do Not Disturb turned on
Modes have replaced Do Not Disturb on your Pixel. Here's how to use them
Google Messages blue logo
How to automatically delete OTPs in Google Messages
Weather and Calendar in Morning Brief on Galaxy S25 Ultra
How to set up and use Now Brief on the Galaxy S25