I am root


[Disclaimer: Rooting of Android smartphone voids its warranty. I would not recommend anyone to do that. I took the risk but I made sure of doing all possible study work before rooting, I have rooted my older phones and I am aware of the risks involved. Rooting also opens doors for hackers and your data could be compromised.]

According to Greek legend, the first woman, Pandora, was actually sent as a curse to Zues’ men and was given a present upon her marriage. The present was a box that she was told never to open. Needless to say her curiosity got the better of her (like eating forbidden fruit) and she unleashed eight demons unto the world. The first seven being the seven deadly sins, and the last, which she managed to capture, was hope.

Likewise, rooting of smartphone, especially Android based phones, unleashes demons like hackers, virus etc.. but hope overturns all them. I’ll keep metaphysics aside for a while and talk a bit about technology. Ever since I bought my smartphone, I’ve been a beneficiary of rooting. I would not recommend rooting for the faint-harted…I will not leave behind huge disclaimers: to be on the safer side, I’d dedicate this blog post to those who have already managed to root their smartphones. For those who might be tempted to root, please consult the first woman, Pandora.

Android beats iOS in almost all departments. For iPhones we have jailbreaking which basically removes software restrictions put into place by Apple and is comparable to what Morpheus could do: He could bend the rules of the system to overcome certain restrictions, but was still bound to its rules. Rooting, on the other hand, is what Neo could do: Not only could he bend the rules, he could completely break them.

There are zillions of articles on what’s rooting, how to root etc.. but I will give a bit of intro about rooting and then share with you my personal experience with rooting. Rooting basically gives us administrative access to the operating system, mainly Linux operating system which is way powerful than any operating system mankind has ever created. Android is one of several children of Linux which is based on Unix. Linux is GUI of Unix just like how Microsoft Windows is of DOS.

Following is a typical smartphone motherboard or PCB:


I will focus on the chip with orange border called ROM (Pandora’s box) which is a misnomer because this memory can actually be modified through system updates, just not by the end user. This ROM stores the operating system files, or practically the brain of the smartphone. Now, an access to this piece of chip would open doors to many possibilities.

All the phone hardware like RFModem (Radio, Wifi, Bluetooth, GPS, NFC), Display, Physical Memory, Processor, Internal/External non-volatile Memory, Audio, graphics, vibrator, buttons, LEDs, sensors (including battery and finger scanner), camera etc.. are configured (software), coordinated and controlled (via dedicated control logics) as per factory standard and stored in this ROM. When you are able to access these files, you can alter their DNA and turn them into mutants, for good or for worse based on your sense of responsibility and understanding.

