Tuesday, July 23, 2013

The Roots conceptual

Introduction to Rooting - Part 1 - Theory

Much of this post is compiled and written up by me based on reviews of various sources around the net and other sections of LYN. Sources and Contributors are duly acknowledged. If you wish to reproduce this writeup please PM me that you are doing so and acknowledge me as well. Thanks.

A bit of evangelism before we begin:
10 reasons why Android is still better than iOS - AndroidAuthority - 2013-01-17
Read the comments for a feel of what people think after having read the article.

Since we're actually going to discuss rooting, here is an article for you to understand why your phone is not supplied rooted out of the box:
Why Doesn’t Android Come Rooted? - 2013-03-12

So now let us begin.

A very very brief description of phone architecture: portions of writeup credits to antt00 for clarification

The table shows components of the architecture from bottom to top. At the lowest level you have the physical hardware, then upwards you have the firmware and the rest. The userland is where the User (you) interact with the hardware using the programs/apps you installed.

I'm writing this because you are holding a portable COMPUTER that has phone capabilities. So you should treat your device like a COMPUTER first, and a phone and/or camera second. See this:LINK:Smartphones are the PCs of the future

A "ROM" typically contains a kernel, a radio (some have several you can choose from) and the userland. Some ROMs do not contain a kernel or you can elect not to install its default kernel and use the one you currently have.
I provide a link further down this writeup to the Cyanogenmod wiki for a further explanation.

The Baseband or Radio contains settings to connect to the transmission towers, while the CSC contains settings specific to your mobile operator in the APN list (eg Maxis 3G, Maxis Streaming, Celcom 3G/2G etc)

