The benefits of a custom kernel?

diesteldorf

Well-known member
Dec 1, 2010
974
17
0
I know a kernal is typically unique to the device. I was told it was comparable to a PC's Bios or brain and is the code that runs before the operating system (Rom) boots up.

The ability to flash a custom kernal would essentially let anyone replace the default bios with one of their choosing, allowing them to tell the phone what voltage to use, underclock or overclock etc. However, that is where my understanding stops.

I currently have a DX and that is where my current frame of reference is. After the original Droid was released, Motorola has always encrypted and locked their bootloaders. However, even with these limitations, developers were able to create bootstrap/clockwork recovery and load custom Roms.

They were even able to tweak the voltage and CPU. However, they still had to work with Moto's kernel.
It even took awhile but even Cyanogen and Miui were ported over eventually. So, why are custom kernels a big deal?

I am asking because I know the ability to load a custom kernel is a big deal, but I don't understand why and want to know from a development perspective, what things that may be possible with the Galaxy Nexus that were never even possible on the DX.

There has to be a reason why OG Droid owners have kept the sucker until the wheels fell off :)

Are the Muiu and Cyanogen ports for the DX/DX2 not truly genuine but just meant to look like the real deal? I'm not trying to minimize the effort that went into them, but the fact that they still had to use Moto's kernel must've limited what they could do.
 
Last edited:
  • Like
Reactions: pwninobrlan
Short answer: a custom kernel isn't horribly important to the vast majority of people.

There's something called insmod which is a Linux command that can add/remove components of the kernel without affecting the kernel itself, this helps a lot with modern (Froyo+) builds of Android which support this process. CPU clocking and voltage changes have been around since the early root days of the DX, nothing kernel dependent there.

However, you still need to use a hack to get CM7 and MIUI (based on CM7 code) to boot. On the X this is the "2nd init" hack which may end up getting closed with a future update. By being able to load a proprietary kernel you don't need this hack and CM7 would have been on the Moto devices much sooner.
 
However, you still need to use a hack to get CM7 and MIUI (based on CM7 code) to boot. On the X this is the "2nd init" hack which may end up getting closed with a future update. By being able to load a proprietary kernel you don't need this hack and CM7 would have been on the Moto devices much sooner.

So, I am assuming loading a proprietary kernel is mainly useful when it comes to porting Roms from other devices.

I like to tinker and had fun with the DX, but I've never owned a Nexus so I'm still curious about the possibilities.

On the surface, a Nexus could seem boring since developers spend a lot of time getting other devices to run AOSP and bloat free.

A Nexus is already running pure Android and is bloat free, what else is left to do?
 
A Nexus is already running pure Android and is bloat free, what else is left to do?

Make it better :) CM7 has a lot of neat features that aren't stock Android, think of it as CM-Blur. And MIUI is CM-Sense. Granted, a lot of these features may be incorporated into ICS (like the non-root screenshot ability), but I'm sure there's plenty more to do.
 
Custom kernel's provide lower level control over the hardware.

So in the case of the Nexus we have a few great features enabled by custom kernel's
1) BLN, Backlight notification, there isn't an LED notification on the Nexus S, no problem because some smart dev(s) came up with a way to make the capacitive buttons blink when you get an email or other notification. They even wrote a great app that provides awesome control over when/how a BLN happens.
2) Voodoo, tweaks audio and screen defaults. You can change the gain and max volumes of your speaker or headphones. You can also tweak up color profiles and make the screen really pop with color.
3) Additional power tweaks
4) A recent one that is still being worked on I think is Deep Idle which makes use of a power saving profile that exists in Android but usually isn't enabled by the manufacture's kernel. I've seen some awesome battery life savings with this, especially when the phone isn't being used.
5) BFS/CFS - I never remember the differences but BFS boasts snappier use, with longer boot times and CFS is a little less snappy but boots really fast.

There are lots of others, you can just look at the change log of any kernel to see them.

I asked a similar question when I had my DX and it wasn't until i got my Nexus S that I started to see that having that unlocked bootloader really allowed the devs to focus on improving their ROMs and kernels because they weren't contending with a locked bootloader.
 
