What is Rooting?
Rooting of an Android device is similar to jail breaking of iPhone. Rooting gains you access as a super-user on the Android platform. Rooting your phone implies taking complete control of your phone by modifying the operating system that originally shipped with it. A program called SU (switch user) when uploaded on the device provides root access to programs. SU manages this by exploiting vulnerability in the operating system code or device drivers. Needless to say, manufacturers do not approve the process of rooting. The advantages of rooting your Android device are enumerated below.
Customized Android OS
Android devices are not bound to its original OS. You can customize the OS to suit your needs. The more popular devices have more customized, after-market OSes. Rooting gives you full control over Android and you can alter system files, use themes, change boot images, delete apps that you do not want. For example, HTC Desire has more than 20 customized OSes that allow among other things saving apps to an SD, adding Arabic support, and removing SenseUI completely.
Backup and restore
Rooting gives you the ability to back-up your entire device image onto an SD card, which can be restored later if required. This allows trying out different OSes on your phone. If you want to try a new ROM (modified, after-market OS), you can back-up your phone, erase it completely, and then flash the new ROM. If you are not satisfied with the new ROM, you can restore your phone to the old image from the backup.
Sometimes you may reach the maximum storage limit on your device. To overcome this hitch, you need to enable most applications to become movable to an SD. Tools like CyanogenMod, the popular Android custom ROM, enable the user to transfer most apps to SD even if the Android developers of those apps have not enabled this feature.