super.fex boot-resource.fex boot_package.fex boot0_sdcard.fex cardscript.fex cardtool.fex split_xxxx.fex fes1.fex Файл super.fex
Этот файл в imagewty-образе прошивки Android хранится в sparse (разреженном) формате. В версии V1.1 его размер файла super.fex равен 852623532 байт (примерно 850 Мб). Однако при записи на карту он преобразуется в raw (необработанный) формат, в котором восстанавливается его полный размер, который составляет 1610612736 байт (примерно 1.5 Гб). Таким образом, файл в образе сжат примерно в 2 раза. Для конвертации файла на ПК (в т.ч. под Windows) можно воспользоваться утилитой simg2img simg2img.exe -i super.fex -o super.img При записи образа на карту с помощью утилиты PhoenixCard выполняется преобразование sparse -> raw "на лету" (т.е. без сохранения raw-файла). В интерфейсе утилиты это преобразование отображается "приостановкой" весёлого движения прогресс-бара (при достижении значения примерно 24%) на достаточно заметное время (до десятков секунд), после чего в окне появляется сообщение о успешной записи super. В случае записи раздела super непосредственно на устройстве в режиме fastboot (командой fastboot flash super ) также используется файл super.fex в sparse-формате (без предварительного преобразования). При этом сокращается время и объем передаваемых данных за счет пропуска пустых chunks (кусков), помеченных в файле как CHUNK_TYPE_DONT_CARE. Принцип создания sparse-файла показан на рисунке:
Дыры (Holes - разреженные (sparse) нулевые байты, которые не занимают пространства
на физическом диске
Области с реальными данными, которые занимают пространства на физическом диске
Размер логического файла Размер физического файла Утилита superunpacker.exe извлекает из RAW-файла super.img три файла содержимого системных разделов: Лог распаковки выглядит так: Usage: superunpack superimage or to extract as a RW: superunpack superimage 1 Or drag and drop superimage to superunpack Для продолжения нажмите любую клавишу . . . C:\SUPER>superunpack super.raw LpMetadataGeometry magic = 0x616c4467 LpMetadataGeometry struct size = 0x34 LpMetadataGeometry sha256 = 4E31CF64275442F40E25C 772A18D1FCCD8B1291232 E593F65E522FC7AC07DF03 LpMetadataGeometry metadata_max_size = 0x10000 LpMetadataGeometry metadata_slot_count = 0x2 LpMetadataGeometry logical_block_size = 0x1000 LpMetadataHeader magic = 0x414c5030 LpMetadataHeader major_version = 10 LpMetadataHeader minor_version = 0 LpMetadataHeader header_size = 0x80 LpMetadataHeader header sha256 = 5A7E4276B3889F695 B2AF81406A3D2CCC40 59FEA2B6174BCD568 8F18C58A4224 LpMetadataHeader tables_size = 0x184 LpMetadataHeader tables sha256 = 3189D5DA05528215C D157BEFDFCFF871092 AB62AF9047E020953 57489FC12BE5 LpMetadataHeader partitions offset = 0x0 LpMetadataHeader partitions num_entries = 0x3 LpMetadataHeader partitions entry_size = 0x34 LpMetadataHeader extents offset = 0x9c LpMetadataHeader extents num_entries = 0x3 LpMetadataHeader extents entry_size = 0x18 LpMetadataHeader groups offset = 0xe4 LpMetadataHeader groups num_entries = 0x2 LpMetadataHeader groups entry_size = 0x30 LpMetadataHeader block_devices offset = 0x144 LpMetadataHeader block_devices num_entries = 0x1 LpMetadataHeader block_devices entry_size = 0x40 Partitions = 3 used, 0 not used, total 3 partition_1_name = system attributes = 0x1 first_extent_index = 0x0 num_extents = 0x1 group_index = 0x1 partition_group = sb extent num_sectors = 0x12ae48 (0x255c9000 bytes total) extent target_type = 0x0 extent target_data = 0x800 (dumping offset = 0x100000) extent target_source = 0x0 Filetype EXT4. EXT4 size = 0x24c46000 Dumping system.ext4 ... ......... ......... partition_2_name = vendor attributes = 0x1 first_extent_index = 0x1 num_extents = 0x1 group_index = 0x1 partition_group = sb extent num_sectors = 0x393d8 (0x727b000 bytes total) extent target_type = 0x0 extent target_data = 0x12b800 (dumping offset = 0x25700000) extent target_source = 0x0 Filetype EXT4. EXT4 size = 0x7099000 Dumping vendor.ext4 ... ...... partition_3_name = product attributes = 0x1 first_extent_index = 0x2 num_extents = 0x1 group_index = 0x1 partition_group = sb extent num_sectors = 0x36018 (0x6c03000 bytes total) extent target_type = 0x0 extent target_data = 0x165000 (dumping offset = 0x2ca00000) extent target_source = 0x0 Filetype EXT4. EXT4 size = 0x6a39000 Dumping product.ext4 ... Для продолжения нажмите любую клавишу . . . Ссылки для загрузки утилит распаковки файла SUPER (исполняемые файлы EXE в zip-архиве): |