Take the 2-minute tour ×
Unix & Linux Stack Exchange is a question and answer site for users of Linux, FreeBSD and other Un*x-like operating systems.. It's 100% free, no registration required.

I partitioned a microSD card (mmcblk1) into two partitions mmcblk1p1 and mmcblk1p2.

If use a dedicated card reader I am able to see the entire SD card and its partitions using various disk management tools on my PC.

I am able to mount both partitions on my Android phone. However when I put my phone into USB Mass Storage mode, only mmcblk1p1 appears as a drive letter on my computer. mmcblk1p2 remains mounted and usable on the phone.

  1. Isn't the partition table (GPT or MBR) stored outside of mmcblk1p1 and thus not accessible to the computer?

  2. Assuming (1) how does the computer clearly show a disk with only 1 partition in various disk management tools as if it was a physical disk? Is the phone's Mass Storage mode performing some kind of abstraction?

  3. What exactly would happen if I partitioned this disk on the computer? Would the phone then see a new mmcblk1p3. How would it even be possible without access to the real partition table?

share|improve this question
    
I've been wondering about the same thing since I got a Droid Bionic with a 16GB MicroSD card - it shows up as two 8GB partitions in Android, one of which is inaccessible to a lot of apps, and a single 16GB disk when mounted on anything else. I haven't taken the time to research it but I'll keep this question in mind if I do. –  dartonw Mar 30 '13 at 17:39
    
The USB Mass Storage mode of the system probably isn't just a straight forwarder between the USB cable and the memory card - it probably takes the first partition and serves it as a block device to the other side of the USB cable. –  peterph Mar 30 '13 at 18:23
    
@peterph Yes it's presenting the first partition as a block device over USB Mass Storage, but where is the partition table coming from for Windows to recognise the drive? Is Windows simply reading a raw partition beginning from block 0? In that case partitioning the drive on Windows should result in a nested MBR and will render the partition corrupt within Android. Can someone confirm? –  Locutus Mar 30 '13 at 21:00
    
I would expect exactly that. –  peterph Mar 30 '13 at 21:11
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.