Android ROMs, Kernels, etc

wabbitseason

[H]ard|Gawd
Joined
Jun 16, 2010
Messages
1,511
I see a lot of people using and discussing custom ROMs, kernels, and the like on this forum. Honest question: how can it be that these custom roms, kernels etc actually improve the efficiency/power of the stock OS? Android is open source, but surely Google's developers have access to more information and have more experience than any amateur coder.

Why is it that something like CM10 and LeanKernel (simple example) can be superior to the stock OS? Why doesn't Google implement these optimizations themselves? Is this a situation similar to overclocking, where manufacturers provide severely-underclocked chips to insure absolute stability under all conceivable situations?
 
There are a lot of factors here, but in part you are on the right track with the overclocking analogy. Google, the hardware Manufacturers (samsung/htc/etc), and then also phone carriers would all like to ship a phone that never crashes, locks up, or has incompatibilities with apps. I'd wager they spend more time in testing than in development of a ROM revision. They are conservative with performance settings, and very slow to release fixes or new revisions. In other cases they are just rushed to meet deadlines for release and release something with features disabled or problems built in.

The "amateur coder" can immediately integrate new advances or bug fixes into a ROM or kernel, try it out, and post for others. My Samsung Galaxy S2 would need Google to release a new OS version, say ICS or Jelly Bean, then Samsung must code and test the kernel and their adaptations to the OS, then pass it on to AT&T to make their carrier specific adjustments and test, then deliver it to my phone. But if I download a custom ROM and kernel, a kernel patch or bug fix released yesterday could be included. In more than one occasion, the bug fix or patch is written by the amateurs and then used or adapted into production ROM versions.

It may be my opinion, but I think many of the amateur coders are superior to those working for the likes of Samsung, Google, or HTC. These folks are skilled, experienced, and very innovative. The product they put out shows it. A few companies are beginning to catch on a bit and hiring from the "hacker" crowd.
 
Manufacturer and carrier bloatware. I.e. apps and other shit that always run and you can't get rid of.
 
I forgot about that. Been so long since I was running stock ROM I forgot they load a bunch of crap that custom ROMs can strip out. Big chunk of the performance/efficiency boost of custom ROM is that alone.
 
I forgot about that. Been so long since I was running stock ROM I forgot they load a bunch of crap that custom ROMs can strip out. Big chunk of the performance/efficiency boost of custom ROM is that alone.

My evo4g shipped with an NFL app, a NASCAR app, a FacePlant app, and a few other Sprint apps that all alone ate 1/3 of the onboard memory on my phone and couldn't be halted or moved to sd card or uninstalled...on top Sense bloat.

The Jelly Bean ROM I'm using now takes up less than half the space the stock ROM image does.
 
The actual answer is Google doesn't really control or give a crap about any Android phone except the Nexus which is a phone meant for developers, and even that they don't fully control (Verizon delays). Google simply supplies AOSP to their oem customers, after that its the vendors job to maintain it, release source etc. Android isn't an actual OS as much as a reference platform.
 
There's lots of things. It's voltage changes, more aggressive governor's, less bloat, and plenty more. In the case of Lean Kernel there's lots of kernel code removed because it's unnecessary for the device. Hell getting rid of pigs like Sense and TouchWiz is enough change in itself to increase performance and battery life.

In the end any of the code from say CyanogenMod that fixes or improves the Android code does normally get submitted back to AOSP and makes its way back into the main base code.

As for "amateur coders". These "amateurs" do a far better job than the OEM's do in my opinion especially when upgrading devices to the latest version of Android. Some of these "amateurs" are so good at what they do the OEM's actually hire them. Steve Kondik, Cyanogen himself, works for Samsung and has for nearly 2 years now.
 
Google doesn't work directly with manufacturers when it comes to the final shipping product, at least not outside of the Nexus line... They have some say in what manufacturers can and cannot do but ultimately it's a lot like the PC laptop environment (only manufacturers have a lot more freedom), which is what allows such a wide variety of devices...

Ultimately the finer optimizations are up to the manufacturer, which itself isn't solely responsible for what goes into the phone or how often it's updated... Carriers have their say and even the manufacturers of specific parts have an impact as far as driver/kernel tweaks.

Microsoft is basically straddling the line between Apple and Google... Windows Phone isn't open source obviously but even beyond that they dictate what hardware can go into the phones and it's a lot more standardized, at the same time there's still some room for hardware/software differentiation on the manufacturer's part but it's all more focused and restrained. There's also less variety of devices though.

I'm a big Android fan but I firmly believe that ultimately Microsoft's gonna be their biggest competitor, not Apple, regardless of the market share Apple maintains in the long run. This is unless MS screws up big and opens the door for someone else, but RIM's pretty much screwing themselves every way possible so that's unlikely.
 
Last edited:
My evo4g shipped with an NFL app, a NASCAR app, a FacePlant app, and a few other Sprint apps that all alone ate 1/3 of the onboard memory on my phone and couldn't be halted or moved to sd card or uninstalled...on top Sense bloat.

The Jelly Bean ROM I'm using now takes up less than half the space the stock ROM image does.

Sprint in particular has made huge strides in this area... My EVO LTE came with Sprint Zone for managing my account (newest version actually has some useful features) and Sprint's hotspot app, that was it. Pretty much zero bloat outside of HTC's own stuff obviously, latest version of Sense is pretty refined tho... I keep getting tempted by CM but that camera is hard to give up, and with the One X+ coming out soon the Jelly Bean Sense ROM's can't be far behind, yay.
 
Manufacturer and carrier bloatware. I.e. apps and other shit that always run and you can't get rid of.

^^ Sums it up. My battery on my Skyrocket has gone from barely being able to last 8 hours on stock, to lasting all day and on light usage days well into the 2nd. UV/UC + debloat = winning.



 
Last edited:
Currently have AOKP Jellybean and am now downloading the LeanKernel ;)

Verizon Galaxy S3*
 
Back
Top