ComponentChangeable?Description
Rest of ROM (userland)
Y
eg monx, Alliance, Phoenix, PACman, ParanoidAndroid..(usually "ROMS" include the kernel and radio as well)
Kernel
Y
The Kernel is a low level component that handles management of the hardware. It exists in all Operating Systems like Linux, Windows, OSX etc. Android is based on Linux, and Google has been cooperating with the Linux community to merge kernel development effort. eg Abyss, Perseus, Redpill
CSC (Carrier/Country Specific Code
Y
CSC settings include the APN (Access Point Names) list for your region's telco settings. It provides some parameters for your specific telco (eg Maxis 3G, Celcom 3G, Maxis Streaming etc). Some ROMs contain multiple CSCs for more region support. You typically do not mess with this otherwise you will not be able to access the data network.
Baseband (also known as Radio)
Y
The radio handles your phone's hardware communications with the telco network. It simply allows your device to fulfill its phone function. eg : DLK5, DLK7. Some apps allow you to change the network parameters used. DO NOT ATTEMPT THIS unless you REALLY KNOW what you are doing 
Recovery
Y
The Recovery allows you to perform some functions like flashing mods and ROMs. It is the lowest level component that the user can interact with. eg CWM, Philztouch, TWRP LINK:What is CWM (explains about CWM, but applicable to any Custom Recovery)
Firmware begins:Bootloader
Y
This starts the phone booting process when you press the power button. It is also the location of flash counter. Triangle Away changes values here. The bootloader is UNLOCKED. However, there are no custom bootloaders yet for your phones
Hardware (components)
N
Screen, Battery, the stuff you can modify it

Of course someone like AdamOutler (on XDA) can mod the HARDWARE. That guy is a real guru.

You CAN mix and match components marked "Y" from different countries, kernel, ROMs etc. It's fine, although some Radio versions may give you reduced signal performance.

For those who prefer a more visual discussion: (contributed by TamiyaOne)
» Click to show Spoiler - click again to hide... «

A note about CPU, RAM, ROM and "Storage"
Think about you sitting at a desk with drawers. You are the CPU. The RAM is like your desk space. The larger your RAM or desk space, the more stuff you can work on at a time. But then of course, the more you work on, the more "you" is needed ie multi-core CPUs. Storage is like your drawers. The larger your drawers (storage) the more stuff you can store (your mp3s, mp4s, pdfs etc).

ROM, in this case, is technically "Read Only Memory". It is like the master plate used in printing, or perhaps a DVD. You can deface, tear or crumple your printout but you can always get a fresh printout by stamping from the master plate. So the ROM is actually a master plate or clean slate you can revert to if you have problems with FCs (forced closes) or random problems with your phone. You get the clean slate by performing a Factory Reset.

In your phone, the ROM resides on an area of Storage that is accessible by the Recovery. In the early days, a ROM was a physical chip that you replaced or re-flashed with special hardware. Nowadays everything is highly integrated.

Some additional clarification from Cyanogenmod if you're still not satisfied with the writeup here.

Now you can begin.

Rooting for Beginners - some general explanations and understanding

The simple, non-sexy, non-flashy, techie answer: root gives you administrator (ie God) access to your device.
Root DOES NOT change your phone in any other way. No speed-ups, no slowdowns, no other changes or magic. But it OPENS THE DOOR to magic icon_rolleyes.gif

Other answers using different metaphors:
Easiest Explanation EVER To Explain Root Vs Jailbreak
Think of it like the Matrix: Jailbreaking 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 is what Neo could do. Not only could he bend the rules, he could completely break them


LINK:Difference between ios Jailbreaking and Android Rooting
an excerpt:
Now while IOS users might consider jailbreaking their iPhone the same thing as Android users rooting their Android phones, there is a HUGE difference. In fact, you can't even compare jailbreaking to rooting, and here's why.
Android out of the box allows users to install 3rd party apps (also known as sideloading), already allows you to install themes, and even allows you to install applications directly from your SD card or internal memory of your device. Everything that IOS users hope to accomplish with jailbreaking their device is already included as basic functionality within Android.

LINK:Another article explaining Rooting from Android Authority

Does Rooting Void warranty?
For any phones, it's a yes and no answer. From the terms and conditions, rooting/flashing will void your warranty, but Samsung Malaysia is not strict about this. So far there have not been cases of Samsung rejecting rooted phones, but please be prudent and perform a Triangle Away counter reset and flash stock firmware before turning in your phone for warranty.

If you live in the USA, rooting (of phones only) is legal as proclaimed by the Librarian of Congress, so you shouldn't have any issues with warranty. The US legal system has not clearly defined what a "tablet" is, so you can't root tablets. We don't know the case for "phablets" laugh.gif

Can rooting damage your phone?
It is a one in a million chance. If you are afraid of this slim chance, don't root.
This usually happens due to PEBKAC issues. Therefore, if you are prone to PEBKAC, do not proceed. Please google PEBKAC for your OWN UNDERSTANDING AND PROTECTION.
Bonus from wikies, https://en.wikipedia.org/wiki/User_error#PEBKAC
If you do not suffer from PEBKAC, then please ensure 1 very important thing: your download is NOT corrupt. For Windows, use this tool: HashTab by implbits
Make sure that your file MD5 matches the one from the host site. If the MD5 matches, your download is clean, and you may proceed.

There may be cases where you will not have the MD5 from the host site. If that is the case, use this tool: http://www.7-zip.org/
Install it. Select default options, and then run "Test archive" from the right click menu. Passing the test will give you a good indication your download is not corrupt.

What is the Flash Counter and Triangle Away?
There is a counter in the phone that checks for flashing of custom ROMs. If you have flashed a custom kernel or ROM, the counter will increase. When you get into Download mode, it will show that the counter has increased. This tells Samsung that you have modified with your phone.
You can reset this counter by using TA. Triangle Away.

What is this about "locked bootloaders" ?
As you have seen from the write up above, the bootloader starts your device. In Samsung, it also contains some checking code to determine whether you have a modified recovery and/or kernel. However, Samsung did not lock down the bootloader. A locked down bootloader means you can't root, can't change recovery, kernel or ROM. We all fervently hope Samsung continues in this fine tradition.

Now, other manufacturers practice bootloader locking as a so-called "security measure" to protect, ostensibly, the user. See link above about why your phone is not rooted out of the box. Here is a link to a post by an XDA forumer about bootloaders for Samsung, HTC and Sony.

Also see this post (2013-03-08) by DooMLoRD, a recognized XDA developer, on his steps for unlocking the Sony bootloader. Warnings quoted from his post :
QUOTE
Quote:
For Xperia™ devices released 2013 or later (for example Xperia™ Z and Xperia™ ZL), the SD card of your device will be formatted and you will lose all content (for example photos, music, videos) when you unlock the boot loader.
DRM keys WILL be lost forever

Quote:
Originally Posted by schaggo View Post
I'd add what losing DRM keys means, e.g. no more Music ID/Gracenote within the Walkman app plus probably most importantly, as asked all the time and all over the place in the T/mint forums: loss of Bravia Engine.

+for my own info, HTC puts funny "tricks" on their Bootloader , which is Secure-Boot and Secure-On/off nor SBOOT version..
Hence that, if your SBoot version is older and relocked for the S-on... warranty will voided by time

and Asus Zenphone series unlocking BL seems like Sony... [not sure yet]

So we should thanks Google Nexus/Samsung for being more mod-friendly than the other manufacturers.

To unlocking an bootloader, prevent your data loss, please backup it and I'll not responsible for any phone that warranty gone to do so please flash the origin systems before u went to service center.


SuperSu Logo, developed by ChainFire
-my 2cents post from LYN's and thanks to joytest for permissions and credits -

No comments:

Post a Comment