Related
Edit: To try and get a little more participation and interest, the definitions as of 11/1/2011 are found below (copied with permission). Note that there are still some specifics (like Modems and Kernels) that are specific to the Galaxy S, which will be updated later.
There is an excellent post by jmtheiss in the Captivate forums; it is sticky'd in the General forum named "XDA and Android Terms and Acronyms". This is an excellent thread to reference any unfamiliar terms in the various posts here as well, since all of the general concepts are the same (although many specifics need some work.). It's a great dictionary for beginners since it eases some of the steep learning curve in deciphering the somewhat arcane terminology being used by the veterans who take for granted that the definitions they use are understood. I'll take a stab at updating this thread (assuming there is any interest) with GS II specific terminology if anyone has any suggestions, but the OP has been helpful and is still updating the post with new definitions.
I'd encourage any beginners to look through the post since it answers many questions. (I found it very valuable myself at any rate!) Note, I'll clean it up for readability later to include the links from the original post. In the meantime I'd encourage you to hit the above link to the original thread if you are seeking more information, and scroll down to see if there is a link.
Hopefully this will address a few questions, and help anyone new to the forum. I've assembled a list of terms and acronyms used on the forum below. Terms with links go to sources or threads with additional information. An item in all caps in a definition is one that I've defined elsewhere.
Use CTRL+F to find a specific term.
FORUM RELATED
SEARCH: The button just above the title of the forum or thread you are in. This should be your first resort when trying to find information. See button screenshot below.
GENERAL: This is the place for posting anything general. These include tips, ideas, comments, etc.
Q/A: This is the place for posting any questions. If you have a bug to report in a program or ROM (and have the minimum of 10 posts), post it in the appropriate thread in the ANDROID DEVELOPMENT subforum.
ACCESSORIES: This forum is for any items that attach to the physical hardware of the Android device.
ANDROID DEVELOPMENT: This is the place for posting Hacks/Mods/ROMs/Modems/Kernels. Generally reserved for developers, there is a 10-post minimum before a user can post here. This is the place to inform developers of bugs or software issues - ask questions in the Q&A subforum.
THEMES AND APPS: This is the place for posting themes as well as programs. Many applications can be interchangeable with Android Development, so use your best judgement.
FWIW: Short for "For what it's worth"
OP: Short for Original Poster, or the person who originally started the thread.
PM: Short for Private Message. Allows users of XDA to send and receive non-public messages. Accessed from USER CP.
THREAD: An individual issue page on the forum. This thing you're reading is a thread.
THREAD TOOLS: A button that allows users to subscribe and unsubscribe from THREADs. Subscriptions can be accessed from USER CP. See button screenshot below.
USER CP: Short for User Control Panel. This button near the top of the XDA page allows users to update their avatar, personal information, and signature. PMs and subscribed threads can also be checked in this location. See button screenshot below.
YMMV: Short for "Your mileage may vary".
ANDROID DEVICE RELATED
ADB: Short for Android Debug Bridge. Part of the Android Software Development Kit (SDK), it allows for ROOT-level access to the Android device from a computer.
AOSP: Short for Android Open Source Project. The open-sourced code from which individuals can build new distributions of Android.
APK: An Android executable file, similar to the .exe file in Windows. Most programs will install with a .apk file.
AUDIENCE CHIP: A voice processing chip installed on the I897/Captivate that provides noise suppression and voice quality enhancement for phone functions.
BACKLIGHT NOTIFICATION: A program that turns the LEDs behind the Menu/Home/Back/Search buttons on to indicate system events (e.g. new voicemail, etc).
BLN: Short for Backlight Notification. See BACKLIGHT NOTIFICATION.
BOOTLOADER: There are two of these that can be flashed, the primary and secondary bootloaders. These programs tell the Android device how to start up, and are critical to its functionality.
BRICK: An Android device that is completely non-responsive, i.e. nothing lights up, the screen does nothing, no combination of button presses cause any reaction. Can only be restored by JTAG, UNBRICKABLE MOD, or warranty service.
BUILD.PROP: A plain text file which contains environmental variables for the system to use during operation. Can be hacked to fake a different model for increased functionality, among many other operations.
BUSYBOX: An application that contains many standard Unix tools. Commonly used with TITANIUM BACKUP.
BUTTON COMBO: The act of pressing several buttons at the same time to produce a desired result (e.g. pushing volume up, volume down, and the power button for 10 seconds on FROYO will reboot into the RECOVERY menu). 3-Button Combo is a common example.
CLAY: An Android device that is not fully functional, but shows signs of functionality. Unlike a BRICK, the clay can be recovered without using JTAG. See also SOFT BRICK, BRICK.
CLOCKWORKMOD RECOVERY MENU: This is a program that allows you to install custom ROMS as well as do many other low-level customizations. Often referred to as the "RECOVERY MENU". See also "ROM MANAGER"
CM: Short for CyanogenMod. CyanogenMod is an Android build built from the Android Open Source Project, and its builds are usable on multiple different Android Devices.
CWM: Short for ClockWorkMod Recovery Menu. See CLOCKWORKMOD RECOVERY MENU.
DALVIK CACHE: The collection of program information stored for use by the DALVIK program. This can be cleared from the RECOVERY menu to resolve issues with the Android OS.
DALVIK: The Android operating system's memory management tool. This program handles which other programs are running and assigns memory to them
DEODEXED: Removing the .odex files from an APK file. The .odex files contain a list of dependencies for the associated file, and if something changes, the .odex (and similarly, the associated file) not longer function correctly.
DOWNLOAD: The download menu is the lowest-level interface to the Android device. Allows for full access to all flashable items on the device via the ODIN/HEIMDALL tool.
ECLAIR: The Android OS version 2.1.x. See also STOCK.
EFS: The directory /efs on the Android device's internal storage. Contains files with the Android device's IMEI, wireless devices MAC addresses, product code, and other information..
EXT4: A journaling file system (e.g. NTFS, FAT32 are file systems) often used by Linux distributions. Can be used with Android.
EXTERNAL SD: A micro SD card that has been inserted in the micro SD slot in the Android device. Can be removed.
FACTORY RESET: This will remove all user customizations in the Android OS, returning it to a factory state. Note: This will not wipe the Internal SD card.
FC: Short for FORCE CLOSE. See FORCE CLOSE.
FLASH COUNTER: New with the Galaxy S II, this is a counter accessed by pressing vol up + vol down and then inserting the USB cable to your computer. (This is done from a powered down phone and you do NOT hit the power button.) This shows the number of times custom firmware has been uploaded to the device. See here for the full discussion on what this means and how to avoid it. This can be used to show you have voided your warranty even if you have returned to full stock. There are methods around this (at least for now) by using a USB Jig, or writing the zImage directly to the device without using a bootloader.
FLASHING: The act of writing code to the Android device. ROMs, MODEMs, KERNELs, and BOOTLOADERs can all be flashed. Independent from, and having nothing to do with, Adobe's Flash product.
FORCE CLOSE: When a program on the Android device becomes unstable, the DALVIK program will force it to terminate to prevent further system instability.
FREEZE: Specific to TITANIUM BACKUP. Using the TITANIUM BACKUP tool, the user changes a program into a non-functional, but still installed, state. Useful for identifying problem and FCs.
FROYO: The Android OS version 2.2.x. This version of Android OS was released via AT&T to the captivate as an update over KIES MINI.
GB: Short for Gingerbread, the Android OS version 2.3.x.
GOVERNOR: A program that interacts with the device hardware to increase or decrease the processor's clock speed (e.g. at low usage, it will set the processor speed to 400 MHz, but as usage increases, it would scale up to 1000 MHz).
HEIMDALL: An open-source program by Benjamin Dobell that allows the Android device to be flashed back to stock or with custom software. See also ODIN.
HEIMDALL ONE-CLICK: An open-source, cross-platform, auto-dependency-installing, Linux, Windows and Mac one-click ROM deployment system based on the Open-Source project Heimdall, with multiple adminsitrative, technical and engineering controls making it much less likely to "brick" a phone then ODIN. Heimdall One-Click was created by Recognized Developer Adam Outler.
HSUPA/HSDPA: Short for High Speed (Up/Down) Packet Access. This is 3G+, and is the Android device's internet speed level between 3G and 4G.
I9000: The Samsung Galaxy international model. SImilar to the Captivate, Fascinate, Vibrant, and Mesmerize.
IMEI: Short for International Mobile Equipment Identity. A unique number to identify GSM, WCDMA, and iDEN phones. Used by GSM networks to identify valid devices.
INTERNAL SD: The internal storage memory of the Android device. Not a physical SD card that can be removed.
JIG: A piece of hardware that makes a physical connection between pins 4 and 5 of the USB slot to force the Android device into DOWNLOAD mode.
JTAG: A process of connecting directly to the main board of the Android device to rewrite corrupted BOOTLOADERS.
KERNEL: The collection of software drivers and more "nuts and bolts" programs that allow the basic functionality of the device.
KIES MINI: A Samsung-proprietary program that allows flashing of official updates to the Android OS.
LAGFIX: Changing the file system used by the Android OS (ususally to EXT4) to reduce the perceived lag in the operation of the Android device.
LAUNCHER: A program that launches programs in Android. Examples are Touchwiz (Samsung), Launcher Pro, ADW Launcher, and Go Launcher.
MODEM: The software that interfaces with the phone's radio hardware to connect to cell phone towers.
MODEM DANCE: A combination of key presses, MODEM flashes, and reboots required to force some Android devices to restrict the band use to the 850 MHz WCDMA band.
NANDROID BACKUP: A complete system image backup of the Android device except for the MODEM and KERNEL. Can be accessed from CWM.
NO-WIPE PACKAGE: A rom update package that leaves the user's market apps intact while still performing the updates to the system files. Restoring from backup is not necessary. See also WIPE PACKAGE.
NV_DATA.BIN: An encrypted file in the /EFS directory that contains the Android device's IMEI number and product code. See also EFS.
OC: Short for Overclocking. See OVERCLOCKING.
OCLF: One Click Lag Fix - a outdated method of using the EXT2 file system to reduce perceived lag in the Android OS. See also LAGFIX.
ODEX: A file that is associated with an APK file, containing a list of the dependencies for the program. See also DEODEXED.
ODIN: A Samsung proprietary program that allows the Android device to be flashed back to stock or with custom software. See also HEIMDALL.
ODIN ONE-CLICK: A version/package of the ODIN program that contains and will preload the necessary files to flash back to STOCK (usually ECLAIR).
ODIN THREE BUTTON: A version/package of the ODIN program that will FLASH the necessary files to restore the three-BUTTON COMBO used to get a FROYO ROM into the RECOVERY MENU. Only needs to be used if the user's Android device is missing the files necessary. ODIN ONE-CLICK must be flashed prior to using this package to avoid CLAY/BRICK status.
ONECLICK UNBRICK: A program developed by recognized developer Adam Outler that will release the locks on an Android device that are holding it in a CLAY state.
OVERCLOCKING: Setting the processor's clock speed to run faster than its default setting, i.e. 1200 MHz (1.2 GHz) vs 1000 MHz (1.0 GHz).
PIT FILE: Short for Partition Information Table file. One of the possible file types used while flashing with ODIN or HEIMDALL.
PRIMARY BOOTLOADER: Also known as First Stage Bootloader. The first bootloader run at boot time, this bootloader finds RAM for the Android device, and hands the boot sequence off to the SECONDARY BOOTLOADER. File name is "boot.bin". See also BOOTLOADER, SECONDARY BOOTLOADER.
RAT: Short for Radio Access Technology. This determines how the network decides the QoS (quality of service) on the connection between the Android device and the carrier's data towers.
RECOVERY: The menu that allows a user to do many low-level operations on the Android Device. This menu can either be the stock Samsung menu, or the CLOCKWORKMOD RECOVERY MENU (CWM). See also CWM.
REORIENTED: Changing the code of a KERNEL from one device (e.g. Samsung Galaxy S) so that it will function on another device (e.g. Samsung Captivate).
RFS: A Samsung-proprietary file system (e.g. NTFS, FAT32 are file systems) used on STOCK Android. Stands for Robust File System.
ROM: The collection of programs, themes, and settings that create the general look-and-feel of your Android device. This is what most users will initially be wanting to change.
ROM MANAGER: The Android OS front end program for the CLOCKWORKMOD RECOVERY MENU (or CWM). Allows use of many of the CWM features from inside the Android OS. See also CWM.
SECONDARY BOOTLOADER: Also known as Second Stage Bootloader. The second bootloader run at boot time, this bootloader handles the processes required to allow the Android device to boot the main kernel, such as file systems, memory, and MODEM. File name is sbl.bin. See also BOOTLOADER, PRIMARY BOOTLOADER.
ROOT: Changing the permission level of the Android system to its most powerful level, the root user, allowing full access to the file system.
SILVER SPEAKER: One of the most powerful and dangerous modifications to the Android device available. Can cause a variety of results, from improved signal to radioactive cats in boxes. Should not be used by the infirm or those with faulty gluons.
SOFT BRICK: This does not exist. A misnomer for a device that is not functioning correctly, but still shows some signs of operation. See CLAY.
STOCK: The Android software version that comes installed on new devices, prior to sale to the user. On the original Captivate, it was Eclair 2.1. Can also be used to refer to the Android software issued from Samsung or the carrier.
TETHER: Connecting the Android device to a computer via a wired or wireless connection to allow the transfer of data through the Android device's internet connection. Commonly used to provide internet access to a laptop or desktop computer when other methods are not desired or available.
THEME: A collection of images, backgrounds, colors, font types, and other visual items to change the Android device's look and feel. Separate from LAUNCHER, and is usually FLASHed in CWM.
TIBU: Short for Titanium Backup. See TITANIUM BACKUP.
TITANIUM BACKUP: A backup utility available in the Android Market that allows users to back up their applications, the saved data for the applications, and system settings.
UNBRICKABLE MOD: A hardware modification that removes a resistor and reconnects another resistor to the removed resistor's active pad, permanently allowing the Android device to reach a development board state. This allows reloading of bootloaders that have previously been corrupted or incorrectly installed, along with preventing the Android device from ever reaching a true "hard brick" state. Originally developed by Recognized Developer Adam Outler.
UNDERVOLTING: Setting the voltage levels drawn by the Android device to a lower level to reduce overall battery usage.
UV: Short for Undervolting. See UNDERVOLTING.
VOODOO LAGFIX: Converts /system, /cache, /dbdata and /data to Ext4 with optimized parameters for speed but also guaranteeing data integrity. Also configures the write behavior of Linux to prevent lag from happening, plus applies some memory management providing a better balance than stock settings.
VOODOO COLOR: A series of improvements to the visual elements of the Android OS. Enhances clarity, offers color adjustments, and other visual tweaks.
VOODOO SOUND: A series of improvements to the audio elements of the Android OS. Enhances audio clarity, allows for more powerful adjustment to overall sound levels, plus additional tweaks.
WCDMA: Short for Wideband Code Division Multiple Access. An air interface standard in 3G mobile communications networks that allows higher speeds and more users.
WIPE PACKAGE: A rom package that will format the portions of the Android device where the user's market apps are stored, in addition to any updates to the system folders. After a wipe package is installed, the user will have to restore apps from a backup or redownload them from the Android Market. See also NO-WIPE PACKAGE.
ZIPALIGNED: An archive alignment tool that provides important optimization to APK files. The purpose is to ensure that all uncompressed data starts with a particular alignment relative to the start of the file. Reduces RAM consumption.
ACRONYMS SPECIFIC TO MODEMS, KERNELS, AND ROMS
Note: The Modems and Kernels below are for the Galaxy S, not the Galaxy S II at this time. They will be updated later.
MODEMS
Note: most modems are referred to by the last three letters - e.g. JP3, JK3, JK4.
DTJP3: FROYO (I9000 KERNEL ONLY)
AOJP3: FROYO (I9000 KERNEL ONLY)
BVJP3: FROYO (I9000 KERNEL ONLY)
UGJK3: FROYO (I9000 KERNEL ONLY)
UGJK4: FROYO (I9000 KERNEL ONLY)
TLJL3: FROYO (I9000 KERNEL ONLY)
BVJJPD: FROYO (I9000 KERNEL ONLY)
XXJPY: FROYO (I9000 KERNEL ONLY)
UGJL2: FROYO (I9000 KERNEL ONLY)
BUJS1: FROYO (I9000 KERNEL ONLY)
ZNKP1: FROYO (I9000 KERNEL ONLY)
VJJPG: FROYO (I9000 KERNEL ONLY)
UBJP9: FROYO (I9000 KERNEL ONLY)
ZSJPG: FROYO (I9000 KERNEL ONLY)
TDVJP9: FROYO (I9000 KERNEL ONLY)
XXJVE: FROYO (I9000 KERNEL ONLY)
XXJQ1: FROYO (I9000 KERNEL ONLY)
UGKC1: FROYO (I9000 KERNEL ONLY)
XXJVK: GINGERBREAD (I9000 KERNEL ONLY)
BUJV3: GINGERBREAD (WCDMA 1900 KERNEL ONLY)
UBJV6: GINGERBREAD (I9000 KERNEL ONLY)
XXJVO: GINGERBREAD (I9000 KERNEL ONLY)
UGKG3: GINGERBREAD (I9000 KERNEL ONLY)
UCKB1: FROYO (CAPTIVATE KERNEL ONLY)
KERNELS
JVB: GINGERBREAD
JVH: GINGERBREAD
JVO: GINGERBREAD
JVP: GINGERBREAD
JVQ: GINGERBREAD
JVR: GINGERBREAD
KF1: GINGERBREAD
KH3: GINGERBREAD
KB1: FROYO
JPX: FROYO
JS8: FROYO
JF6: ECLAIR
ROMS
Note: These are only ROM names that use acronyms, not a complete ROM listing
CM: CyanogenMod. See "CM" in Android Device Related section.
MIUI: A Chinese built-from-source ROM. Short for "Mobile Internet User Interface". Also can refer to the MIUI music player, which has been included in other ROMs.
I'm still somewhat new to the board myself, so if I've incorrectly identified what something is or does, please let me know so I can update this post with the correct information. If you can think of any other terms or acronyms that should be included, let me know, and I'll put them up here. I've tried to give credit where it's due by direct linking, but if I've copied something and not cited properly, point it out and I'll update it.
Thanks for the tip bud.
Thanks really needed this I'm a quick learner but the terms allways help. Btw Miui is awesome!
Sent from my SGH-I777 using XDA App
Glad to help. Hopefully the thread won't get totally buried in the blizzard of posts here.
Sent from my SAMSUNG-SGH-I777 using Tapatalk
If anyone can point to a post that gives information on different Galaxy S II modems and kernel's, I'll start updating the post.
Add in AFAIK (as far as I know)
IIRC (if I remember correctly)
Add...
PEBKAC: Short for "Problem Exists Between Keyboard And Chair". Describing a problem as a PEBKAC error is an assertion that the problem in question is the fault of the user.
PEBCAK, AFAIK, ID-10-T error, etc - while they might be in common use, they aren't a term that increases peoples understanding of android devices. I'd like to keep it on track.
It's not meant to be a thread of every abbreviation on the internet -- that's way too much like real work.
Added definition for FLASH COUNTER.
A great guide for newcommers and others alike, all credit goes to the original poster (appdroid)
Originally Posted by appdroid
I don't take any credit I Googled everything. I do take credit of modifying some stuff in word. The idea came from here. I may have took some of his work. SO credit him and Pirateghost for the information about Android.
ADB → Android Debug Bridge (adb) is a versatile command line tool that lets you communicate with an emulator instance or connected Android-powered device..
Android →Unveiled on 5 November 2007, Android is a mobile operating system running on the Linux kernel developed by Google.
ASOP → Android Open Source Project
Apps2SD → Move applications from the internal NAND memory on the device to a removable SD Card.
Bloatware → Software bloat is a process whereby successive versions of apps include an increasing proportion of unnecessary features that are not used by end users, or generally use more system resources than necessary, while offering little or no benefit to its users. Like all the crap that comes from At&t
Brick → When used in reference to consumer electronics, "brick" describes a device that cannot function in any capacity (such as a device with damaged firmware). This usage derives from the fact that some electronic devices (and their detachable power supplies) are vaguely brick-shaped, and so those which do not function are useful only as actual bricks. The term can also be used as a verb. For example, "I bricked my phone when I tried to modify its firmware."
Hard Brick → When your phone does not turn on at all. When you can’t get in to CWR/CWM Or Stock recovery. You are basically screwed.
Soft Brick → When your phone bootloops. When you can get into CWR/CWM. When You can use jigtag to get into download mode.
Busybox → BusyBox provides several stripped-down Unix tools in a single executable. It runs in a variety of POSIX environments such as Linux, Android, FreeBSD and others, such as proprietary kernels, although many of the tools it provides are designed to work with interfaces provided by the Linux kernel. It was specifically created for embedded operating systems with very limited resources. Platforms counterparts, but they are pretty close and useful nonetheless.
CWR OR CWM ClockworkMod Recovery →A custom recovery for Android phones and tablets that allows you to perform several advanced recovery, restoration, installation and maintenance operations on your Android device that aren’t possible with the stock recovery.
DEODEX → Apk files have respective odexes that devs use to supposedly save space. Deodexing means you convert it back to a .dex file and put it back inside the apk. This allows you to easily replace file (not having to worry about odexes), but the main point was to deodex services.jar so that you can change all text to different colors (such as the clock color to white) and to deodex services.jar, you need to deodex everything.
Flashing → The process of applying a firmware image (or ROM) to a device. It generally entails a very specific order of steps. Failing to complete any one of these steps properly may result in bricking the device.
Firmware → is a term often used to denote the fixed, usually rather small, programs and/or data structures that internally control various electronic devices. Programs stored in the ROM, EPROM, or flash memory that usually control various internal electronic devices (Hard Drives, Keyboards, Displays, etc). Firmware is typically 'fixed' software that is not updated in consumer devices, however it is often updated (or 'flashed') by advanced users to fix bugs or add features to the device. Flashing firmware designed for one device onto a different device, or not following a specific procedure while flashing will often render the device unusable.
Kernel → is the main component of most computer operating systems; it is a bridge between applications and the actual data processing done at the hardware level. The kernel's responsibilities include managing the system's resources (the communication between hardware and software components
Radio → The cellular radio on the device which needs control software called firmware to control it.
ROM → Read Only Memory. In the context of an Android device, ROM is the internal flash memory where the core operating system resides. It can also refer to a specific version firmware that can be applied to a device through a process usually referred to as flashing. An improperly flashed ROM can often brick the device, rendering it unusable.
Superuser→ A program, which gives unlimited access privileges to perform any or all operations on the operating system.
ODIN → Odin is the Samsung software used to update Samsung phones. It does not work with any other devices other than official Samsung phones.
OTA or FOTA → (F)OTA stands for (Firmware) Over The Air and is the process by which required updates and enhancements to your phone's basic operating system can be sent to you through the cellular network. The Galaxy S II software update will be sent via FOTA and is available through Samsung Kies mini.0
ODEX → In Android file system, applications come in packages with the extension .apk. These application packages, or APKs contain certain .odex files whose supposed function is to save space. These ‘odex’ files are actually collections of parts of an application that are optimized before booting. Doing so speeds up the boot process, as it preloads part of an application. On the other hand, it also makes hacking those applications difficult because a part of the coding has already been extracted to another location before execution.
SDK → Software Development Kit.
Logcat → A debugging tool built into Android devices that displays system logs as they occur. See Logcat.
NANDroid → A set of tools that will enable anyone who has root on their Android device to make FULL system backups, in case something goes wrong or you want to try out that new experimental ROM/theme. NANDroid will backup (and restore) /system, /data, /cache, and /boot partitions.
Recovery Mode → A special environment that you can boot into for troubleshooting and upgrading purposes.
Kang → The process of creating a code based of someone else's code or reapplying code that someone else created into your own code (e.g. git cherry-pick)
Rooting → is a process that allows users of mobile phones and other devices running the Android operating system to attain privileged control (known as "root access") within Android's Linux subsystem with the goal of overcoming limitations that carriers and manufacturers put on some devices.
Click to expand...
Click to collapse
thanks.. there were a few in there I didn't know!
FYI, I'm fairly certain appdroid kanged this from the CyanogenMod wiki.
WARNING:I AM NOT THE AUTHOR. I FOUND IT ON ANDROID AUTHORITY AND I FOUND IT GOOD SO I'M SHARING IT! THANX TO THEM
So, you’re new to the Android community. First off, welcome to the wonderful world of customizing your phone! Android’s all about the power to make your phone truly yours and if you dig deep enough, you’ll find a hundred ways to make your phone unlike anyone else’s on the planet. Or, at least, nearly unlike anyone else’s. The more you customize, the slimmer the chance people will have the exact same settings. If you’re a stickler for individuality, you’ve made the right choice by getting an Android. But, the moment you loaded up Android Authority, you already feel overwhelmed by new words.
What’s a ROM? What does root mean? What are all these funny words people keep throwing at each other and what is the meaning of life? We’re kidding on the last one, sort of, but just like any newbie, getting into the world of Android is intimidating. You can still your racing heart and wipe those sweaty palms on your pants because Android Authority’s got your back covered. We’ve put together a list of some of the high-sounding words that newbies frequently encounter and compile the words into some sort of easy-to-digest layperson’s dictionary of rooting terms. Come across a word that you don’t understand? Check out our list, it should be here.
ADB
The acronym for Android Debug Mode. Whenever your Android device is connected to your computer, ADB is the command line tool that helps your computer communicate with your device. ADB is part of the Android Software Developers Kit (SDK) and is often used in root tools, whether or not you’re typing the commands in yourself. Unless the instructions call for installing the SDK and running ADB commands, you won’t need to mess with it.
AOSP
Short for Android Open Source Project, you’re likely to see this in ROM descriptions. AOSP usually indicates that the ROM is based on the Android source code provided by Google itself, and not on some other ROM project or a company’s firmware.
Bloatware
Like it says on the tin, bloatware is software or apps that you don’t need, but come pre-installed to a device’s /system partition. What this also means is that you can’t remove them unless the device has been rooted. Usually, these are apps are sponsored by a company and are included by a carrier for profit. For example, the Photobucket app included on the G2 by T-Mobile is deemed by many to be bloatware, although, arguably, some folks do find the app useful. Bloatware is a subjective thing. Some person’s bloatware is another person’s lifeline.
Bootloader
A number of ROMs require your bootloader to be unlocked, but what in the world is it? The bootloader is the lowest level of software on your phone, running all the codes necessary to start up your operating system. Most bootloaders come locked, which prevents users from rooting their phones. This is because manufacturers want you to use the version of Android they’ve provided. With a locked bootloader on Android phones, you cannot flash custom ROMs. Unlocking your bootloader doesn’t mean rooting your phone, but it does allow you to root and to flash custom ROMs.
Boot loop
When your system re-cycles over and over without entering the main OS, your system is stuck in a boot loop and the phone is said to be boot looping. This may happen if you do not follow instructions. At other times, boot loops are caused by defects in the software code. Usually developers who are aware of this problem include boot loop patches that must be flashed after you flash the custom ROM.
Brick
You’ve probably heard this one a few times. It’s usually the result of tampering with the insides of your device and doing irreversible damage. A brick can be the result of a faulty flash or firmware update, a mod gone wrong, or being struck by lightning. Brick refers to a device that no longer functions, generally caused by a failed firmware or SPL update. Since the device no longer works as intended, it is often referred to as a “brick” or “paper-weight”, since that is all it is good for. Since any modification to the device’s software could potentially brick it, following instructions is very important.
BusyBox
BusyBox is an application that provides a standard set of UNIX tools. The default toolbox provided by Android is limited, so BusyBox is required to allow rooted ROMs or apps to use more advanced UNIX features.
Dalvik cache
Sometimes in flashing ROMs, wiping the Dalvik Cache through Recovery Mode is important, but just what is the Dalvik Cache? The dalvik-cache directory holds all of the pre-compiled *.dex files created from installed apps. These files are static and do not change unless the app is updated.
Deodex
This term is most often seen on a custom ROM’s list of features. When a ROM has been deodexed, it means that its apps have been prepared for modification. Deodexed ROMs have apps that have been repackaged in a certain way. Developers of custom ROMs choose to deodex their ROM packages, since it lets them modify various APKs, and it also makes theming possible after the ROMs have been installed.
Flash
Flashing is the term used to install something on your device, whether it’s a ROM, a kernel, or something else that comes in the form of a flashable ZIP file. It is the process of applying a firmware image or a ROM, to your device and usually entails a very specific order of steps. If you don’t follow instructions, you may end up bricking your device.
Fastboot
Fastboot is a boot menu that you can do stuff from before Android is launched. From this menu, you can choose to boot into Recovery Mode, and more. Fastboot is a protocol used to directly update the flash filesystem in Android devices from a host over USB. It allows flashing of unsigned partition images. It is disabled in almost all production devices since USB support is disabled in the bootloader.
Firmware
A phone’s firmware is basically its operating system. A “firmware update” means that the operating system, the software that controls the phone, is updated. “Stock firmware” means that the firmware is unmodified: it’s the version of the operating system the phone’s manufacturer delivers.
HBoot
When you switch your phone, HBoot is loaded immediately and is mainly responsible for checking and initializing the hardware and starting the phone’s software. HBoot can also be used for flashing official software releases, as well as a few other things.
IMEI
The International Mobile Equipment Identity (IMEI) number is a number unique to every GSM, WCDMA, and iDEN mobile device, as well as some satellite devices. The IMEI number is used by the GSM network to identify valid devices and therefore can be used to stop a stolen device from accessing the network. For example, if a mobile device is stolen, the owner can call her or his network provider and instruct the provider to “ban” the device using its IMEI number. This renders the device useless, whether or not the device’s SIM is changed. The IMEI can be displayed by dialing *#06#. When a procedure asks you to take note of your IMEI, make sure to store it in a safe place.
Kernel
The kernel is the heart of any Linux-based operating system. A kernel acts as the brain of the system and controls how the hardware and software interact. It also decides which activity your Android device should carry out at any particular instant.
NANDroid backup
Most how-to guides include this and all developers demand you to take a few seconds before flashing their ROM to make a NANDroid backup. NANDroid is a set of tools and scripts that will enable users who have root on access their Android device to make full system backups, in case something goes wrong or you would like to out an experimental ROM or theme. NANDroid will backup (and restore) the /system, /data, /cache, and /boot partitions. This backup can be restored later, whenever you want. NANDroid backups are created from the Recovery Mode, often with ClockworkMod Recovery.
Opensource
This term refers to software whose source code anyone is allowed to view, modify, or redistribute. In the context of Android, opensource refers to the approach of the design, development, and distribution of software. This offers accessibility to a software’s source code for modification, improvement, bug-fixing, and security-enhancement. The CyanogenMod project is based on this principle.
Overclocking
This term is used when users want to increase the speed of their device’s CPU or GPU. Overclocking can be done by installing special kernels designed for this purpose.
Radio
The radio on your device handles communication and sending and receiving voice and data. Flashing new radio firmware can improve your radio hardware’s reception and bring other benefits. You can flash radio firmware through Recovery Mode, just like how you would a custom ROM.
Recovery
Recovery is the software on your phone that allows you to make backups, flash ROMs, and perform other system-level tasks. The stock recoveries don’t do much, but if you can install a custom recovery such as the extremely popular ClockworkMod Recovery, you’ll have increased control over your device. Other popular custom recoveries also include 4EXT Recovery and TWRP Recovery.
ROM
In the context of Android, a ROM (acronym for “read-only memory”) or, more specifically, a “custom ROM” is a modified version of Android. Developers may give it extra features, a different look, enhanced performance, and others. It may even be a version of Android that hasn’t even been officially released yet. Some of the popular custom ROMs you may have heard of are CyanogenMod, Android Open Kang Project (AOKP), and MIUI.
ROM Manager
ROM Manager is an immensely popular app for root users, allowing users to flash ClockworkMod Recovery, install ROMs from their SD card, perform backups, and even download new ROMs over-the-air.
Root
Root refers to “administrator” or “full” access to the device. That is, your device earns enhanced privileges and can grant you more control in customizing it. The term referring to the process of gaining such administrative access is “rooting.”
With root access, you can mount the device’s internal memory partition as read/write, allowing you to do various things like USB or Wi-Fi tethering and uninstalling annoying bloatware. You can also enjoy certain applications that require root access, overclocking or underclocking the CPU, and more.
Some phones are easier to root than others. Certain phones require a tedious process to gain root access while other phones and firmware have easy and painless one-click methods. You can get root access by either installing the Superuser application or by flashing a custom ROM that already has root access included. Check out our section dedicated solely for guides on how to root your Android device.
Rooting, unfortunately, also voids your warranty, so you must be extra careful with whatever you do to your phone after you’ve rooted it.
RUU and SBF
ROM Upgrade Utilities (RUU) and System Boot Files (SBF, for Motorola phones) are files direct from the manufacturer that change the software on your phone. RUU and SBF are how the manufacturers deliver over-the-air upgrades and modders often post leaked RUU and SBF files for flashing when updates haven’t been released yet. They can also be handy when you’re downgrading your phone, especially when a rooting method is not yet available for the newest software version. You can flash RUUs directly from your HTC device, but Motorola users will need a Windows program called RSD Lite to flash SBF files.
S-OFF
HTC phones use a security feature called Signature Verification in HBOOT, the bootloader on HTC devices. S-ON (security on) will read-lock your /system and /recovery partitions, blocking you from performing certain root-level actions directly from Android. By default, your phone has S-ON, which blocks you from flashing radio images. You can disable this security measure with S-OFF (security off), although you risk bricking your phone in the process but will allow you to flash new radios. Rooting doesn’t require S-OFF but many rooting tools give you S-OFF in addition to root access.
Superuser
Since Android is a Linux-based operating system, Linux has something called root access. By rooting your Android phone, you gain superuser access. The superuser, or root user, is a special user account for system administration. Superuser is also the name of an app, which lets you grant or deny superuser privileges to other apps.
Wipe
Usually refers to wiping data and cache partitions of the device. Usually before flashing a custom ROM, developers will instruct users to perform a wipe. Not performing a wipe may result in problems with the ROM’s performance.
Zipalign
You’re likely to see this term on the list of a custom ROM’s features. Zipalign is a tool that optimizes the way an Android app (APK) is packaged. The Android device can interact with an application more efficiently, and in doing so, has the potential to make the app and the entire Android system perform much faster. Zipaligned applications are launched more quickly, and they use less amounts of RAM.
Congratulations! You’re now equipped with some basic rooting and Android knowledge. Now you can dive into XDA Developers and feel less like a noob. Using your newly acquired knowledge, you can make better informed decisions when looking for a ROM to power your Android device with. Good luck and happy hunting!
Got a rooting term that’s bugging you? Let us know in the comments and we’ll try adding it to our dictionary.
References
Diablo67. (2012, January 27). Android terms, slang & definitions (Read this before posting questions!) [Msg 1]. Message posted to http://forum.xda-developers.com/showthread.php?t=1466228
Gordon, Whitson. (2012, February 21). The always up-to-date guide to rooting the most popular Android phones. Retrieved from http://lifehacker.com/5789397/the-always-up+to+date-guide-to-rooting-any-android-phone
paul-ac. (2011, July 22). [Android ROM dictionary] Newbe friendly [Msg 1]. Message posted to http://forum.xda-developers.com/showthread.php?t=1180477
PolicyWonk. (2011, December 10). Root terms defined – ROM, shell, S-ON, etc. [Msg 1]. Message posted to http://androidforums.com/precedent-all-things-root/461024-root-terms-defined-rom-shell-s-etc.html
Static. (2011, July 30). Rooting dictionary [Msg 1]. Message posted to http://www.theandroidsource.com/questions-answers-forum/536-rooting-dictionary.html
TechCredo. (2011, February 11). Android ROM and rooting dictionary: All the terms explained. Retrieved from http://www.techcredo.com/android/android-rom-and-rooting-dictionary-all-the-funny-words-explained
ALL THE CREDIT GOES TO THEM! THANK YOU GREAT PEOLE
EDIT: 125+ VIEWS AND NO COMMENTS? :O
unlocking fastboot
For the Moderator who moved this thread, please contact me.
Click to expand...
Click to collapse
I am currently working on this: It is a work in progress. Many things will be updated as this goes on. I will publish it before it is ready mainly for you to know that I am doing this and to delete it before it is too late if you think it just isn't as good as I imagine it .
It could be useful to note that the dictionary may not be exactly correct, I can make mistakes and you can correct me too, if you are sure of what you say. Also, keep in mind that I define the concepts by what I understand from them and simplifying the language as much as I can for EVERYONE to understand every word.
Click to expand...
Click to collapse
Credits:
ShortFuse.org - SuperOneClick
ClockWorkMod Installer - rect2409, xda user
Contents:
1. Introduction
2. Dictionary -In permanent update as needed-
3. Getting started
/3.1 - Rooting
/3.2 - Getting your Recovery - CWM Recovery
/3.3 - Avoiding Baseband issues --Uncomplete--
1. Introduction:
Hey there, x10 Mini Pro community. First of all, the cheesy part, I would like to say thanks to the developers that have been in the main scenario since I came here, D4, slade, paul, nAa, TheMiltos, and lots of them whose usernames I should start looking for, but it is not like I do not recognize them. First, you may ask why would I make this thread if there is already another one, made by not less than one of the users I mentioned before. Well, I started on this community like on January 2011, when slade's Gingerbread was brand new and the Froyo ROMs were just getting a bit stable and ready for everyday use. I found it pretty difficult to start, since I've noticed that the support for newbies isn't kinda.. "the way" of xda. At least, when I was one of them, I felt pretty alone on this unknown roads, and also felt guilty to send a PM asking for help, not being able to post - and that was just when I finally decided to create an account... I spent hours and hours searching on Google, watching videos on Youtube, trying to understand what did they meant with all this technical language -disregarding the fact that my native language doesn't help at all (Luckily, my English is pretty good)-, reading blogs, and so on. I had to keep this intensive study for several weeks to, finally, get my very first custom recovery installed. And that was just the first step. Besides my own experiences -which are, by the way, the main reason for me to start thinking about a thread like this-, I noticed that all the particular problem solution threads just get lost within a month.
So, what am I looking for with this thread? What are the objectives?
-Full and friendly support for newbies to ask and be answered.
-Freedom to PM.
-Detailed step-by-step instructions, maybe even with screenshots later on.
-Some kind of a "dictionary" with words all over the Android development spectrum.
-Updated information.
-Make all of those lost tutorials and guides spread all over the x10 Mini Pro forums be compressed in one simple and extensive help center.
-End with the experienced ones complaining about newbies questions infinite cycle by creating this "encyclopedia".
-Maybe, just as an early idea, we could create a support team, whose purpose is pretty self-explanatory.
-Hope to add more objectives on the future.
2. Dictionary:
-Android Versions: Check Wikipedia for closer details on each version.
--> Cupcake 1.5: First public version of Android.
--> Donut 1.6: Initially the Stock version for our phones.
--> Eclair 2.1: Updated Stock version for our phones.
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3.x: Most widely used version by the moment.
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.0.x: Hybrid version, designed to unify Cellphones and Tablets OS.
--> Jelly Bean 4.1.x: It is still a rumor and it has not be released nor even confirmed yet, but it is still very likely to be true.
-APK: File extension used for Android-based applications. You can use them to install a specific application if you want to install it manually and not from the Market.
-Back-Up: It is a file made via Recovery that saves the ROM along with all the user data (Settings, applications, contacts, text messages...) on your SD to recover it later, just in case that something went wrong. It is sometimes referred as NAND Backup. NOTE: Every Back-Up is pretty heavy, and if you make another does not delete the previous one, so I recommend to delete the old/unneeded ones to save space on your SD.
-Boot: To turn on your phone.
-Bootloader: It is a part of the operating system that boots up your device and sets everything up to load Android, so your phone can boot and start as usual. Unlocking it allows us to flash custom kernel, which usually come with improvements compared to stock one.
-Brick: A Bricked device is a device that won't boot. It can be a full brick, when the phone just does not turns on, or a partial brick, where it turns on but it can not get to fully boot. A partially bricked phone can behave in many different ways while booting, for example, sometimes they get frozen at the Bootloader or sometimes they make a Bootloop. To Unbrick your phone means to get it back to normal from this state.
-CyanogenMod: Most commonly called by it's abreviation, CM. It is the most famous Android-based custom ROM, with both official ports to many devices and unofficial ports to almost every Android phone.
-Flash: To flash. It means to install something on your phone, this something can be a ROM, a Module for that ROM, can be almost anything. Any file we want to flash will be on a ZIP format, and it is made through your phones Recovery.
-Google Apps: Or GApps. Some of the apps developed by Google. They come in packages to flash them via Recovery. These apps include Android Market/Play Store, Google Maps, Youtube, Gmail, etc.
-Launcher: It is the application that is used by Android to show up your apps, homescreens, wallpapers, widgets, etc. Home Replacement Apps are alternative Launchers for you to install on your phone, and they can offer a major UI change (often used for more personalization).
-Overclocking: Commonly abbreviated OC. To overclock something means to make it run faster than the default speed set by the manufacturer. On computers, it can be applied to almost any component, on phones, it almost always is talking about the processor.
-OS: Short for Operative System. It is the "everything" of a computer. Mac and Windows are two really famous OS's you probably have used more than once. Well, Android is an OS too, and there are other OSs alternatives for phones too like Windows Phone, iOS and Symbian. The difference is much more than in the appearance thou, but it doesn't really matters to go further on this. Android haves different versions, and just like Windows haves Windoes 97, Windows XP, Windows Vista or Windows 7; Android has 1.6 Donut, 2.1 Eclair, 2.3 Gingerbread and 4.0 Ice Cream Sandwich (These are just examples, there are more).
-PC Companion, Flashtool, SEUS:
These are three common tools for your computer to update, flash or un-brick (alias revive) your phone.
--> PC Companion: Program by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: User-made program (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device.
--> SEUS (or Sony Ericsson Update Service): Program by Sony Ericsson to update or repair your official ROM. This is often the last chance to revive your bricked device, making me think if the "S.E.U.S." acronym is unintended or if it is actually made it to sound like the mythical god Zeus.
-Port: A ported ROM is a ROM, both custom or stock, that is available to some specific phone and someone manages to make it work for another device. Usually it includes changes like matching the desired device's screen and supporting it's own hardware.
-Reboot: Just turning off your device and then turning it back on, waiting patiently for it to completely load everything.
-Recovery: I usually call it a BIOS for my phone. It is not an application like Facebook or SMS, it is a program that can be optionally started while booting by pressing a certain key, in our case, we have to button-mash the "Back" button (Gamers will get that, it means to repeteadly tap the button). Your phone will enter a menu with black background and orange letters. Touch screen is not available here and the Menu button, the left one, serves no purpose at all. To control everything, you use the volume buttons at the side of your phone as Up/Down respectively, the Home button (the middle one) works as Enter and the Back button, the right one, is used to go back, as you might imagine. Recoveries are used to flash any flashable file to your phone. To exit and return your phone to normal, just back until the main menu and select Reboot Phone. It will reboot normally, and CWM will not show up unless you call for it with the back button.
-ROM: Its basically the OS that we install in our phones. It can be Custom or Stock: Stock ROM is the version that came with our phone, created by Google and then modified by your phone's brand company and then by your carrier, to go to your phone on it's original closed package. Also we have Custom ones, that are user-modified versions of Android. Every ROM in xda is a Custom ROM because they are developed by the user who uploaded it. We call it ROM because it resides in the ROM (Read-Only Memory) of our devices.
-Root: The first thing you must do over any Android device to get the full potential of itself, is rooting. Android, in basic terms, is based on Linux. Yes, that OS for computers you've probably heard of (If not, don't worry. You don't need to know about it.). And it is running just in your hand. On Linux, you need to get SuperUser permissions over a set password to make changes on the computer like installing programs and such things. On Android, you do not get his password and by default it is blocked, and rooting your phone means that you get this SuperUser access. Yes, if you are the one who goes exploring the phone 'till the last folder and modifying everything you possibly can, you will surely mess your phone up. But don't worry, if you just Root your phone and let TRUSTED apps to do their stuff, you are safe. What do I mean by trusted? With Root permissions you can do whatever you want on your phone, and so do Applications. You should just install applications whose developer you know you can trust, such as xda or market developed applications. Remember to always check the comments or posts people do reviewing their experience with that application, and beware if anyone tells so. Anyways, people is not that dumb and they have made the phone ASK for your permission before giving any new app the so called Root access.
-Run: To open a certain program or app. Can be used as "Running" for a certain program or app that is actually open, and so on.
-Stock: It refers to something that comes pre-installed on our devices, available when we just get them from the manufacturers.
-UI: The User Interface is the system shown on the screen of a device for you to interact with it.
-Undervolt: Usually abbreviated UV. It is the opposite of Overclocking, and, on phones, it consists of lowering the default voltage of the processor to make it run slower and thus decrease battery consumption.
3. Getting Started:
3.1 - Rooting
Steps:
-You can't imagine how easy and quick rooting can be. The first step, is to enable "USB Debugging" on your phone. I am going to be honest, I don't know what the **** is this, but keep it enabled. Always. Hehe. To do this, go to Settings and then under the Applications tab. Then, scroll down and go to Development. And there it is, you should tap "USB Debugging" once to get it checked and activated.
-Then, you need this software (Don't worry: it is free and very light, and you can just delete it after root). It is called SuperOneClick and this is the lastest version (2.3.3) until now. This is a screenshot of the interface that I grabbed from the original site. Install and open SuperOneClick, and continue to the next step.
-Now, with the USB Debugging enabled on the phone and SuperOneClick running on your computer, grab your USB cable that should have come along with your phone as your charger and connect with it your PC and your phone. On the phone it should show a message asking what to do, you should tap the option to charge the phone (This option is kinda "do nothing", it is the same as charging it from the wall). Now, go to SuperOneClick and click the big "ROOT" button. It should do all the work, so your task is to wait. Wait until it says it is ready and rooted, and then reboot your phone.
-Voile! Your phone is now rooted.
3.2 - Getting your Recovery - CWM Recovery
Steps:
-First, download this little program. It is a small Batch file (Commands for Windows) made by a user on this community called rect2409. On the original thread -Link under credits- you have a Linux version of this program, but I'm afraid have never used it and you will have to figure it out by yourself (Linux experienced-users encouraged to review over here). Extract the ZIP file and go into the folder you just extracted.
-Open install.bat. Batch files can be dangerous on the wrong hands but very useful on the right ones, so if any anti-virus or some kind of a security system tries to block this from working, tell them it is safe. You have my word (It wasn't even uploaded by me, so you can be sure I'm doing no trick here ). It will open a small black window with white text, follow it's instructions and answer it's questions. When it asks you for yes or no (Y/N), you have to write Y for yes or N for no and then press enter.
-When it says "If no errors are listed above then CWM has been installed. Finished.", you can close the window and delete everything you downloaded if you want. Everything you need on your phone is now there, so there's no problem if you want to delete this stuff.
-If you want to access CWM (That's how your new Recovery is called), you have to reboot your phone and at the "Sony Ericsson" text screen, press the "Back" button several times.
3.3 - Avoiding Baseband issues --Uncomplete--
Intro:
Your Baseband is a pretty large code that can be checked on your phone by going to settings and scrolling sown to "About phone". There, just like it says your Android version on a grey section, it should say your Baseband version on another. It should be a large code using both letters and numbers in a format like this ?????-????????-????? (? representing anything and - being itself, whatever it is called -I don't know it's english name-). What really matter are the last three digits, that have to be -015. If you have that, skip this step, because you are already done: The problem is when you have -006 (Like I had) or anything else, if it is possible. The point is that you NEED -015 Baseband version.
Steps:
-Of course, first make sure you have a wrong version of the Baseband, if you have the correct one, skip section.
-When you are sure you need to change your baseband, you have to change your "build.prop". Build.prop is a file hidden by the system, accessible via Root, that holds and manages some information and configuration about the phone. So, the first thing you need to do, is to get...
---To be continued---
Users who have helped:
karthiks.840 - ImInMunichBitch -
Click to expand...
Click to collapse
For Dictionary,
-ROM: Its basically the OS, we call it ROM because it resides in the ROM of our devices.
-Flashing: To install a new ROM. Basically any ROM will be in a zipped format. It can be flashed via any "Recovery".
-Recovery: A piece of program that can be optionally started on booting (In our devices by pressing "Back" button multiple times, when the device is turned on)
Just a quick suggestion: Everything you so far wrote is also applicable to the Robyn (X10Mini, E10i). If you keep it this general, you might consider posting this in the General Section, and maybe a mod could make it a sticky. Since this is not really about actual development, it looks kind of out of place in the development thread.
But keep up the good work
@nico444164: Thanks nico444164! This is probably the BEST thing I have ever seen on XDA - and I've been here since Mikevhl 's FroYo rom early 2011 (he was one of the main devs for x10 mini Pro) , followed by owain94 , slade87 , and paul-xxx who all slowly took over (over their predecessor's) one after another, slowly. I've never seen such a noob-friendly guide here at xda and I agree with your sentiment about it just not "being the way" it is here at xda. Frankly, it should be though and this thread by you is a hopefully a good indicator of/catalyst for xda slowly changing for the better. Cheers nico444164!
Suggestions for dictionary:
CyanogenMod:
Most famous Android-based custom rom of all times with many official and unofficial ports for many Android devices.
Brick:
Device doesn't boot anymore (fullbrick) or partially (halfbrick --> often bootloop to SE logo). Caused by wrong or incompatible changes in system related parts of Android (or many others as we know by now).
Stock:
--> Stock Rom: the operating system of our devices, how we get it from the manufacturer
--> Stock Kernel: same as Rom
Bootloader:
That part of the operating system, which boots up your device and sets everything on boot, so your Android can work as usual.
Unlock it allows us to flash custom kernel with improvements compared to stock one.
PC Companion, Flashtool, SEUS:
All three are tools for your computer to update, flash or revive your phone.
--> PC Companion: Programm by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: custom programm (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device
--> SEUS (or Sony Ericsson Update Service): Programm by SE to update your official rom (often the last chance to revive your bricked device)
Back Up:
Same as on a computer; saves the rom and its settings on your SD to recover it, when something went wrong (all usually via Recovery).
Android Versions:
--> Eclair 2.1: Stock version for our phones
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3: Mostly used version for our custom roms
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.x: Hybrid version for phones and tablets
APK:
File extension used for android based applications, if you want to install them manually and not from the market.
Launcher, Home Screen Replacement:
The application that is used by android to show up your apps, homescreens etc. Replacement apps take over those things (often used for more personalization).
A2SD, APP2SD, Link2SD:
Apps that allow you to free up your system memory by moving (non system) apps to your SD. Many custom roms implemented this in native settings.
GAPPS:
Commonly used google apps. Often in packages to flash them via recovery after installing a custom rom.
(Market/Playstore, Maps, Youtube etc.)
OC, UV:
-->Overclock (OC): used to get higher cpu values (decrease battery life but may increase performance).
-->Undervolt (UV): used to get better battery life by decreasing the voltage used by the cpu.
Just a few suggestions for this thread here.
I like the idea, would be a good sticky to new users, because this forum is
so high under development that many users forget that new ones may never heard of basic android knowledge.
Corrections are always welcome, hope my english is not that bad
Keep it up.
Marius
karthiks.840 said:
For Dictionary,
-ROM: Its basically the OS, we call it ROM because it resides in the ROM of our devices.
-Flashing: To install a new ROM. Basically any ROM will be in a zipped format. It can be flashed via any "Recovery".
-Recovery: A piece of program that can be optionally started on booting (In our devices by pressing "Back" button multiple times, when the device is turned on)
Click to expand...
Click to collapse
Added! Just changed some words I just thought should make a section for the users that help. Will do that in a few minutes.
SmG67 said:
Just a quick suggestion: Everything you so far wrote is also applicable to the Robyn (X10Mini, E10i). If you keep it this general, you might consider posting this in the General Section, and maybe a mod could make it a sticky. Since this is not really about actual development, it looks kind of out of place in the development thread.
But keep up the good work
Click to expand...
Click to collapse
Actually, that rooting process is kinda global. I thought about making this post a bit more general, but I wanted to start by little and taking my time, so maybe in the future I will ask someone to change it to General and I will add some info about each phone in details, if this gets to grow enough.
Also, I thought maybe this wasn't the place since it is not development, but:
-As a noob, I just checked this thread since I thought the others were exclusive for the Robyn.
-This is still particular to Mimmi.
-I have seen several tutorials and guides related to this on the Mini Pro development section, so I thought that if I am not the only one and it doesn't really hurts to have it here, it should be no problem. Besides, if this didn't work and get to be a real fail, it will just be forgotten with every other old posts out there
nightwing369 said:
@nico444164: Thanks nico444164! This is probably the BEST thing I have ever seen on XDA - and I've been here since Mikevhl 's FroYo rom early 2011 (he was one of the main devs for x10 mini Pro) , followed by owain94 , slade87 , and paul-xxx who all slowly took over (over their predecessor's) one after another, slowly. I've never seen such a noob-friendly guide here at xda and I agree with your sentiment about it just not "being the way" it is here at xda. Frankly, it should be though and this thread by you is a hopefully a good indicator of/catalyst for xda slowly changing for the better. Cheers nico444164!
Click to expand...
Click to collapse
Thanks for your message and support! And yeah, I hope noobs can find their basic ways here on xda, at a single and simple thread, as you might have wanted. I did, at least It would be only better if we could include all this novice people into this real complex world of development, even just as users.
ImInMunichBitch said:
Suggestions for dictionary:
CyanogenMod:
Most famous Android-based custom rom of all times with many official and unofficial ports for many Android devices.
Brick:
Device doesn't boot anymore (fullbrick) or partially (halfbrick --> often bootloop to SE logo). Caused by wrong or incompatible changes in system related parts of Android (or many others as we know by now).
Stock:
--> Stock Rom: the operating system of our devices, how we get it from the manufacturer
--> Stock Kernel: same as Rom
Bootloader:
That part of the operating system, which boots up your device and sets everything on boot, so your Android can work as usual.
Unlock it allows us to flash custom kernel with improvements compared to stock one.
PC Companion, Flashtool, SEUS:
All three are tools for your computer to update, flash or revive your phone.
--> PC Companion: Programm by Sony Ericsson to update and save your Rom or parts (settings etc.) or to send media on your device
--> Flashtool: custom programm (credits to Androxyde and Bin4ry) to root, flash and set up many more things on your device
--> SEUS (or Sony Ericsson Update Service): Programm by SE to update your official rom (often the last chance to revive your bricked device)
Back Up:
Same as on a computer; saves the rom and its settings on your SD to recover it, when something went wrong (all usually via Recovery).
Android Versions:
--> Eclair 2.1: Stock version for our phones
--> Froyo 2.2: Follow up to Eclair with some modifications
--> Gingerbread 2.3: Mostly used version for our custom roms
--> Honeycomb 3.x: Version mostly for tablets
--> Ice Cream Sandwich: 4.x: Hybrid version for phones and tablets
APK:
File extension used for android based applications, if you want to install them manually and not from the market.
Launcher, Home Screen Replacement:
The application that is used by android to show up your apps, homescreens etc. Replacement apps take over those things (often used for more personalization).
A2SD, APP2SD, Link2SD:
Apps that allow you to free up your system memory by moving (non system) apps to your SD. Many custom roms implemented this in native settings.
GAPPS:
Commonly used google apps. Often in packages to flash them via recovery after installing a custom rom.
(Market/Playstore, Maps, Youtube etc.)
OC, UV:
-->Overclock (OC): used to get higher cpu values (decrease battery life but may increase performance).
-->Undervolt (UV): used to get better battery life by decreasing the voltage used by the cpu.
Just a few suggestions for this thread here.
I like the idea, would be a good sticky to new users, because this forum is
so high under development that many users forget that new ones may never heard of basic android knowledge.
Corrections are always welcome, hope my english is not that bad
Keep it up.
Marius
Click to expand...
Click to collapse
Adding them right now And about the last thing you said, yes, it is so hard to join this community as you may all know, at least for users with no knowledge at all over any complex computer language. I consider myself an advanced-user, and even as that I had troubles at getting started. I can't imagine how hard it would be for a non-geek to flash something on their phones! EDIT: Added!
A very good guide for newbies! Will help a lot of people here! Ah, the old days, I remember, the first time I tried installing xREC I messed up and it wouldn't boot, scared the **** outta me xD had to do some reasearch before I could get back to normal. So this would be of great help!! Keep up the effort!
P.S: debugging mode is actually development mode. It allows transfer of data between the PC and the mobile. That's how you are able to run adb commands ( things like rooting, pushing APKs etc.) through the PC onto the phone!
Sent from my U20i using XDA
Wow... The guide is so complete... Even I don't know what I can add there xD
Hmm... How about adding some simple default tricks ?
I found that several user are asking how to backup their data... How about telling them how to upload their phonebook data to gmail and backup their apps through titanium backup ?
I think we can have some "unlocking bootloader" infos in here, as latter ROMs need to have custom kernel installed...
You can refer about the steps to unlocking bootloader in here :
http://forum.xda-developers.com/showthread.php?t=1462278
Hope that helped everyone
speedsys said:
A very good guide for newbies! Will help a lot of people here! Ah, the old days, I remember, the first time I tried installing xREC I messed up and it wouldn't boot, scared the **** outta me xD had to do some reasearch before I could get back to normal. So this would be of great help!! Keep up the effort!
P.S: debugging mode is actually development mode. It allows transfer of data between the PC and the mobile. That's how you are able to run adb commands ( things like rooting, pushing APKs etc.) through the PC onto the phone!
Sent from my U20i using XDA
Click to expand...
Click to collapse
Yees! That old days haha! I did exactly the same, me and my friend got our pretty new phones bricked
, so we were kinda.. O.O! Oh, divine SEUS. And about the Debugging stuff, I will add it tomorrow - Its kinda 2am here and tomorrow is another fun Wednesday to keep the awesome routine, hurray.
StardustGeass said:
Wow... The guide is so complete... Even I don't know what I can add there xD
Hmm... How about adding some simple default tricks ?
I found that several user are asking how to backup their data... How about telling them how to upload their phonebook data to gmail and backup their apps through titanium backup ?
I think we can have some "unlocking bootloader" infos in here, as latter ROMs need to have custom kernel installed...
You can refer about the steps to unlocking bootloader in here :
http://forum.xda-developers.com/showthread.php?t=1462278
Hope that helped everyone
Click to expand...
Click to collapse
It is not a bad idea to add the tricks, but this is quite a big job and I would like to finish keep my objectives clear and then start thinking of adding something else haha And bout the bootloader, yes, it will be added, my plan is to cover every single change available to your phone from complete Stock, Rooting and Installing Recoveries already written. Next I will introduce Custom ROMs, flashing aditional features like Hotfixes or Modules for specific ROMs, unlocking Bootloader, Custom Kernels, and so on. And maybe reviews about the best ROMs for the user to choose from what he best likes. Something like that is what I have in mind by now.
Sent from my U20i using XDA
Install CWM : error: protocol fault (no status)
rooted xperia X10 mini.
USB debug on
phone connected to pc in charge mode.
When I run install.bat for CWM (3.2 in manual), I get an error during first exploit. Here's the complete trace from install.bat:
Code:
ClockWorkMod Recovery Installer for X10 Mini Pro by rect2409.
Requirements and credits are listed in the README.txt file.
Please make sure requirements are met before continuing.
Please make sure that your phone is connected to your PC and USB debugging is en
abled.
Press any key to continue...
Is your device ROOTed? (Y/N):y
Starting ADB Server.
* daemon not running. starting it now on port 5037 *
* daemon started successfully *
Pushing exploit to gain ROOT access.
426 KB/s (585731 bytes in 1.341s)
error: protocol fault (no status)
Mount system as R/W.
Do you already have a recovery installed? (Y/N):n
Pushing recovery tar file.
1898 KB/s (5027840 bytes in 2.586s)
Pushing chargemon.
130 KB/s (1341 bytes in 0.010s)
Pushing busybox.
2175 KB/s (735308 bytes in 0.330s)
Setting permissions for recovery tar file.
Setting permissions for chargemon.
Setting permissions for busybox.
Mount system as read only.
Reboot phone.
Stopping ADB Server.
If no errors are listed above then CWM has been installed.
Finished.
After the error is displayed, I got sounds on my pc and phone just like when I disconnect usb then reconnect it. Then the program continue (ask whether a recovery is already installed).
I don't think CWM has been installed: actually, when i press back many times on my phone while starting, nothing happens : normal boot from SE.
Can anybody help ?
Looks like you haven't got the adb drivers so its not actually pushing anything. Can't remember how to install the, now but I think its a package included in flash tool that you use.
X10man
Sent from my Nexus 7 using xda premium
x10man said:
Looks like you haven't got the adb drivers so its not actually pushing anything. Can't remember how to install the, now but I think its a package included in flash tool that you use.
Click to expand...
Click to collapse
I have installed drivers found in flashtool drivers 1.0.2, but still get that same error :
Code:
Pushing exploit to gain ROOT access.
1111 KB/s (585731 bytes in 0.514s)
error: protocol fault (no status)
Please help.
Android ABC
I've gathered some info for newcomers to the Android world.
Copied over from my thread at androidforums...
I've tried to keep it relatively simple. So if you want more info, follow the links!
And please if you want anything added, do post!
I hope this helps someone....
Inventory:
Bootloader
Kernel
CWM
Firmware
Flashing
Rooting
Custom ROMs
ADB
Baseband
Dalvik
init.d
What's A Bootloader?
Taken from: Android 101: What is a bootloader? | Android-Does.com
In literal terms, the bootloader is code that is executed before any Operating System starts to run. Bootloaders basically package the instructions to boot operating system kernel and most of them also have their own debugging or modification environment. Think of the bootloader as a security checkpoint for all those partitions. Because if you’re able to swap out what’s on those partitions, you’re able to break things if you don’t know what you’re doing.
As the bootloader kicks off before any piece of software on your device, it makes it extremely processor specific and every motherboard has it’s own bootloader. This is one reason that all Android phones have different custom ROMS developed due to high variance of processing hardware present on the device.
Android Bootloader
Every Android phone has a bootloader that instructs the operating system kernel to boot normally. But you need to understand one thing here that as Android OS is an open source OS and is available on a variety of different hardware, every manufacturer has their own version of bootloader specific for the hardware present in it’s environment. At its most basic level, your Android smartphone is like a hard drive, made of up several partitions. One of those partitions holds the Android system files, another holds all the app data you accumulate (which is how you’re usually able to update without losing all your stuff), and others to do more behind-the scenes stuff.
A lot has been said about bootloaders being “locked” and even the developer-friendly Nexus devices shipped with a locked bootloader (Nexus devices and a couple tablets are easily unlocked with a single command).In fact, a lot bootloaders are locked and encrypted, meaning simple commands like “fastboot oem unlock”, won’t do a thing.
Why are Bootloaders Locked?
A bootloader is usually locked on an Android device because although it’s an open source OS, still the manufacturers want you to stick to their Android OS version specifically designed for the device. In order to apply this concept, manufacturers lock the bootloader. With a locked bootloader on Android devices, it is virtually impossible to flash a Custom ROM and forced attempts void warranty as well as usually end up in bricks. Therefore, the first step is to always unlock the bootloader.
Why keep a bootloader out of reach? One of the biggest reasons is that the carriers and manufacturers don’t want to have to support hacked phones. The other is that a lot of time and money is spent developing these things. HTC Sense ain’t cheap. Neither is TouchWiz. But Samsung and HTC both have managed to find a middle ground with the modding community, and pressure is on other companies to do so as well.
Also a very good read about bootloaders: http://www.tested.com/news/feature/1879-know-your-android-bootloaderwhat-it-is-and-why-it-matters/
---------------------------------------------------------------------------
What's a kernel?
Taken from: Android A to Z: What is a kernel? | Android Central
A kernel isn't something unique to Android -- iOS and MacOS have one, Windows has one, BlackBerry's QNX has one, in fact all high level operating systems have one. The one we're interested in is Linux, as it's the one Android uses. Let's try to break down what it is and what it does.
Android devices use the Linux kernel, but it's not the exact same kernel other Linux-based operating systems use. There's a lot of Android specific code built in, and Google's Android kernel maintainers have their work cut out for them. OEMs have to contribute as well, because they need to develop hardware drivers for the parts they're using for the kernel version they're using. This is why it takes a while for independent Android developers and hackers to port new versions to older devices and get everything working. Drivers written to work with the Gingerbread kernel on a phone won't necessarily work with the Ice Cream Sandwich kernel. And that's important, because one of the kernel's main functions is to control the hardware. It's a whole lot of source code, with more options while building it than you can imagine, but in the end it's just the intermediary between the hardware and the software.
When software needs the hardware to do anything, it sends a request to the kernel. And when we say anything, we mean anything. From the brightness of the screen, to the volume level, to initiating a call through the radio, even what's drawn on the display is ultimately controlled by the kernel. For example -- when you tap the search button on your phone, you tell the software to open the search application. What happens is that you touched a certain point on the digitizer, which tells the software that you've touched the screen at those coordinates. The software knows that when that particular spot is touched, the search dialog is supposed to open. The kernel is what tells the digitizer to look (or listen, events are "listened" for) for touches, helps figure out where you touched, and tells the system you touched it. In turn, when the system receives a touch event at a specific point from the kernel (through the driver) it knows what to draw on your screen. Both the hardware and the software communicate both ways with the kernel, and that's how your phone knows when to do something. Input from one side is sent as output to the other, whether it's you playing Angry Birds, or connecting to your car's Bluetooth.
It sounds complicated, and it is. But it's also pretty standard computer logic -- there's an action of some sort generated for every event. Without the kernel to accept and send information, developers would have to write code for every single event for every single piece of hardware in your device. With the kernel, all they have to do is communicate with it through the Android system API's, and hardware developers only have to make the device hardware communicate with the kernel. The good thing is that you don't need to know exactly how or why the kernel does what it does, just understanding that it's the go-between from software to hardware gives you a pretty good grasp of what's happening under the glass. Sort of gives a whole new outlook towards those fellows who stay up all night to work on kernels for your phone, doesn't it?
---------------------------------------------------------------------------
What's CWM?
Taken from: AddictiveTips » Blog ArchiveWhat Is ClockworkMod Recovery And How To Use It On Android [Complete Guide]
ClockworkMod, abbreviated as CWM, is a popular custom recovery for Android phones and tablets developed by Koushik Dutta (Koush), a well-known name in the Android dev community. ClockworkMod recovery allows you to perform several advanced recovery, restoration, installation and maintenance operations on your Android device that aren’t possible with the stock recovery, and is one of the most common ways used to gain root access, back up device data, install a custom ROMs, kernels, themes, mods and more. However, for anyone new to Android customization and hacking, some of its options might prove to be a tad confusing. In what follows, we will cover all that this recovery is capable of doing, and how to do it.
About Android Recovery
All Android devices ship with a recovery console that is basically a partition on the device’s internal memory and can be booted into. The stock recovery of almost all Android devices provides a few basic yet handy options that allow you to factory reset your device and also to recover its operating system using an official ROM in zip format, but that’s all you can do with it. That’s where a custom recovery comes handy.
A custom Android recovery basically replaces the stock recovery with one that lets you do all you can do with the stock recovery, plus a plethora of more options to give you a lot more control on your device. With a custom recovery, you can install official and unofficial ROMs as well as other updates including apps, themes, kernels etc. using zip files, wipe not just user data but pretty much every partition on your device, mount the storage card for USB mass storage access without leaving recovery, partition your SD card, wipe Dalvik cache and battery stats, fix permissions, perform, manage and restore backups and so on.
Introduction To ClockworkMod
ClockworkMod recovery is one of the most widely used custom Android recoveries that is available for most mainstream Android devices. It is our custom recovery of choice here at AddictiveTips and almost every custom ROM that we install on our devices is done using this recovery.
ClockworkMod recovery has been developed by Koushik Dutta (also known as Koush) – the same guy who brought us the Android ROM Manager. He can be found at his blog hacking away at Android devices and at Twitter.
CWM options explained:
[REF] CWM - Clockworkmode menu options & Partitions– GENERAL KNOWLEDGE - xda-developers
---------------------------------------------------------------------------
What's Firmware?
Taken from: What is Firmware, Rom and Firmware Flashing ? - I Teach Android
What the heck is this firmware? Definition of firmware is permanent software programmed into a read-only memory
In Simple words, you can understand it like windows for pc , in case of android we are going to do same thing – installing firmware (Froyo,Gingerbread, ICS, Jelly Bean etc.) on your phone. All phones have their different firmwares and installing tools regard less to the Andriod version (Froyo,Gingerbred). So never think that we can install any firmware on any android phone like we do in PCs.
Wiki link for even more info: Firmware - Wikipedia, the free encyclopedia
---------------------------------------------------------------------------
What's Flashing?
Flashing refers to the overwriting of existing data on ROM modules present in an electronic device with new data. This can be done to upgrade a device or to change the provider of a service associated with the function of the device, such as changing from one mobile phone service provider to another or installing a new operating system.
In simple words flashing is called installing firmware on your phone.
---------------------------------------------------------------------------
What's Rooting?
Taken from: Rooting for Android: What, why and how? | Ubergizmo
WiKi link: https://en.wikipedia.org/wiki/Rooting_(Android_OS)
When carriers and manufacturers sell you your device, it is almost certain that the device would come with certain software restrictions in place. There are a variety of different reasons why they might do that – some claim that this is done to protect the user, preserve the device’s warranty (this policy will vary from manufacturer to manufacturer), prevent users from getting rid of carrier bloatware apps or simply because the manufacturer would prefer if your device was distinguishable from the competition based purely on its user interface (i.e. Samsung’s TouchWiz, HTC Sense UI, etc).
Whatever their reasoning may be, chances are if you are looking to customize your device on a deeper level, you’d be out of luck and this is where rooting comes into play.
Rooting is essentially a process that allows users of smartphones, tablets or other devices running on Android to gain “superuser” access to the software. This will allow the user to perform administrative tasks such as writing to locations normally restricted by the system which in turn will allow for deeper customization. For iOS users, rooting on Android devices could be thought of as a close equivalent to jailbreaking your device.
---------------------------------------------------------------------------
What are custom ROMs?
Taken from: Custom ROMs For Android Explained - Here Is Why You Want Them
A stock ROM is the version of the phone's operating system that comes with your phone when you buy it.
A custom ROM is a fully standalone version of the OS, including the kernel (which makes everything run), apps, services, etc - everything you need to operate the device, except it's customized by someone in some way.
So what does the "customized" part mean? Since Android is open source, developers are free to take stock ROMs, modify them, strip them of garbage, optimize them, add things, and pretty much do whatever their imagination and skills allow.
---------------------------------------------------------------------------
What is ADB?
Taken from: Android 201: What is adb? | Android Central
According to Google "Android Debug Bridge (adb) is a versatile tool lets you manage the state of an emulator instance or Android-powered device." That certainly sounds like Google, doesn't it? To put it simply, adb is two different applications -- one running on your computer (Windows, Linux or Mac) and one running on your phone. When your phone is connected, and USB debugging is enabled, you can issue commands and communicate with the phone using your computer screen and keyboard.
Your Android phone uses a modified Linux kernel and tools as a base. This means that quite a few Linux commands can be sent via the adb server (the one running on your computer) to the adb client (the one running on your phone) and they will be executed. In our example picture, I've sent the "top" command over the wire to my phone, and my phone sent me back the information and printed it to my terminal.
This can be awfully handy for debugging things that aren't going right, as well sending those weird commands you need when you're hacking away in the middle of the night. Chances are, if you aren't actively debugging something or trying to break hack at your phone, you won't have much use for adb. And that's OK -- there's more than one way to have fun with an Android device.
----------------------------------------------------------------------------
What's baseband?
Baseband is the Radio or Modem version depending upon the Phone Model, Carrier and Android Software Stack version. The Radio/Modem file is flashed via Recovery tool (other options are ADB/ODIN). The mismatched Radio/Modem and ROM will lead to things not working. You need to find the matching Radio/Modem for the particular ROM you are running.
The radio firmware controls basic low-level functions like network connectivity, Wi-Fi, and GPS. Upgrading Radio firmware will fix connectivity issues, increase range or performance, decrease battery usage, etc. Incorrec tRadio frimeware can disable some functions in your phone such as MMS, 3G Data, VM Notifications, etc. Network operators/carriers select the correct version of the Radio firmware that is suitable for the phone, network and bandwidth.
There is also Modem and Baseband Radio Processor chipsets in Mobile phones. Usually, Google, Phone Manufacturers and carriers develop various types of modem firmware/software that controls the functions of these chipsets.
Firmware is the overall version of the Android system on your phone. Baseband version is the version of the radio embedded in the device. Since Android is based on the Linux operating system, they show you the current version of the Kernel used in the heart of the system. The Build number is just an indicator of which numerical version of the current overall system was built by developers for your device.
You cannot update any of these from the official web site. Updates to the Android system are pushed to the phone over-the-air by the manufacturer or the cell phone carrier. The only other way to update or change an Android phone it to install custom modified ROMs in place of the existing system firmware. That usually requires rooting the phone and a fairly considerable knowledge of how to hack hardware.
----------------------------------------------------------------------------
What's Dalvik?
http://www.techopedia.com/definition/4262/dalvik
http://butterflydroid.wordpress.com/2011/09/22/what-is-dalvik-vm-heapsize-benefits-and-downfalls/
Dalvik is named after a fishing village in Iceland where ancestors of Dan Bornstein, the person who wrote the VM’s original code, lived. Dalvik is designed for fast execution speeds and operatation in resource-constrained environments like those in mobile devices (with limited memory, CPU and battery power). A Dalvik VM is designed to run multiple instances of itself with each instance hosted on its own separate process and running one application each. When one instance crashes, other concurrently running applications don’t suffer.
Although Android apps are written in Java, they are first compiled into the Dalvik Executable (DEX) format to make them run on the Dalvik VM. DEX files are generally smaller than compressed .JAR (Java Archive) files, making them suitable for mobile devices.
The main difference between Dalvik and a typical Java VM is that the former is register-based while the latter is stack-based. Register-based VMs require fewer instructions than their stack-based counterparts. Although the register-based VMs also require more code, they are generally considered to exhibit faster startups and have better performance than stack-based VMs.
The Dalvik source code license is based on the Apache license. That means, it is free to modify and hence attractive to mobile phone carriers.
What's init.d?
init.d is a folder located at /system/etc
To keep it simple, it allows the user to run scripts at system startup/ boot.
You can adjust many different things/settings with scripts. You can tweak system settings, prolong battery life etc.
To enable init.d and to get some scripts, go here: http://forum.xda-developers.com/showthread.php?t=1881401
----------------------------------------------------------------------------
great job brother, do much to newcomers become familiar with android and they need to know :highfive:
woooow , thats nice and great thread ...... thx ..... but between that , can u continue explain many things like what each android device need to boot up and what the most commen partitions in android devics , and getting deeper in android world ad then give some tut about adb using
thx so much
Good stuff, thanks!
Great guide for android noobie who want to learn how to root
add CID and MID ... ?
Hey -- a really great resource. great work.
could be nice to include CID, MID, etc.
also, would like to understand why ROM has to be built for specific carrier variant of phone.
Example: HTC ONE M8 has multiple different ROM threads -- ATT, Tmobile, Verizon, etc. While I understand there are some small frequencies support differences between an M8_tmobile and M8_Verison, why doesn't a Rooted with S-off M8 care whether it's a ATT or Verizon model?
thx
Thanks iONEx, this post helped me some. I already have 20 years of experience with Linux on PCs and Macs, so I already understood concepts like Bootloader, Kernel, Rooting, Flashing, Firmware, and init.d. I've had to flash a new BIOS on several PC motherboards, so I understand the difference between nonvolatile storage in firmware mounted on an integrated circuit of the motherboard versus nonvolatile storage in a physical spinning magnetic hard drive connected to the motherboard via a SCSI or SATA bus and controller. I rooted my first Android (a Motorola Atrix) a year ago, so I also understand CWM, Custom ROMs, and ADB. But your explanation of Baseband and Dalvik was new and helpful to me.
Right now I'm running Paranoid Android on my Oneplus One and using the Settings app in it, I see that I have Android version 4.4.4, ParanoidAndroid version 4.6-BETA6, Baseband version MPSS.DI.2.0.1..., Kernel version 3.4.0-ParanoidAndroid (Mon Nov 3 21:55:14 UTC 2014), Build number pa_bacon-userdebug...).
I found your post while trying to understand more about my OPO that I rooted a few days ago. I installed TWRP, F-Droid, Busybox, MultiROM, and a few other major customizations on it, but I feel like there's still a whole lot that I don't understand at all. For example, in this thread [forums.oneplus.net/threads/unofficial-beanstalk-rom-for-bacon-lollipop-5-02-r1.247146/#post-9394373] I commented that I was unable to get Beanstalk 5.0.2 to function reliably on my OPO.
From chineel's reply "The Steps To Have Better Experience With OnePlus One With Lollipop ROMs" though, I realized that I must still be missing some important concepts, so I started searching for a comprehensive picture of my OPO and of Android phones in general, and although your post helped some, I'm still looking for a much more comprehensive understanding of this device.
I do understand that the nonvolatile storage in my phone must be partitioned into several mutually exclusive sections and that's how it's possible for me to wipe (using TWRP) all of the partitions (Dalvik Cache, System, Data, and Cache) except Internal Storage and flash a new ROM like Beanstalk and yet I still have the contents of /sdcard/ as they were before I wiped and flashed. Obviously, /sdcard/ as mounted in ParanoidAndroid and Beanstalk must be on the Internal Storage partition that did not get wiped.
But when chineel wrote that I should download latest “Cm Nightly” and “(CM Nightly Is for Modem and firmware Update only ) you can Just Flash Firm ware Update [s.basketbuild.com/filedl/devs?dev=chineel&dl=chineel/BeanStalk/bacon/Full-CM-12.01.18-modem-flashable.zip] Instead of...”, that's when I realized that when I flashed a new ROM, I was apparently still leaving something aside from the Internal Storage partition untouched: the modem/baseband/radio?
And so if I flash the latest CM nightly from [download.cyanogenmod.org/?device=bacon&type=] then I'll end up doing what I have not been doing before which is to also change the modem/baseband/radio. Is that right?
So then if I flash a new ROM (like Beanstalk) AFTER flashing the CM Nightly, then I'll be replacing the ROM (from the CM Nightly to Beanstalk), but I won't be changing again the modem/baseband/radio that was changed when I flashed the CM Nightly. Is that right?
If so, then where in this partition system is the modem/baseband/radio firmware (which is apparently separate from the whole ROM) stored in nonvolatile storage? Is it also on Internal Storage? Or is it stored on a separate integrated circuit (like the BIOS is on a PC) or on some other hidden partition?
And what about flashing the kernel? When I flashed my PA ROM, I got a new kernel with it, without explicitly installing from TWRP a new kernel. So sometimes flashing a ROM gives you a new kernel and sometimes flashing a ROM does not change the existing kernel? Is that right? And so is it also possible to flash a ROM and then subsequently flash a kernel and that second flash replaces the kernel that was part of the ROM of the first flash?
I just need to understand where all of this information is getting stored (in which partitions). I know I flash a ROM, then I flash GAPPS, then I flash a kernel, then I flash a modem/radio/baseband. But I can't tell; is all that software going to the System partition? If so, then why don't all the later flashes completely write over all the earlier flashes?
TL;DR
My real question here is what to read for a comprehensive explanation of all these pieces and how they fit together and why flashing sometimes replaces something that was there before, but it doesn't replace everything (like the modem/radio/baseband)? I think I need a book or something. Can you recommend one?
Thanks, and sorry for the long post.
iONEx said:
Android ABC
I've gathered some info for newcomers to the Android world.
Copied over from my thread at androidforums...
I've tried to keep it relatively simple. So if you want more info, follow the links!
And please if you want anything added, do post!
I hope this helps someone....
Inventory:
Bootloader
Kernel
CWM
Firmware
Flashing
Rooting
Custom ROMs
ADB
Baseband
Dalvik
init.d
What's A Bootloader?
Taken from: Android 101: What is a bootloader? | Android-Does.com
In literal terms, the bootloader is code that is executed before any Operating System starts to run. Bootloaders basically package the instructions to boot operating system kernel and most of them also have their own debugging or modification environment. Think of the bootloader as a security checkpoint for all those partitions. Because if you’re able to swap out what’s on those partitions, you’re able to break things if you don’t know what you’re doing.
As the bootloader kicks off before any piece of software on your device, it makes it extremely processor specific and every motherboard has it’s own bootloader. This is one reason that all Android phones have different custom ROMS developed due to high variance of processing hardware present on the device.
Android Bootloader
Every Android phone has a bootloader that instructs the operating system kernel to boot normally. But you need to understand one thing here that as Android OS is an open source OS and is available on a variety of different hardware, every manufacturer has their own version of bootloader specific for the hardware present in it’s environment. At its most basic level, your Android smartphone is like a hard drive, made of up several partitions. One of those partitions holds the Android system files, another holds all the app data you accumulate (which is how you’re usually able to update without losing all your stuff), and others to do more behind-the scenes stuff.
A lot has been said about bootloaders being “locked” and even the developer-friendly Nexus devices shipped with a locked bootloader (Nexus devices and a couple tablets are easily unlocked with a single command).In fact, a lot bootloaders are locked and encrypted, meaning simple commands like “fastboot oem unlock”, won’t do a thing.
Why are Bootloaders Locked?
A bootloader is usually locked on an Android device because although it’s an open source OS, still the manufacturers want you to stick to their Android OS version specifically designed for the device. In order to apply this concept, manufacturers lock the bootloader. With a locked bootloader on Android devices, it is virtually impossible to flash a Custom ROM and forced attempts void warranty as well as usually end up in bricks. Therefore, the first step is to always unlock the bootloader.
Why keep a bootloader out of reach? One of the biggest reasons is that the carriers and manufacturers don’t want to have to support hacked phones. The other is that a lot of time and money is spent developing these things. HTC Sense ain’t cheap. Neither is TouchWiz. But Samsung and HTC both have managed to find a middle ground with the modding community, and pressure is on other companies to do so as well.
Also a very good read about bootloaders: http://www.tested.com/news/feature/1879-know-your-android-bootloaderwhat-it-is-and-why-it-matters/
---------------------------------------------------------------------------
What's a kernel?
Taken from: Android A to Z: What is a kernel? | Android Central
A kernel isn't something unique to Android -- iOS and MacOS have one, Windows has one, BlackBerry's QNX has one, in fact all high level operating systems have one. The one we're interested in is Linux, as it's the one Android uses. Let's try to break down what it is and what it does.
Android devices use the Linux kernel, but it's not the exact same kernel other Linux-based operating systems use. There's a lot of Android specific code built in, and Google's Android kernel maintainers have their work cut out for them. OEMs have to contribute as well, because they need to develop hardware drivers for the parts they're using for the kernel version they're using. This is why it takes a while for independent Android developers and hackers to port new versions to older devices and get everything working. Drivers written to work with the Gingerbread kernel on a phone won't necessarily work with the Ice Cream Sandwich kernel. And that's important, because one of the kernel's main functions is to control the hardware. It's a whole lot of source code, with more options while building it than you can imagine, but in the end it's just the intermediary between the hardware and the software.
When software needs the hardware to do anything, it sends a request to the kernel. And when we say anything, we mean anything. From the brightness of the screen, to the volume level, to initiating a call through the radio, even what's drawn on the display is ultimately controlled by the kernel. For example -- when you tap the search button on your phone, you tell the software to open the search application. What happens is that you touched a certain point on the digitizer, which tells the software that you've touched the screen at those coordinates. The software knows that when that particular spot is touched, the search dialog is supposed to open. The kernel is what tells the digitizer to look (or listen, events are "listened" for) for touches, helps figure out where you touched, and tells the system you touched it. In turn, when the system receives a touch event at a specific point from the kernel (through the driver) it knows what to draw on your screen. Both the hardware and the software communicate both ways with the kernel, and that's how your phone knows when to do something. Input from one side is sent as output to the other, whether it's you playing Angry Birds, or connecting to your car's Bluetooth.
It sounds complicated, and it is. But it's also pretty standard computer logic -- there's an action of some sort generated for every event. Without the kernel to accept and send information, developers would have to write code for every single event for every single piece of hardware in your device. With the kernel, all they have to do is communicate with it through the Android system API's, and hardware developers only have to make the device hardware communicate with the kernel. The good thing is that you don't need to know exactly how or why the kernel does what it does, just understanding that it's the go-between from software to hardware gives you a pretty good grasp of what's happening under the glass. Sort of gives a whole new outlook towards those fellows who stay up all night to work on kernels for your phone, doesn't it?
---------------------------------------------------------------------------
What's CWM?
Taken from: AddictiveTips » Blog ArchiveWhat Is ClockworkMod Recovery And How To Use It On Android [Complete Guide]
ClockworkMod, abbreviated as CWM, is a popular custom recovery for Android phones and tablets developed by Koushik Dutta (Koush), a well-known name in the Android dev community. ClockworkMod recovery allows you to perform several advanced recovery, restoration, installation and maintenance operations on your Android device that aren’t possible with the stock recovery, and is one of the most common ways used to gain root access, back up device data, install a custom ROMs, kernels, themes, mods and more. However, for anyone new to Android customization and hacking, some of its options might prove to be a tad confusing. In what follows, we will cover all that this recovery is capable of doing, and how to do it.
About Android Recovery
All Android devices ship with a recovery console that is basically a partition on the device’s internal memory and can be booted into. The stock recovery of almost all Android devices provides a few basic yet handy options that allow you to factory reset your device and also to recover its operating system using an official ROM in zip format, but that’s all you can do with it. That’s where a custom recovery comes handy.
A custom Android recovery basically replaces the stock recovery with one that lets you do all you can do with the stock recovery, plus a plethora of more options to give you a lot more control on your device. With a custom recovery, you can install official and unofficial ROMs as well as other updates including apps, themes, kernels etc. using zip files, wipe not just user data but pretty much every partition on your device, mount the storage card for USB mass storage access without leaving recovery, partition your SD card, wipe Dalvik cache and battery stats, fix permissions, perform, manage and restore backups and so on.
Introduction To ClockworkMod
ClockworkMod recovery is one of the most widely used custom Android recoveries that is available for most mainstream Android devices. It is our custom recovery of choice here at AddictiveTips and almost every custom ROM that we install on our devices is done using this recovery.
ClockworkMod recovery has been developed by Koushik Dutta (also known as Koush) – the same guy who brought us the Android ROM Manager. He can be found at his blog hacking away at Android devices and at Twitter.
CWM options explained:
[REF] CWM - Clockworkmode menu options & Partitions– GENERAL KNOWLEDGE - xda-developers
---------------------------------------------------------------------------
What's Firmware?
Taken from: What is Firmware, Rom and Firmware Flashing ? - I Teach Android
What the heck is this firmware? Definition of firmware is permanent software programmed into a read-only memory
In Simple words, you can understand it like windows for pc , in case of android we are going to do same thing – installing firmware (Froyo,Gingerbread, ICS, Jelly Bean etc.) on your phone. All phones have their different firmwares and installing tools regard less to the Andriod version (Froyo,Gingerbred). So never think that we can install any firmware on any android phone like we do in PCs.
Wiki link for even more info: Firmware - Wikipedia, the free encyclopedia
---------------------------------------------------------------------------
What's Flashing?
Flashing refers to the overwriting of existing data on ROM modules present in an electronic device with new data. This can be done to upgrade a device or to change the provider of a service associated with the function of the device, such as changing from one mobile phone service provider to another or installing a new operating system.
In simple words flashing is called installing firmware on your phone.
---------------------------------------------------------------------------
What's Rooting?
Taken from: Rooting for Android: What, why and how? | Ubergizmo
WiKi link: https://en.wikipedia.org/wiki/Rooting_(Android_OS)
When carriers and manufacturers sell you your device, it is almost certain that the device would come with certain software restrictions in place. There are a variety of different reasons why they might do that – some claim that this is done to protect the user, preserve the device’s warranty (this policy will vary from manufacturer to manufacturer), prevent users from getting rid of carrier bloatware apps or simply because the manufacturer would prefer if your device was distinguishable from the competition based purely on its user interface (i.e. Samsung’s TouchWiz, HTC Sense UI, etc).
Whatever their reasoning may be, chances are if you are looking to customize your device on a deeper level, you’d be out of luck and this is where rooting comes into play.
Rooting is essentially a process that allows users of smartphones, tablets or other devices running on Android to gain “superuser” access to the software. This will allow the user to perform administrative tasks such as writing to locations normally restricted by the system which in turn will allow for deeper customization. For iOS users, rooting on Android devices could be thought of as a close equivalent to jailbreaking your device.
---------------------------------------------------------------------------
What are custom ROMs?
Taken from: Custom ROMs For Android Explained - Here Is Why You Want Them
A stock ROM is the version of the phone's operating system that comes with your phone when you buy it.
A custom ROM is a fully standalone version of the OS, including the kernel (which makes everything run), apps, services, etc - everything you need to operate the device, except it's customized by someone in some way.
So what does the "customized" part mean? Since Android is open source, developers are free to take stock ROMs, modify them, strip them of garbage, optimize them, add things, and pretty much do whatever their imagination and skills allow.
---------------------------------------------------------------------------
What is ADB?
Taken from: Android 201: What is adb? | Android Central
According to Google "Android Debug Bridge (adb) is a versatile tool lets you manage the state of an emulator instance or Android-powered device." That certainly sounds like Google, doesn't it? To put it simply, adb is two different applications -- one running on your computer (Windows, Linux or Mac) and one running on your phone. When your phone is connected, and USB debugging is enabled, you can issue commands and communicate with the phone using your computer screen and keyboard.
Your Android phone uses a modified Linux kernel and tools as a base. This means that quite a few Linux commands can be sent via the adb server (the one running on your computer) to the adb client (the one running on your phone) and they will be executed. In our example picture, I've sent the "top" command over the wire to my phone, and my phone sent me back the information and printed it to my terminal.
This can be awfully handy for debugging things that aren't going right, as well sending those weird commands you need when you're hacking away in the middle of the night. Chances are, if you aren't actively debugging something or trying to break hack at your phone, you won't have much use for adb. And that's OK -- there's more than one way to have fun with an Android device.
----------------------------------------------------------------------------
What's baseband?
Baseband is the Radio or Modem version depending upon the Phone Model, Carrier and Android Software Stack version. The Radio/Modem file is flashed via Recovery tool (other options are ADB/ODIN). The mismatched Radio/Modem and ROM will lead to things not working. You need to find the matching Radio/Modem for the particular ROM you are running.
The radio firmware controls basic low-level functions like network connectivity, Wi-Fi, and GPS. Upgrading Radio firmware will fix connectivity issues, increase range or performance, decrease battery usage, etc. Incorrec tRadio frimeware can disable some functions in your phone such as MMS, 3G Data, VM Notifications, etc. Network operators/carriers select the correct version of the Radio firmware that is suitable for the phone, network and bandwidth.
There is also Modem and Baseband Radio Processor chipsets in Mobile phones. Usually, Google, Phone Manufacturers and carriers develop various types of modem firmware/software that controls the functions of these chipsets.
Firmware is the overall version of the Android system on your phone. Baseband version is the version of the radio embedded in the device. Since Android is based on the Linux operating system, they show you the current version of the Kernel used in the heart of the system. The Build number is just an indicator of which numerical version of the current overall system was built by developers for your device.
You cannot update any of these from the official web site. Updates to the Android system are pushed to the phone over-the-air by the manufacturer or the cell phone carrier. The only other way to update or change an Android phone it to install custom modified ROMs in place of the existing system firmware. That usually requires rooting the phone and a fairly considerable knowledge of how to hack hardware.
----------------------------------------------------------------------------
What's Dalvik?
http://www.techopedia.com/definition/4262/dalvik
http://butterflydroid.wordpress.com/2011/09/22/what-is-dalvik-vm-heapsize-benefits-and-downfalls/
Dalvik is named after a fishing village in Iceland where ancestors of Dan Bornstein, the person who wrote the VM’s original code, lived. Dalvik is designed for fast execution speeds and operatation in resource-constrained environments like those in mobile devices (with limited memory, CPU and battery power). A Dalvik VM is designed to run multiple instances of itself with each instance hosted on its own separate process and running one application each. When one instance crashes, other concurrently running applications don’t suffer.
Although Android apps are written in Java, they are first compiled into the Dalvik Executable (DEX) format to make them run on the Dalvik VM. DEX files are generally smaller than compressed .JAR (Java Archive) files, making them suitable for mobile devices.
The main difference between Dalvik and a typical Java VM is that the former is register-based while the latter is stack-based. Register-based VMs require fewer instructions than their stack-based counterparts. Although the register-based VMs also require more code, they are generally considered to exhibit faster startups and have better performance than stack-based VMs.
The Dalvik source code license is based on the Apache license. That means, it is free to modify and hence attractive to mobile phone carriers.
What's init.d?
init.d is a folder located at /system/etc
To keep it simple, it allows the user to run scripts at system startup/ boot.
You can adjust many different things/settings with scripts. You can tweak system settings, prolong battery life etc.
To enable init.d and to get some scripts, go here: http://forum.xda-developers.com/showthread.php?t=1881401
----------------------------------------------------------------------------
Click to expand...
Click to collapse
Thanks, good info
teejbee said:
Thanks, good info
Click to expand...
Click to collapse
Strewth! Not only did you quote the ENTIRE OP post in order to reply with a 3 word thank you but 2 people actually thanked you for it. I might print that out and hang it on my wall. :laugh:
Hi, what does the "Allow bootloader unlock" (or similar) mean in advanced settings on s7 and some other devices? My phablet also has this option and I turned it on without any changes after typing oem unlock. With selfmade cwm I can root my phone, if its allowed to unlock or not.. is this setting only a placeholder or did someone get the real function? M a ybe this is important for nexus devices only, or not. I do not know.
Gesendet von meinem SM-G900F mit Tapatalk
Edit: sorry for asking in xperia forums.. used tapatalk and saw the title is matching my purposes.. did not see the xperia section, but my question you can answer, too. Sry
louiscar said:
Strewth! Not only did you quote the ENTIRE OP post in order to reply with a 3 word thank you but 2 people actually thanked you for it. I might print that out and hang it on my wall. :laugh:
Click to expand...
Click to collapse
hahahahahahaha :laugh:
Dear, Can I make a custom ROM for my Android TV that can use the TV remote and IR key?
I mean, after installing a custom ROM like Lineage OS, do the remote and inputs work properly?