Last edited:
so essentially custom kernels are extremely overhyped and more or less just something for people that wanna do something to keep themselves busy.

or am I missing something..

Ideally the phone nor the user should have to go through the process of installing a custom kernel simply for something like better battery life.. the one thing I will say about my Samsung Fascinate is it provided me with plenty good battery life just as is, if it didnt I probably wouldnt of even came back for more android phones because I would consider them broken.

Some new phones are coming out with built in features that allow you to underclock the phone and set up rules and schedules for certain things like that.. I guess its not as fun as dealing with bricking your phone and reading page after page of a forums mod section like your studying for a midterm trying to figure out how to fix your initial problems, and the slew of problems you created while attempting to mess with your phone.
 
so essentially custom kernels are extremely overhyped and more or less just something for people that wanna do something to keep themselves busy.

or am I missing something..

Ideally the phone nor the user should have to go through the process of installing a custom kernel simply for something like better battery life.. the one thing I will say about my Samsung Fascinate is it provided me with plenty good battery life just as is, if it didnt I probably wouldnt of even came back for more android phones because I would consider them broken.

Some new phones are coming out with built in features that allow you to underclock the phone and set up rules and schedules for certain things like that.. I guess its not as fun as dealing with bricking your phone and reading page after page of a forums mod section like your studying for a midterm trying to figure out how to fix your initial problems, and the slew of problems you created while attempting to mess with your phone.

I don't think you are missing anything. They aren't particularly exciting and by no measure would I call them necessary. The phone should work well enough out of the box for most users and I think most phones do.

The OP just wanted to know the benefits of a custom kernel. I wasn't trying to suggest they were necessary.
 
2) Voodoo, tweaks audio and screen defaults. You can change the gain and max volumes of your speaker or headphones. You can also tweak up color profiles and make the screen really pop with color.
bootloader.

This sounds interesting, but I'd think you'd also have to be really careful because couldn't increasing the volume level of the speakers make it awfully easy to blow them? Or, changing the color profile make it prone to burning images into the screen? This may not be a realistic concern, but having total control of the hardware, doesn't physically change it and all hardware has limitations.

I asked a similar question when I had my DX and it wasn't until i got my Nexus S that I started to see that having that unlocked bootloader really allowed the devs to focus on improving their ROMs and kernels because they weren't contending with a locked bootloader.

I don't know your personal situation, or if you switched carriers simply to get the Nexus, but there has to be a reason why the thought of having a true Nexus on Verizon is so appealing to many. For me, switching carriers to get a Nexus was never an option. I like the coverage and quality of Verizon too much and am grandfathered into unlimited data, so if I decide to keep a cell phone, there is a 99% chance I'll be with Big Red.

There also has to be a reason why Verizon has never (with the exception of the OG Droid) until now, assuming the GN is a true Nexus in every sense of the word, allowed a true vanilla Android with unlocked bootloader on their network, and why they instructed Motorola to lock down the Razr, even when Moto has said they will have an unlock solution for those that allow it.

I'm sure even Big Red knows that Razr/Bionic owners will find a way to root and remove bloatware, even with a locked bootloader so I can't imagine they told Motorola to lock it down simply to get more subscriptions to VZ Navigator or City ID.

When the OG Droid was released, I'm sure there were over 1 million that were active on VZW and there certainly wasn't total anarchy and chaos, but from a carrier perspective there must be other things VZW is concerned about.

They may be concerned that an unlocked bootloader will increase returns and CLNR exchanges because idiots will brick their phone and expect Big Red to exchange it. However, there were idiots that did the same thing with the DX and future idiots that will do the same with the Bionic and Razr, even with the locked bootloaders.

I'm not normally so harsh, but those people always irked me. I bricked my phone too but it was easy to fix and restore, simply by reading a few threads and asking for help.

My other theory is that Big Red could be concerned that Nexus owners will upgrade less frequently because the unlocked bootloader will give them more freedom after official support for the phone has ended. That could mean less money and fewer long term contracts.

