从android设备中提取内核

根据每个分区的前几个字节来判断。


su权限下,dump每个分区的前512字节。

for ii in /dev/block/m*; do \
    BASE=`../busybox basename $ii`; \
    dd if=$ii of=$BASE count=1 2> /dev/null; \
done


dump出来了
从android设备中提取内核_第1张图片


搜索boot img标志ANDROID



发现了两个结果,原因是因为boot分区和recovery分区使用了相同的格式。

最后,根据头部信息区分出boot分区,因为recovery分区的ramdosk_size要比boot大。

ramdosk_size = 0x0B7658

从android设备中提取内核_第2张图片


ramdosk_size = 0x234738

从android设备中提取内核_第3张图片


根据recovery分区的ramdosk_size要比boot大的原则,判断mmcblk0p20分区为boot分区。


验证一下:

从android设备中提取内核_第4张图片


你可能感兴趣的:(android,内核,zImage)