Rooting is the process of allowing users of smartphones, tablets and other devices running the Android mobile operating system to attain privileged control (known as root access). At its most basic, “rooting” is the process by which one gains access to the administrative commands and functions of an operating system. Still confused?

Rooting gives you the permission to act like the administrator of the phone – similar to running programs as administrators in Windows, or running a command with sudo in Linux. Rooting gives the ability (or permission) to alter or replace system applications, files and settings, removing pre-installed applications, run specialized applications (“apps”) that require administrator-level permissions, low-level access to the hardware itself (rebooting, controlling status lights, or recalibrating touch inputs) or perform other operations that are otherwise inaccessible to a normal Android user. On Android, rooting can also facilitate the complete removal and replacement of the device’s operating system, usually with a more recent release.

It gives you privileges to modify the software code on the device or install other software that the manufacturer wouldn’t normally allow you to (for good mobile security reasons: they don’t want users to make modifications to the phones that could result in accidents beyond repair). But tech savvy users have already developed rooting methods, which vary depending on device. They are available on the web, and more and more Android users are resorting to them because of the powerful perks they provide.

As you learn more about the rooting process, you’ll probably run into a bunch of terms that can be confusing. Here are some of the most important ones and what they mean. If there are any other terms you think we should add, let me know and I’ll put them in!

  • ROM: A ROM is a modified version of Android. It may contain extra features, a different look, speed enhancements, or even a version of Android that hasn’t been released for your phone yet.
  • Stock: “Stock Android,” mean the Google-built version you’d find on Nexus devices. Many ROMs are based on stock Android with some additions, while others are based on the version that came with your phone. In other cases, “Stock” can also mean the version of Android that came with your phone—e.g., if you want to get rid of your ROM and return your phone to factory settings, you might say you’re “going back to stock.”
  • Kernel: A kernel is the component of your operating system that manages communications between your software and hardware. There are a lot of custom kernels out there for most phones, many of which can speed up your phone and increase your battery life, among other things. Be careful with kernels, though, as a bad one can cause serious problems with your phone and possibly even brick it.
  • Flash: Flashing essentially means installing something on your device, whether it be a ROM or a kernel. Sometimes the rooting process requires flashing a ZIP file, sometimes it doesn’t.
  • Brick: To brick your phone is to break it during flashing or other acts. There is always a small risk with flashing, and if your phone becomes unable to function—that is, it basically becomes a brick – you’ve bricked your phone.

Should you root your android device?

Unless you do some thing stupid like installing other phone’s roms to your phone or something worse, rooting is 90% safe . You  should root your device if you are out of your warranty period. You cannot unlock full capability of phone unless you root the device. If you are a developer than you should definitely root the device ,you can see your data in sharedpreferences and sqlite database by using root browser/root explorer app in folder   root–>data–>data–>yourpackagename . Take the risk it definitely worth it.

learn more about rooting from below links