Google has already said that the HTC Nexus 1 will not get official ICS but is it safe to assume that having an unlocked bootloader will allow some developers to quickly give it to the N1 anyway? What about the OG Droid?

Developer support for the DX has certainly slowed down and I'm assuming having a locked bootloader and antiquated hardware have something to do with that. On the other hand, is it safe to assume that if I get a Nexus that I'll have official and even unofficial support, as the phone ages, well into the future, after developers for the Razr and Bionic have moved on?

When I got my DX, I ordered it sight unseen because I was in the market for a smartphone, knew I wanted to stay with VZW, and wanted the biggest screen I could get. The DX was groundbreaking in that respect and I've been very happy with it.

Now, I'll definitely be making a trip to the store to do some field research. A lot of what makes the Nexus appealing for me is it's perceived openness and future potential for the development community to embrace it and make it better, but you can't feel the "potential" when you place it in your hand or play around with it for an hour at a VZW store. That's why I am seeking out information now.

I'm excited about ICS, but, truth be told, I held off upgrading my DX after reading about the issues people were having with GB. Now I suppose I could take the plunge since those issues have been fixed, but since I'll probably be upgrading soon, I've decided to wait, so, feel free to laugh, I'm still running a Froyo based ROM.

Even if I choose a non-Nexus device as my next phone, I'll still be getting a new experience with Gingerbread :)

If I buy a Nexus, I'm buying it for the software and future potential as much as I am for the hardware. If Verizon is scared about allowing a Nexus on their network, I'd like to know why since any control they will be losing will be control I'll be gaining, and paying for, with money, and perhaps by forgoing other phones that may or may not have better hardware or build quality.
 
Last edited:
jdbower,

Not to single you out, but looking at your profile of device:

Motorola Droid X (Verizon)
Motorola Droid 2 Global (Verizon)
Motorola 9505A (Iridium)

I would assume that you have been happy with Moto devices as well but know that a locked bootloader is part of the Moto package. Since you seem to understand the potential of an unlocked bootloader, are you also on the fence with your next device?
 
This sounds interesting, but I'd think you'd also have to be really careful because couldn't increasing the volume level of the speakers make it awfully easy to blow them? Or, changing the color profile make it prone to burning images into the screen? This may not be a realistic concern, but having total control of the hardware, doesn't physically change it and all hardware has limitations.

There are some safe guards in there to prevent that but yes, you are right, it's a concern and one that if someone isn't comfortable with the risk they should shy away from. It's not necessary for good sound or nice colors, but for those that want to push things a bit, it's an option.

I don't know your personal situation, or if you switched carriers simply to get the Nexus, but there has to be a reason why the thought of having a true Nexus on Verizon is so appealing to many. For me, switching carriers to get a Nexus was never an option. I like the coverage and quality of Verizon too much and am grandfathered into unlimited data, so if I decide to keep a cell phone, there is a 99% chance I'll be with Big Red.

At the time the Nexus S came out on sprint I was at a point where I was leaving a job where my employer provided me with a phone. I needed to purchase one on my own and decided on the Nexus S. I can't say that was a decesion made with out some regrets. Sprint's service in my area has proven to be much worse than VZW but I would say the Nexus S is enough to keep me there.
That being said, I won that GN from AC so I'm switching back to VZW when they send me that device. I would be going back anyway, just happened to luck out and win a phone.

I'm not normally so harsh, but those people always irked me. I bricked my phone too but it was easy to fix and restore, simply by reading a few threads and asking for help.

I agree, if you break it, you fix it. That's fair because you shouldn't have started messing with it unless you knew the risks. I have gone out of my way to help people with the DX who are ready to take it back and play dumb so they can have a working phone again.

Google has already said that the HTC Nexus 1 will not get official ICS but is it safe to assume that having an unlocked bootloader will allow some developers to quickly give it to the N1 anyway? What about the OG Droid?

I think both will have ICS support, unofficially via a custom ROM. The fact that there is already a Nexus 1 SDK port of ICS makes that almost guaranteed I think. That being said, there is a reason it's not coming to those devices officially and it's probably that the hardware isn't up to the job. I had an old Droid Eris laying around that "ran" Gingerbread, but only barely.

