IPB

Здравствуйте, гость ( Вход | Регистрация )

Форум перемещен на новый домен: forum.pda2u.ru - исправьте, пожалуйста, свои ссылки
> Структура информации в IMGFS секциях, на примере O2 XDA Atom Exec и O2 XDA Flame
BigMike
сообщение 29.2.2008, 14:21
Сообщение #1


PDA2U.RU Team
****

Группа: Admin
Сообщений: 1806
Регистрация: 20.10.2007
Из: Moscow
Пользователь №: 11
Спасибо сказали: 172 раз(а)

Девайс:Samsung Galaxy Ace


Цитата
PS чтобы суметь применить к нашим девайсам - надо определить sector size и extra data size
Например, для Hermes sector size 0x200, extra data size 0x08. Для Kaiser 0x800 и 0x08

Вот, кажется, нашел тут инфу, которая может помочь нам в освоении tadzio tools
Цитата
помимо "нормальных" данных присутствуют, "дополнительные".
Эти дополнительные данные наполняются по определенному алгоритму.
...
Эти дополнительные данные есть трех видов
1) После партиции XIP и IMGFS идет по 0x80000 байт, состоящих из двух блоков по 0x40000, в конце каждого из которых в свою очередь наш патерн.
2) Блоки длинной 0x1000, на каждый блок размером 0x40000 (0x1000 входит в 0x40000), в начале которых идут счетчики (пока не понял чего), а в конце наш патерн такие встречаются в IMGFS в области ненулевых (забитых отличными от 0xFF данными). Патерн:
062155C1D5299CDFB8EAB8BAF3F9D382478A433BE62AD9A9316739095367BF12
3) Те же блоки длинной 0x1000, но без счетчиков, так же в IMGFS, но только там где данных нет (весь блок забит 0xFF)...

0х1000 - это и есть размер сектора
Теперь, что есть 0х08...
Цитата
и так что из себя представляет блок экстраданных размещающийся в конце каждого куска 0x40000.
Заполнение происходит по такой схеме (8 байт на каждый 0x1000 блок данных внутри 0x3f000 блока):
1) нумерация с каждым блоком 0x1000 увеличивается на 1
2) нумерация начинается с номера сектора указанного для IMGFS как стартовый в MBR структуре.
3) блок с экстраданными не считается за простой блок(сектор), и его номер и идентификатор всегда приравнивается к 0xFFFFFFFF
4) блок данных в котором нет никакой информации (является пустым) считается по порядку, но маркируется так-же как и блок экстраданных.

Вот тут все описано подробно.

Респект за это описание freepk и -Qwerty- с 4pda.ru

PS Просмотрел наш образ - у нас тоже sector size 0x1000, extra data size 0x08

PPS Тем не менее, так и не удалось заставить ее работать (IMG:http://forum.pda2u.ru/style_emoticons/default/sad.gif)
Перейти в начало страницы
Вставить ник
+Цитировать сообщение
 
Начать новую тему
Ответов
-QwertY-
сообщение 10.3.2008, 15:42
Сообщение #2


Новичок
*

Группа: Разработчики
Сообщений: 7
Регистрация: 25.2.2008
Пользователь №: 571
Спасибо сказали: 4 раз(а)




Сама прошивка O2 XDA Flame имеет немного другую структуру.
В прошивке Flame части MBR, MSFLSH50, boot и XIP партиции не помечаются экстраданными. Экстраданные содержатся только в IMGFS партиции.
Формирование экстраданным происходит по отличному от eten алгоритму.

И так экстраданные для каждого сектора (сектор в O2 XDA Flame равен 0x1000 байт) формируются по аналогичному алгоритму, но пишутся в сам файл прошивки по другому.

Для O2 XDA Flame блок экстраданных равен блоку данных и имеет в конце свою сигнатуру
Код
Offset      0  1  2  3  4  5  6  7   8  9  A  B  C  D  E  F

033FFFE0   06 21 55 C1 D5 29 9C DF  B8 EA B8 BA F3 F9 D3 82    !UБХ)њЯёкёєущУ‚
033FFFF0   47 8A 43 3B E6 2A D9 A9  31 67 39 09 53 67 BF 12   GЉC;ж*Щ©1g9 Sgї


Сам блок изначально заполнен 0xFF данными и должен в себе содержать всего 63 блока данных о предшествующих блоку 63 секторах.

Запись информации о предшествующих блоках начинается с начала блока экстраданных, 1 запись равно 8 байт.
Заполнение информации о блоках происходит аналогично прошивкам ETEN (тоесть пустое место имеет идентификатор 0xFFFFFFFF и номер 0xFFFFFFFF).
Сам размер IMGFS части болжен быть кратен 0x40000.

© 4PDA
Перейти в начало страницы
Вставить ник
+Цитировать сообщение

Сообщений в этой теме


Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 7.5.2026, 4:27
return_links(); ?>