Gadgetory


All Cool Mind-blowing Gadgets You Love in One Place

Android Power User: What is the Kernel?

2012-09-04
what is the kernel what does it do why is it called that does it have something to do with the military rank no it has more to do with fruits and nuts don't worry we'll clear all that up in this week's episode of the Android power user in the real world that kernel is the softer usually edible part of a seed or a nut that's contained within a hard outer shell in computing the kernel isn't that much different though I wouldn't recommend you try and eat it think of it like popcorn I love popcorn you've got a popcorn kernel and looking on that if you try and eat it raw you're probably going to chip a tooth not something I'd recommend but with the right circumstances in this case the right amount of oil heated to the right temperature you can release all of the goodness that's inside the kernel and you end up with something delicious they're on a little bit of butter some salt maybe some shredded cheddar cheese mmm wonderful but that's not we're talking about today this hasn't turned into a cooking show we're still talking about Android well and by extension anything really that has a computer chip and an operating system with it so what is it when you talk about kernels and computing let me tell you what wikipedia says and I'll read this just so I don't mess it up the kernel is the main component of most computer operating systems it's a bridge between applications and the actual data processing done at the hardware level okay we got that so it's a middleman how does that have to do with a kernel like the inside of a nut well the way to get it all the hardware is done through the kernel but the kernel because you've got all kinds of stuff that may want to access that hardware has to be protected so it's got a hard outer shell on it metaphorically speaking that only allow specific stuff through stuff that has the right level of permissions as it were to be able to penetrate that outer shell get at the soft gooey wonderfulness that's on the inside and do all kinds of cool stuff well if you've got the right api's if you've got the right programming hooks you can do pretty much what you want but you can't do it in an unsafe way now what does all this through a process called abstraction and in fact the kernel can be considered an abstraction layer in fact the lowest level of abstraction layers what does all that mean well it's complicated computer lingo that essentially means if you want to talk to the camera you talk to the camera but you're not really talking to the camera you're talking to an abstraction layer of the kernel that pretends like it's a camera to let you talk to the camera so any of that makes sense essentially you use the same type of commands that you would to talk to the camera but by putting the kernel in place you can have any number of different camera hardware on the far side and if the kernel handles all of the camera activities and has a unified API on the application side as you my hands your application kernel camera well if it's got the same API is here in the middle your app manufacturers your app developers just right once to talk to this fictitious camera that doesn't really exist the kernel takes care of figuring out how to talk to the actual hardware and it does it all for you abstraction you gotta love it it does a little bit more than just that say if you want to run any old application plants vs. zombies let's say well the kernel is going to set up its nice little own address space in RAM in memory so it can load up and just run now I'm oversimplifying things here a little bit but stick with me plants vs. zombies can now run inside that address space and nowhere else if it tries to run someplace else it's going to throw an exception that means an error but by doing that it protects the entire sense them from programs doing things that they shouldn't do things that they don't have permission to do that we don't want them to do like viruses like worms like trojans like all kinds of malicious software but that's where the chink in the armor is you see we've already let this stuff into memory to execute so you don't have to break into the Colonel's heart outer shell all you got to do is hijack one of these apps piggy back to your code into the code that's running in the the memory address space that was already allocated by the kernel and now you can execute your malicious code right alongside with plants vs. zombies not very cool but that's the way a lot of the stuff gets through so all of this sounds really really complicated right well it is and that's why you've got really really smart people that develop kernels that help push everything forward without opening holes and gaps that could lead to problems that let regular developers write stuff that runs anywhere without a problem but that in a nutshell pun intended is what the kernel is and what it does why we've got it why it's so important when we're talking about custom roms when we're talking about overclocking and underclocking and doing all kinds of stuff with our hardware then it may not have been originally intended to do that but that's not gonna stop us why because we're Android power users but now it's your turn do you have questions comments want to add to the discussion want to clarify any slight technical inaccuracies that came about because of the simplification of the topic please let us know in the comments over at pocketnow.com if you're watching this video on youtube we'll have that link right down there just go ahead and click on that over to pocket now comment down at the bottom so that we can all learn and develop our minds and our understandings of these really cool tools that we use on a daily basis head on over there if you liked this video if you liked the series to give it a big thumbs up we'd really appreciate that it helps share your understanding and well this video to other people who may not know all this stuff already so please go ahead and do that big thumbs up for pocket now the Android power user I'm Joe Levi thanks for watching
We are a participant in the Amazon Services LLC Associates Program, an affiliate advertising program designed to provide a means for us to earn fees by linking to Amazon.com and affiliated sites.