Developer support for the DX has certainly slowed down and I'm assuming having a locked bootloader and antiquated hardware have something to do with that. On the other hand, is it safe to assume that if I get a Nexus that I'll have official and even unofficial support, as the phone ages, well into the future, after developers for the Razr and Bionic have moved on?

When I got my DX, I ordered it sight unseen because I was in the market for a smartphone, knew I wanted to stay with VZW, and wanted the biggest screen I could get. The DX was groundbreaking in that respect and I've been very happy with it.

Oh I agree completely, the DX dev community was/is awesome and they did some great things with a phone that really didn't make it easy. Dev's do move on though, they like many of us, get the itch for a new device and switch to it. Many try to support their original roms but eventually they'll need to deprecate them.

I'm excited about ICS, but, truth be told, I held off upgrading my DX after reading about the issues people were having with GB. Now I suppose I could take the plunge since those issues have been fixed, but since I'll probably be upgrading soon, I've decided to wait, so, feel free to laugh, I'm still running a Froyo based ROM.

Even if I choose a non-Nexus device as my next phone, I'll still be getting a new experience with Gingerbread :)

If I buy a Nexus, I'm buying it for the software and future potential as much as I am for the hardware. If Verizon is scared about allowing a Nexus on their network, I'd like to know why since any control they will be losing will be control I'll be gaining, and paying for, with money, and perhaps by forgoing other phones that may or may not have better hardware or build quality.

I'm not worried about the control VZW is losing. Either they are OK with losing that control because they expect to sell a bunch of phones or, more likely, someone is paying them to be OK with it. They happily let the iPhone on their network without any of the branding or crappy applications installed that we typically see on VZW phones. All comes down to money and Google (and Apple) have lots of that.

It's gonna be a great phone and a great OS and I think the fact that it's on VZW's awesome LTE network is just gonna make it better.
 
jdbower,

Not to single you out, but looking at your profile of device:

Motorola Droid X (Verizon)
Motorola Droid 2 Global (Verizon)
Motorola 9505A (Iridium)

I would assume that you have been happy with Moto devices as well but know that a locked bootloader is part of the Moto package. Since you seem to understand the potential of an unlocked bootloader, are you also on the fence with your next device?

Hopefully we don't hijack the thread too much... I'm very happy with my Moto stuff, but not on the fence with the GN. Locked bootloaders don't bother me, but the current Moto lineup doesn't hold much interest to me, the Razr is a nice DX upgrade but for a faster processor and LTE it doesn't seem worth it. What I want the GN for is NFC and it's the only phone I know of on the VZW horizon to have it. NFC and Google Wallet is nice, but NFC has so much more potential than just a credit card replacement.
 
To me a custom kernel means:

  • Better control over battery life
  • Addition of fixes that have come out since release of the binary
  • Addiitonal configuration and features
  • Overclocking
  • Greater performance
 
On a more related note I wonder if unlocking the kernel can enable very bad things on the network. Not stealing tethering, but more like hacking into free phone calls, cloning phones or snooping on calls in progress turning the EVDO network into a giant public, unencrypted WiFi network to blackhats.

Older mobile networks were built based on the assumption that the carrier and phone manufacturer only had control over the devices, they're not built to handle direct access to the radios like you have with today's smartphones. Hopefully LTE was designed with the security in the network instead of security via obscurity on the device, but it is based on GSM...

It's feasible that custom kernels could put VZW in the news like GSM was:
GSM Hacked (Again) – flyingpenguin

Sadly, this also probably can't be fixed without swapping out every handset they've got.
 
I might have missed it, but I've never heard of cdma being hacked.

That's the point, perhaps VZW requesting locked bootloaders is their way to make sure it doesn't happen. Or, more accurately, postpone it as long as possible.
 
That's the point, perhaps VZW requesting locked bootloaders is their way to make sure it doesn't happen. Or, more accurately, postpone it as long as possible.

Kernels are not a pathway to hacking the network.


I don't think it has much to do with any particular cell phone.
 
