[XPERIA X10 Android Development] shonangreg:
Bootloader? What's a "bootloader"?

No one seems to have answered this in simply, so I will try. Anyone seeing a mistake on my part please correct me.

Keeping it simple, the phone has three levels of software: the apps, the OS, and the bootloader.

- the bootloader is the first to start up when you turn on the phone. It starts then it starts to load the android OS.

- the OS loads

- apps begin to load, some automatically, some only when you launch them.

The version of the OS can be changed. This happens during system upgrades (like going from android 1.6 to 2.1, and then from 2.1 to 2.3). But you can also load other versions of the OS, called alternate ROMs. CyanogenMod is one famous example. MIUI appears to be another. These ROMs are made from android, but are not maintained by google or SonyEricsson, ... They are largely community projects. Using an alternate ROM can give you some features that your cell phone carrier had disabled in the ROM version your phone came with. WiFi tethering would be one example. AT&T doesn't want you using your phone as a modem for your laptop, so they take that part out of the version of android they provide to their customers.

There are two ways to add these blacklisted features back into your phone. One is rooting. This is not changing the ROM; it is just getting deeper control of the ROM you have. When your phone is rooted, you are a superuser or an admin. You can enter "dangerous" commands like deleting the shutter sound for the camera (on some phones). Normally these commands are ignored, but if your phone is rooted, you can do it. You become the boss of your phone. You can install banned apps and remove mandatory apps as well.

The second way is changing ROMs. If you change ROMs, you don't just have the superuser power that comes with rooting the phone, you have a totally new OS, generally an open OS that does not have the protections of the original. However, the carriers don't want you to do this, so they use the bootloader as something of a gatekeeper. The bootloader can be encrypted and protected so that 1) you cannot alter the bootloader without causing the system to fail 2) you cannot alter the OS without the bootloader noticing and causing the system to fail. The bootloader launches the OS; a protected bootloader ensures you run only the Os/ROM that your carrier wants you to run. Unlocking the bootloader makes it possible to change the ROM.

So, the bootloader is like a gate or gatekeeper. A "locked" bootlader is one who is chained to the gate. The OS or ROM is like the field or pasture beyond the gate. The apps are the cows and horses or corn and beans growing in your field. Most of us can change the crops at will, but elephants and zebras are banned -- unless you root your phone. And unlocking the bootloader is equivalent to unchaining the gatekeeper. You can then change the whole field and change from pig farming to growing spaghetti trees, tofu bushes, catfish, or apartment blocks.

Unlocking the bootloader doesn't change any of these things, it just enables them to be changed.

note: I would like to know if anyone has unlocked the bootloader AND changed ROMs on the Japanese docomo SO-01B version of the X10. Thanks.