Understanding the HTC Hero(/android) boot process - Hero, G2 Touch Android Development

Hi All,
I'm trying to understand the boot process of my phone, HTC Hero, before i start rooting it and putting on different ROMS etc.
From reading, as best as I can tell, the Hero has its onboard persistent storage in 3 parts: boot, system and recovery.
Is this correct? are there any more?
Is this partitioning of the storage just implemented as 3 partitions in the onboard flash? or are they in physically different flash chips? Is it possible to write to all 3 partitions? or is, say, the boot partition read only?
[HOWTO] Remove the Hero's security and CID locks talks about removing 'security and CID locks'
As i understand it, a CID lock is a check the phone does to ensure the image in flash is approved by the carrier, is this correct? Which partition(s) does it check?
What is the additional 'security' that the phone has?
Thanks in Advance

think there is also..
DATA
SPLASH1
CACHE

Related

why doesn't the android terminology/rooting stuff make sense to me?

n00b I know...
I have 2 winmo phones with hard-spl (touch pro and hd2) as well as a jailbroken iPad, but for some reason when I look through the android development sub forum it looks like I'm reading wingdings or something. Is android infinitely more complicated than winmo 6.5 and iOS? am I just an idiot?
I dont get what boot recovery flashing is, nand unlocking, the difference between being rooted and fully rooted.
On a side note, I really like my evo but would like to tether and have full root access, I think.
Root vs "full" root. HTC has started adding additional security to the /system partition. Although /system is an arbitrary mount point, it is also a predefined physical block of the flash memory. An additional step beyond basic root access is needed to make that area writable when not in recovery.
Recovery is another partition. The bootloader is capable of booting to that partition instead of the Android OS so that maintenance can be performed without the OS loaded.
Sent from my PC36100 using XDA App
jorpe said:
n00b I know...
I have 2 winmo phones with hard-spl (touch pro and hd2) as well as a jailbroken iPad, but for some reason when I look through the android development sub forum it looks like I'm reading wingdings or something. Is android infinitely more complicated than winmo 6.5 and iOS? am I just an idiot?
I dont get what boot recovery flashing is, nand unlocking, the difference between being rooted and fully rooted.
On a side note, I really like my evo but would like to tether and have full root access, I think.
Click to expand...
Click to collapse
i will answer this, to the best of my limited knowledge, and experience.
/system is a partition of the internal memory etc that holds and runs applications that either are necessary for function (dialer, contacts, etc), or are put there by the provider (like your sprint apps).
root access is writing to /system. without NAND unlocked, this can only be done in recovery mode.
full root is NAND unlocked.
NAND unlocked allows you have have read and write access to the /system partition while the phone is actually running on android, rather than just while in recovery.
a custom recovery allows you to flash unsigned ROMs, kernels, radios. you would 'boot into recovery' to flash the zip (it's just a menu option, pretty straightforward). there are also options to backup or restore your current ROM setup. think of it like imaging your pc.
if you've flashed custom ROMs on winmo phones, you probably used an RUU, where you just put the nbh file into a folder that contained the executable and ran it. well, here you would just put the .zip file onto your sdcard, boot into the custom recovery, and select the 'flash zip' from the menu.
hope that helps

[Q] Should I root for app2sd?

I just got my new Desire a few days before. It works like a charm. The only 2 things I feel unsatisfied are: battery life and ROM capacity.
There is not much I can do on the battery side. I can put it aside and get used to that. But the ROM is really painful for me -- When I get the device, it had around 150MB free memory. But it is only 22MB left now!
I noticed that the Android 2.2 supported to install application on SD card. I used adb shell to setup the default installation to SD, and moved most of the programs to the SD card. However, it seems that internal memory was not free up as much as I was expected. Indeed, I did not have many software installed. And I am very suspicious if the cache of software (like mail, google maps, etc.) might always stay on internal memory.
I think one solution to solve the problem is to root my device and partition the SD card to increase the program storage. But I am worrying if it might bring security risk from malwares, or make the phone run slower and have bigger power consumption when use SD card more frequently.
Do you root your device for the app2sd? What's the pros and cons? I want to take your opinion before make the decision. Any suggestion will be very appreciated!
w162 said:
I just got my new Desire a few days before. It works like a charm. The only 2 things I feel unsatisfied are: battery life and ROM capacity.
There is not much I can do on the battery side. I can put it aside and get used to that. But the ROM is really painful for me -- When I get the device, it had around 150MB free memory. But it is only 22MB left now!
I noticed that the Android 2.2 supported to install application on SD card. I used adb shell to setup the default installation to SD, and moved most of the programs to the SD card. However, it seems that internal memory was not free up as much as I was expected. Indeed, I did not have many software installed. And I am very suspicious if the cache of software (like mail, google maps, etc.) might always stay on internal memory.
I think one solution to solve the problem is to root my device and partition the SD card to increase the program storage. But I am worrying if it might bring security risk from malwares, or make the phone run slower and have bigger power consumption when use SD card more frequently.
Do you root your device for the app2sd? What's the pros and cons? I want to take your opinion before make the decision. Any suggestion will be very appreciated!
Click to expand...
Click to collapse
Rooting , followed by alpha rev s-off n1 partitioning, is by far the best thing, so much fun.
I use defrost based on cyanogen mod, great support, and ota feature, with kernels galore, and the all important a2sd built in. As long as you have an ext partition on your sd card, all apps go straight into the ext partition with out you having to do anything.
Also remember is not jail breaking
Desire is the source of all suffering.
nitrox1 said:
Rooting , followed by alpha rev s-off n1 partitioning, is by far the best thing, so much fun.
Click to expand...
Click to collapse
What does alpha rev s-off allow you to do?
It basically provides full root access for your desire as opposed to soft root, where you could only r/w to the to the /system partition while in recovery mode.
What is S-OFF ? (Quotes from original AlphaRev website)
HTC implemented security on their new generation phones. This flag, called @secuflag, controls whether your phone has it's NAND or flash unlocked. Most noticibly S-ON (security on) will read-lock your /system and /recovery partition, to name a few. Also, controls whether zip files being flashed recovery or fastboot, are signed by HTC The now notorious S-OFF (security off) disable this NAND security. Since we are unable to access the Radio itself (where secuflag is stored), we turn attention to HBOOT.
Sent from my HTC Desire using XDA App
MasDroid said:
It basically provides full root access for your desire as opposed to soft root, where you could only r/w to the to the /system partition while in recovery mode.
What is S-OFF ? (Quotes from original AlphaRev website)
HTC implemented security on their new generation phones. This flag, called @secuflag, controls whether your phone has it's NAND or flash unlocked. Most noticibly S-ON (security on) will read-lock your /system and /recovery partition, to name a few. Also, controls whether zip files being flashed recovery or fastboot, are signed by HTC The now notorious S-OFF (security off) disable this NAND security. Since we are unable to access the Radio itself (where secuflag is stored), we turn attention to HBOOT.
Sent from my HTC Desire using XDA App
Click to expand...
Click to collapse
What does it allow you to do that you can't do without it?
stats101 said:
What does it allow you to do that you can't do without it?
Click to expand...
Click to collapse
It unlocks NAND so that you can write into /system partition. You can also flash radio, custom kernel, custom recovery, any unsigned ROM directly via fastboot without ClockWorks Rom Manager.
When you can write to /system, MetaMorph, AdFree and other apps that require access to this partition will just work. You don't need to reboot into recovery in order to delete/change/add files. Superuser will be able to update su binary automatically, Busybox Installer from Market will have no problems installing the most recent version directly into /system/bin or /system/xbin, etc.
While most users probably don't need it, it's very useful for developers. You can change system configs on the fly, add and load custom kernel modules without reboot and so on.
Basically, it will make your phone fully unlocked, just like the Nexus One developer phone.
nitrox1 said:
Desire is the source of all suffering.
Click to expand...
Click to collapse
Can't agree with that any more now

[Q] DHD Boot: Recovering System Apps?

Hello all
When I remove some of the system apps(pre installed stuff from my provider) using Titanium Backup with Temp Root(Visionary), they appear again after rebooting.
Conclusion: There is some special mechanism going on while booting. (Guess it's the same that makes perm root difficult)
I just couldn't find out what its doing at boot up?
Ofc, I could remove those apps from /system, but I want to make a backup of my DHD before hacking on it Also, there are already How-To's for backing it up, but I'd like to know what's going on.
Thanks in advance
Well apart from root, you also need some form of s-off on your phone otherwise the emmc lock will kick in and restore everything to default when you reboot. S-off disables the locks.
There are two types of s-off - radio and hboot. Radio is more permanent in that it can't be removed by any official update, but hboot allows you to use fastboot commands. Its quite safe to apply both types that way you're well covered. Just be aware to follow the hboot instructions very carefully otherwise you could brick your phone.
Some great tools are available to automate the process:
One click radio s-off
Easy hboot s-off
What's that emmc lock exactly?
Does it just restore stuff from /system? Like /system/apps?
I just can't find anything by googling...
EDIT: I think I found the answer. It restores from the SD Card. Please correct me if I am wrong.
The emmc, phone's internal memory, is write protected in S-ON phones. That means that any change made to the system will only affect the time your phone is booted. When you reboot, changes will disappear as they will not get written to write protected memory chip.
S-OFF disables that write protection, and makes the memory chip r/w (read + write).
Oh okay. Thanks you two.
Then I don't get why there is that system folder and system/apps on the sd...

Cannot view SD EXT

Hi
I have rooted my phone with unrevoked, s-off'ed with alpha rev 1.8, partitioned 1gb of my 4 gb card to ext 3 and installed Gingerbread F1 V3 Ap2SD ENG.
On first load of the rom i can see that my SD card FAT 32 storage has been reduced but the only other memory internal memory which was at 147mb when i first booted the rom.
All apps are installing to the internal memory by default with only the option of moving to the SD FAT 32 partition. and there is no option to move to the sd ext3 part as there is no option - so I have lost 1gb off my sd card.
What have i done wrong?
on a 2nd note i appear to have a call delay when answering the phone my radio version is 32.49.00.32U_5.11.05.27 - do i need to update this ? will it solve the problem ? my carrier is vodafone UK.
appreciate the help
ararararar... Sorry had to do something.
This has been explained SO many times by me included. The way a2sd works is by symlinking the folder containing the apps(/data/app) to you ext-partition.
You cannot see this partition listed in the system info, as the partition is not supposed to be there. The system have no way of knowing that you are using an ext-partition, as it just installs apps to /data/app, however as it's symlinked to ext, they are actually being placed in sd-ext/app.
This means that you will only see you internal memory, but it still works. Your apps will just take up less space on internal, as the apk file is placed on the ext-partition. They will still take up some space for data and dalvik cache.
edit: bonus info. Install "quick system info" or "titanium backup" from the market to see the size of your ext-partition in those apps.
edit2: and if i did not make my self clear. The partition-size info in the system settings is not supposed to be a partition manager. It's written to be userfriendly, and it only provides the regular user with the partitions they should care about(/data and /sd-card). If you want a detailed view of all your partition(and there is more than a few) go get root explorer. It'll let you play around with all the partitions mounted.(you won't have access to recovery, bootloader and so on from here)
Ok thanks. I'm new to this and there's so much info to take in
With regards to the radio is there a simple way of flashing as I have alpha rev installed the method via recovery wont work. I see alot of people talking about doing this through a terminal but I could not find a comprehensive guide for this like the xda root guide. Thanks.
Darren
Sent from my HTC Desire using XDA App
Well i take it that your cache partition is too small(this is why people using alpharev cm hboot cannot use recovery for this). In that case you have already flashed another hboot(using "fastboot flash hboot hboot.img") if you haven't done this, you cache-partition should not be too small, and the recovery method should be able to do this just fine. If you have done this, use the same command to flash the radio eg "fastboot flash radio radio.img"
Either way it is very unlikely to fix your call delay(read: it won't fix your problem, as it's got nothing to do with the radio). It's a problem caused by some incompatibility between the htc libs and GB. It's quite common on GB roms apparently. Wait for HTC to release the real GB update, and we might very well be able to solve this problem.
dazzr123 said:
Ok thanks. I'm new to this and there's so much info to take in
With regards to the radio is there a simple way of flashing as I have alpha rev installed the method via recovery wont work. I see alot of people talking about doing this through a terminal but I could not find a comprehensive guide for this like the xda root guide. Thanks.
Darren
Sent from my HTC Desire using XDA App
Click to expand...
Click to collapse
Install android sdk:
http://wiki.cyanogenmod.com/wiki/Howto:_Install_the_Android_SDK
Copy the downloaded radio.img to e.g. partition C: on your computer (if you downloaded a zip, extract the radio.img from there). Check the md5sum!!!
Boot your into fastboot mode (start it with pressed back and power button) and connect your phone to your computer.
Now open command prompt on your computer and type
Code:
fastboot devices
It should list your device now. If it does, type
Code:
fastboot flash radio C:\radio.img
(in case your radio.img was copied to C: ).
Now, observe the computer and be patient TOUCH NOTHING!!
The process will copy the image to your phone, write the image to the radio partition and perform some magic be patient TOUCH NOTHING!!
Watch the little indicator at the top of your phone screen.
Once the process appears to finish (it may not say complete) wait a further FULL 60 SECONDS and be patient TOUCH NOTHING!!
Then, and only then, reboot your phone.
Click to expand...
Click to collapse
A nice guide about adb/fastboot can you find here:
http://androidforums.com/desire-all...fastboot-windows-updated-1st-june-2011-a.html
Flashing radio is a risky thing. Because if there something is wrong, your phone won't be more than a paperweight.

Dual Partitions?

I heard talk of the partitions in these pixel phones being different than the Nexus phones were. Like how the Nexus phones had bootloader, radio, system, recovery, boot, userdata, and cache. What do they mean when they speculate "dual partitions"? And for that matter, how are they going to update older Nexus devices if the partitions are different than the Pixel? A lot of questions I know, but hell, figured why not ask away.
I want to know how much space the 32GB variants have left after the dual partitions are accounted for.
LLStarks said:
I want to know how much space the 32GB variants have left after the dual partitions are accounted for.
Click to expand...
Click to collapse
I think I saw a video that showed 29GB
Edit: formatted to 29 but 24.3 available
H4X0R46 said:
I heard talk of the partitions in these pixel phones being different than the Nexus phones were. Like how the Nexus phones had bootloader, radio, system, recovery, boot, userdata, and cache. What do they mean when they speculate "dual partitions"? And for that matter, how are they going to update older Nexus devices if the partitions are different than the Pixel? A lot of questions I know, but hell, figured why not ask away.
Click to expand...
Click to collapse
Current devices have a single "system" partition, containing the OS and included apps, which gets patched when an OTA update is released. You can't use the phone when the OS is being patched and it's a slow process.
With the new feature, the new phones will have two system partitions (let's call them A and B). The phone can run the OS from one of these partitions (A), while the other partition is upgraded by an OTA update in the background (B). When the upgrade has been downloaded and applied to partition B, the phone can quickly reboot into the OS on partition B, making the upgrade much faster from a user point of view.
The next time the phone installs an update, it can apply it to partition A in the background.
All existing devices will simply continue to use the existing partition structure and patching process.
Daveoc64 said:
Current devices have a single "system" partition, containing the OS and included apps, which gets patched when an OTA update is released. You can't use the phone when the OS is being patched and it's a slow process.
With the new feature, the new phones will have two system partitions (let's call them A and B). The phone can run the OS from one of these partitions (A), while the other partition is upgraded by an OTA update in the background (B). When the upgrade has been downloaded and applied to partition B, the phone can quickly reboot into the OS on partition B, making the upgrade much faster from a user point of view.
The next time the phone installs an update, it can apply it to partition A in the background.
All existing devices will simply continue to use the existing partition structure and patching process.
Click to expand...
Click to collapse
So basically, Android OS would be installed on both partitions? That's too weird. That will take some getting used to!
It's more than just 2 system partitions, as those aren't the only potential partitions affected by an update. llabtoofer posted the exact duplicate partitions a while ago on Twitter.
I want to the size of each partitions.
Please show below via adb shell.
cat /proc/partitions
ls -l /dev/block/platform/soc/7824900.sdhci/by-name
*7824900.sdhci is diffrent name folder.
Milly7 said:
It's more than just 2 system partitions, as those aren't the only potential partitions affected by an update. llabtoofer posted the exact duplicate partitions a while ago on Twitter.
Click to expand...
Click to collapse
Hey I know this post is a little old but do you happen to know where I can find that post ?
aholeinthewor1d said:
Hey I know this post is a little old but do you happen to know where I can find that post ?
Click to expand...
Click to collapse
Very old post lol. You should search XDA for a user named llabtoofer. He knows a lot about HTC phones. I'm quite sure he will answer. You can also search for him on Twitter which is where he originally posted it prior to the phones release date.

Categories

Resources