Kernels are not a pathway to hacking the network.

I disagree, at least from a theory perspective. Vendors likely implement the access to the underlying chipsets as kernel-layer drivers. By cryptographically signing the kernel you're also signing the drivers. Now you've got a layer of abstraction, you need to find a flaw in the drivers that can exploit a flaw in the chipset, a double failure situation.

With an unlocked bootloader you now have access to the drivers, a flaw in the chipset is directly under your control and these are much easier to exploit than a flaw that happens to have been exposed by the driver.

Is this why CDMA hasn't been hacked or is it because CDMA implementations are proprietary so hacking VZW doesn't mean you've hacked Sprint or KT or anyone else? I have absolutely no idea, but it is a possibility. This doesn't mean I condone locked bootloaders, but realistically VZW will own a percentage of your phone until your two year contract is up so there's not much I can say about it other than I'd like a $10/month discount and pay an extra $240 for the phone upfront so I own it outright.

Personally I hope that "5G" networks will be built like the Internet, assume the customer is a hacker trying to break in and build security into the network itself rather than trying to push it out to the device. I just know LTE was proposed in 2004, ratified in 2008, and widely deployed in 2011. That means that any ideas we may have today will probably appear in the 2020 timeframe. Telco standards move slowly.
 
On a more related note I wonder if unlocking the kernel can enable very bad things on the network. Not stealing tethering, but more like hacking into free phone calls, cloning phones or snooping on calls in progress turning the EVDO network into a giant public, unencrypted WiFi network to blackhats.

Older mobile networks were built based on the assumption that the carrier and phone manufacturer only had control over the devices, they're not built to handle direct access to the radios like you have with today's smartphones. Hopefully LTE was designed with the security in the network instead of security via obscurity on the device, but it is based on GSM...

It's feasible that custom kernels could put VZW in the news like GSM was:
GSM Hacked (Again) ? flyingpenguin

Sadly, this also probably can't be fixed without swapping out every handset they've got.

I don't think unlocking a phone makes it any easier to crack CDMA's encryption. As I understand it GSM was hacked because it used 20 year old encryption techniques combined with today's computing power. Nothing stays secure for ever, that article even says the cryptography techniques used in GSM have been proven to be weak for many years.

Most CDMA phones do NOT have locked bootloaders anyway. So if having an unlocked phone made cracking it easier, then one could just pick up any number of unlocked CDMA devices, like the original Moto Droid for example.
 
I disagree, at least from a theory perspective. Vendors likely implement the access to the underlying chipsets as kernel-layer drivers. By cryptographically signing the kernel you're also signing the drivers. Now you've got a layer of abstraction, you need to find a flaw in the drivers that can exploit a flaw in the chipset, a double failure situation.

With an unlocked bootloader you now have access to the drivers, a flaw in the chipset is directly under your control and these are much easier to exploit than a flaw that happens to have been exposed by the driver.

Is this why CDMA hasn't been hacked or is it because CDMA implementations are proprietary so hacking VZW doesn't mean you've hacked Sprint or KT or anyone else? I have absolutely no idea, but it is a possibility. This doesn't mean I condone locked bootloaders, but realistically VZW will own a percentage of your phone until your two year contract is up so there's not much I can say about it other than I'd like a $10/month discount and pay an extra $240 for the phone upfront so I own it outright.

Personally I hope that "5G" networks will be built like the Internet, assume the customer is a hacker trying to break in and build security into the network itself rather than trying to push it out to the device. I just know LTE was proposed in 2004, ratified in 2008, and widely deployed in 2011. That means that any ideas we may have today will probably appear in the 2020 timeframe. Telco standards move slowly.

I disagree, coming from the perspective of a kernel modder.

We will have to agree to disagree. Unlocked bootloaders do not leave access to the source to drivers. That leaves hacking. Hacking was/is in windows mobile, was/is in BB OS, and is in Android.

Nobody has hacked the network yet, and locking down devices is a relatively new trend.

Now keep in mind, if this was a concern, Verizon would have never let the Xoom on their network. As we all know, the Xoom has an unlockable bootloader.