The world of today is filled up with technology here and there. In the world of smartphones, there are terms used which makes one wonder "What does this really mean"? I was surprise when i got mails from friends asking whats the meaning of Rom, OTA, Stock Rom, Custom rom, Rooting, etc.. concerning their Android device and infact, that mail made me put up this article so as to help many fully understand the used terms on Android smartphones.
To the geeks and those who already how and what it means, it is not an overwhelming endeavor. But to those who don't, it is. Open a forum thread with some instructions and you’ll find yourself staring at all sorts of strange words and confusing combinations of letters.
ROMs, Kernels, Nandroids, TAR images…what does it all mean?!
We’re here to help! Below you’ll find the newb’s dictionary to the strange language of modding/H@cking. This is not intended to be a technical definition of each concept, but an easy to understand
explanation for the average Joe.
Disclaimer: We chose NOT to put this “dictionary” in alphabetical order because we believe it follows a logical order from basic to more advanced H@cking knowledge that will be easier for the complete beginner to follow and understand. Let's Begin....
ROOTING: Acquiring "root" access or permission is the process of gaining total control or Administrative control over your device. When you purchase your brand new Android device, there are certain files and systems that you cannot access because they are blocked by the manufacturer. By aquiring root, you gain access to these files, allowing you to modify, replace and even delete them with no manufacturer's restrictions. Rooting also allows you to take total control over system files behavior and how to control them. An Android phone without root access or permission is really not yet a complete Android
BOOTLOADER: To some Android device, before you can root or gain root permission, you must unlock your bootloader. The bootloader is a line of code that is executed even before your Android operating system boots up. The bootloader’s code is specific for each make and model of the many Android devices. Bootloaders comes factory "locked" because the device manufacturer doesn’t want you tinkering with the software that they worked so hard to optimize for that particular piece of hardware.
Unlocking the bootloader allows you to tinker or play around with the phone’s firmware, or even replace it with a custom firmware (aka: Custom ROM ). It is very important to note that unlocking your bootloader will erase or wipe all data stored on your phone, essentially putting it back to a "factory reset" state after accomplishing unlocking bootloader, so you’ll want to save any pictures, music, or any other important files that are on your device.
RECOVERY: Once your bootloader is unlocked and you have rooted your device, you will need a custom recovery. To some Android device, you don't need unlocking bootloader before you can install a custom recovery. A recovery is a piece of software that is called up separate from the actual Android operating system. Its purpose is to make changes to the Android OS at a core level, such as delete user data, apply updates and more. The stock recovery is limited in function, so if you are planning on modifying/H@cking/rooting your phone, you will need to install a "Custom Recovery" such as Clockwork Mod Recovery TWRP recovery meant for your specific device. A custom recovery will allow you do the following:
→ make backups, restore them
→ wipe partitions
→ install custom software or rom and more.
Backup / Nandroid: Once your custom recovery is installed, you will want to make a backup (also known as a Nandroid) of your entire Android. A Nandroid is simply a complete and total backup of your phone. It will store all of your data, apps, settings, SMS messages, and more, basically allowing you to restore your phone to the exact state that it was in when you made the backup.
WIPE: Now that your backup is made, you don’t have to be afraid of making changes to your phone or losing data, since you can always restore it (just be sure to not delete the backup or its folder). Now you can "wipe" your phone without worries. Wiping simply means deleting all the user data from your phone, essentially reseting it to its factory state. You can also wipe (ie: delete) other partitions of your phone like the cache partition. It is always recommended to wipe your phone before installing a custom ROM (we’ll get to that in a second). You can wipe your phone via the custom recovery you installed which is more effective
FLASHING: Flashing is the process of installing some sort of software or code via your custom recovery.
FLASHABLE ZIP: A flashable ZIP is the actual file that you install or "flash" via the custom recovery to make changes to your phone’s software. It is a normal .zip file that contains the lines of code to
modify your software. These Flashable ZIPs can be used to flash a ROM, Kernel, Radio, mod, and more, which we will define below.
ROM: A ROM is the main or default firmware or operating system that your phone runs (Stock Rom). Just like Windows 7 runs on your PC, or Mac OSX runs on your Macbook, a ROM is the main software you interact with to use your phone. It includes all the system apps (messaging, email, phone), the launcher, the notification bar… everything really. Google’s Nexus line runs a "stock" Android ROM (meaning it’s unmodified) while manufacturers make significant changes to the look and feel of their ROMS before they ship them with your phone (for example: note the difference between the Samsung Galaxy S III’s software and the software on LG’s Nexus 4) . Code-savvy developers have taken the manufacturers’ code and created their own “Custom ROMs”.
CUSTOM ROM: These ROMs (Custom Roms) can dramitically enhance the look and feel of your phone, and often add tons of useful features. Two very popular custom ROMs are CyanogenMod and MIUI. A ROM is made for a specific model phone and comes in a Flashable ZIP file that is installed (flashed) via your custom recovery.
KERNEL: Unlike a ROM, the Kernel does not alter the look and feel of your phone, but is a “deeper” line of code that rests beneath the surface, so to speak. It tells the software how to interact with the hardware. A custom kernel is a kernel that developers have added code to, in order to create all sorts of new options and abilities. They might add code to make the phone’s processor run at a higher speed, or make the battery draw less power when the phone is in “idle” mode. Kernels are like the soul of the software. They can be flashed in the custom recovery and the files are usually called Tar Images or Zimages.
RADIO/ BASEBANDS/ MODEMS: The radio / baseband / modem is a firmware that allows your phone to connect to the wireless network. This firmware controls basic low-level functions of your phone like cell-network connectivity, Wi-Fi, and GPS. Oftentimes an updated radio / modem will help with signal strength issues, battery drain and more. The radio / modem firmware is specific to each device and carrier and is flashed via custom recovery.
MOD: A "mod" is simply a modification made to the phone’s software. This can include adding functionality or changing the visual layout of your phone, like moving the location of the clock to the center of the notification bar, or inverting the colors in the SMS app. Mods are usually Flashable Zip files that are flashed in the custom recovery.
BRICK: A brick is when your phone won’t recover or even come up from a bad rooting/flashing process. Your device becomes unresponsive and unable to be restored…essentially making it a “brick” or a very expensive paperweight. Bricking your phone usually happens when you do not follow instructions carefully when attempted or if a device does not allow for root.
Bricking your phone is a real possibility and risk in rooting and modding your phone, but it is very rare to occur, and most unlikely to occur if you simply follow the instructions. Don't panic, a bricked device can be recovered.
SUPER USER (SU): If you follow the instructions and root correctly, you will become a Superuser (SU), which means you become a complete and total admin of your device, allowing for most, if not all root permissions to be accessible.
KANG: A Kang is a ROM or mod that uses a significant portion of code created by another developer.
OVERCLOCK/ UNDERCLOCK: This means that you have installed a custom Kernel that has allowed you to speed up or slow down your phone’s processor speed. Most phones are clocked at a certain processor speed (ie: 2.4 MHz), but if you overclock it, you are allowing your process to push the limits by working at a higher speed. Overclocking will make your phone perform faster, but often comes at the expense of battery life. Underclocking does the exact opposite of overclocking. It makes your processor perform at a lower speed, slowing down perceived performance, but helps increase battery life.
UNDER VOLT (UV): Undervolting is a feature that is enabled in certain custom kernels. Undervolting lowers the amount of power your processor needs to perform at its normal level which, in theory, saves you battery life. The feature is known to cause issues in many phones.
APK: An APK is extention format file name for an Android application that can be installed on your phone. All apps for Android downloaded from the Google Play store come as APK files. APKs can also be “sideloaded” by downloading them from outside of the Google Play store and placing on the phones internal or external memory. To install a sideloaded APK you need to enable that option in settings, then find the APK file on your phone and tap it to begin
the installation process.
Odex / DeOdex: DeOdexing APKs is a way that developers optimize APKs (apps) to be compatible with different themes that themers have created. Please see this very good explanation on Odex / DeOdex that we wrote about previously.
ANDROID SDK: Android SDK is a software development kit written by Google that enables developers to create applications for the Android platform. The Android SDK includes sample projects
with source code, development tools, an emulator, and required libraries to build Android applications. In many cases, if you want to H@ck your phone, you will need to have the Android SDK installed on your computer.
ADB: ADB stands for Advance Debug Bridge which is a tool that comes in the Android SDK. ADB lets you modify your device (or device’s software) via a PC command line. ADB is mainly for developers to create and test their apps, but it can also be used by
curious hackers (like you!) to access your phone from your computer and run some commands via your computer’s command prompt.
Well, that’s it for now! Hopefully this has demystified some of the strange language for you beginner hackers and interested parties. Now that you have a basic understanding of the words that you find in the forums or heard, be sure to do some in-depth reading on how to properly root and mod your Android device. Remember, if your device breaks, it’s no one’s fault but your own. Check out XDA Developers to find many great resources for H@cking your specific device. Happy H@cking/ Modding