Following are the things you are in control of, as a root / super user:

  1. Processor: We have something called as DVFS (Dynamic Voltage and Frequency Scaling) which basically is in the form of file based configuration wherein we shall find Processor frequency ranges and their respective voltage (in mV) and currents (in mA). These values are optimum and are set based on factory tests with temperature, user experience and battery life as factors. We can tune these values based on another factory which is not promoted by any smartphone makers. The latter is run by a bunch of intelligent, risk taking software developers (or Android developers) who all are grateful to. These developers do the hard work of altering the values in such a way as to not to blow up the phone. They widen the constraints set by official factory while ensuring of a stable smartphone (debatable). So we can bump up the voltage and widen the orifice to allow more current to flow into the PLL to pump up it’s clock and tap out more frequency than the official limit: in short, overclock it. Once overclocked, the phone gets faster in terms of phone performance and smoother in terms of user interaction. For Battery and heat conscious individuals, we have underclocking wherein we can turn the voltage and current knobs towards the other way and this comes at the cost of lower performance and smoothness. There are ready-made profiles called Governors such as performace, power saver, conservative, adaptive etc.. which you can choose depending on your usage.
  2. Camera LED: Bump up the voltage and current ratings and get a brighter Camera LED, again excessive usage will burn the LED. Rooting voids warranty so use with care.
  3. Audio : Smartphone makers are subjected to many challenges by health regulators, so they narrow down the audio frequency and clamp down the amplitude range respectively. Besides, they pack in crappy earplug. So as a root user you will beg to differ and give a finger to the health regulators. you have a freeware called Viper4Android: A powerful DSP engine which will revolutionize your hearing experience, even with a crappy rooted phone and earplug. Again, your eardrums are at stake. Use with care because when you give a finger to the health regulators, they are smirking at you with pity.
  4. Graphics: You can boost your graphics engine or you can chop or tone down features that are supported only by powerful smartphones. You can tone down antialiasing filter, anisotropic filter, pixel shader etc..: practically everything that OpenGL ES has to offer. There’s an app called ChainFire which will sit between your graphics hardware and your high-end game which will do the job as intended. Again don’t cry for battery drain and heat. Use wisely.
  5. GPS: you can tone down the cold lock threshold hence speeding up of coordinate locks..but you’ll have to make compromises on accuracy.
  6. RF(or Modem): Did you know that you have a ROM specially dedicated to Radio Modem along with a more robust memory management system as compared to other features of the phone? The Radio ROM is the software part of your device that is powering on/off and controlling your radio interfaces. This includes Bluetooth, 2G/3G Phone, WiFi, GPS, NFC etc., And it also includes the OEMSBL (Dedicated Radio BootLoader) and other device specific firmwares needed for using your radio interfaces and for interfacing them with the Android OS. For superusers We have dedicated ROMs that different developers cook: Longer battery life, better reception, more reliability of connectivity,
  7. Sensors: You can tune the gain, constrict or relax the noise filters, enhance other sensor parameters/coefficients, all depending on the type of sensors, of gyroscopes, accelerometers, magnetometer, barometer, hall sensors, proximity sensors, temperature sensors, heart rate sensors, finger scanners etc..are you expecting a retinal scanner in future phones?
  8. Camera: Boost Bitrate in MB/s, FPS, ISO, Zoom smoothness, image/video sharpness, shooting speed, enhance color reproduction, reduce color noise etc.,
  9. Physical Memory: Adjust the VM Heap Size, which is otherwise a fixed value in non-rooted phones, to avoid out-of-memory issues.
  10. Buttons: Every hardware button has a unique factory fitted functionality, but you can change the functionality to your requirements on a rooted phone
  11. OS: Flash ROMs cooked by numerous developers wherein each ROM boasts of it’s feature enhancements as compared to others, use your wit to decide. Use tools such as Xposed tool which is basically a framework that can tweak virtually anything pertaining to the OS, I mean anything. Xposed is perhaps the best thing that ever happened in the history of Android development. Kudos to you guys!!
  12. Battery: Battery calibration can be performed to override factory default values, thus giving you more juice with just a click of a button called “Calibrate”.
  13. Non-Volatile Memory: When you run out of memory, programs will be swapped to SD card almost instantly. Swappiness parameter will decide as to how often you’ll use swap files, for example a Swappiness parameter of 60 implies that swapping occurs when you have used up a little more than half of your RAM and you, as a superuser, can adjust this parameter to boost phone performance (but use with care) , Move applications along with their data files to SD card so as to free up internal storage space: you can now install bigger games and more applications without having to worry about storage space, invest on a good SD card with bigger class numbers.

The 13 points above really underestimates the power of rooting, there are dozens of articles on rooting and other applications that you’ll find in other dedicated websites. I have kept this post as simple as possible and if you want to dive into the software/hardware abstraction layer with regards to rooting, look nowhere else but XDAdevelopers forum which is the only forum where all software libertarians unite and create mind blowing applications like Xposed framework and custom OSes like Cyanogen, MiUi etc..

Please feel free to add more things about rooting (something that I might have missed), viewpoints, links etc., in the comment section below so that vast majority can benefit from this post. Thanks.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s