• Общие сведения об архитектуре сотового телефона
  • «Тело» и «душа» телефона
  • Запоминающие устройства
  • Установка и прошивка
  • Виды прошивок
  • Программы для прошивки
  • Прошивка телефона на практике
  • Random’s Flash&Backup
  • Устранение неполадок
  • Глава 7

    ПЕРЕПРОШИВКА, ОБНОВЛЕНИЕ И ТЕСТИРОВАНИЕ ТЕЛЕФОНА

    В этой главе отправимся в довольно рискованный рейд по просторам вашего мобильного телефона. Перед подобной дорогой полезно ознакомиться если не с картой, то хотя бы с абрисом предстоящего маршрута. Освоение компьютера можно сравнить с путешествием, организованным туристической фирмой. Универсальный путеводитель по персональному компьютеру купить вполне реально – ведь в 99 % случаев ваша машина принадлежит к миру WIntel. Так в шутку говорят о компьютере, построенном на Intel-совместимой платформе и работающем под управлением операционной системы Windows. В этой книге всюду подразумевается именно подобная машина, а пользователям Apple Macintosh или операционной системы Linux приведенные описания программ и настроек вряд ли пригодятся.

    Создавать универсальное пошаговое руководство по освоению мобильного телефона практически бессмысленно, вскоре вы поймете почему. Воспользуемся опытом подготовки подразделений спецназа, которые, как известно, должны осваиваться, выживать и действовать в любых незнакомых условиях. Для этого, в первую очередь, надо знать общие принципы выживания и уметь добывать информацию любым доступным путем. Поэтому приготовьтесь к длинному теоретическому отступлению.

    Общие сведения об архитектуре сотового телефона

    Нет ничего практичнее, чем хорошая теория. Постараемся опираться на школьный курс информатики и ваш опыт работы с компьютером. Как уже сказано, принципы устройства и персонального компьютера, и мобильного телефона очень схожи. Вместе с тем мир мобильных использует немного другой подход к программному обеспечению и несколько иную терминологию.

    «Тело» и «душа» телефона

    С одной стороны, и компьютер, и телефон собраны из вполне вещественных деталей: микросхем, конденсаторов, печатных плат, проводов, кнопок и т. д. Специалисты по компьютерам или телефонам официально называют это аппаратной частью, или аппаратным обеспечением, а в разговоре издавна используют короткое слово «железо». Младшее поколение стало называть аппаратную часть мобильного телефона еще проще: «тело». Возможно, такой жаргон режет слух, зато очень точно отражает суть аппаратного обеспечения. Аппаратная часть действительно играет роль «тела» мобильного телефона или компьютера.

    Как вы догадываетесь, дальше нужно вспомнить о душе. В качестве «души» любого цифрового программируемого автомата выступает его программное обеспечение. Все телефонные (прием, передача и расшифровка сигналов, идентификация телефона в сети и др.) и все компьютерные функции (телефонная книга, голосовой набор, игры и др.) мобильного телефона зависят не только и не столько от аппаратной части, сколько от программного обеспечения.

    Главное отличие аппаратной части телефона и компьютера вовсе не в размерах, а в разнообразии. Подавляющее большинство компьютеров независимо от производителя построено на единой платформе, называемой x86. Процессоры компаний Intel и AMD являются прямыми потомками одной микросхемы, выпущенной более двух десятилетий тому назад. Чтобы удержаться на рынке, создатели компьютерных комплектующих вынуждены придерживаться множества открытых стандартов. В результате компьютер можно собрать из отдельных блоков – устройств, выпущенных самыми разными производителями. Поэтому и операционные системы, и другие программы достаточно универсальны.

    Мобильные телефоны изначально разрабатывались многими конкурирующими компаниями, и в результате было создано несколько десятков различных аппаратных платформ. Модификаций этих платформ еще больше. Законы рынка мобильной связи только способствуют разнообразию аппаратных и программных решений. Стандартизация коснулась лишь внешних интерфейсов, и то не всех. Наглядный пример тому – выбор data-кабеля. Из-за необходимости тесного взаимодействия аппаратной и программной частей телефона программное обеспечение для него создают исключительно производители трубок специально под конкретную модель. На других телефонах эти программы работать не будут: с чужой «начинкой» телефон, как правило, даже не включится.

    Запоминающие устройства

    Возникает следующий вопрос: как связаны между собой аппаратная и программная составляющие? Существуют электронные компоненты, которые способны «запоминать» поступающие на них электрические сигналы, сохранять информацию, а потом вновь воспроизводить. Запоминающие устройства обязательно входят в состав компьютеров, мобильных телефонов, да и многих других «умных» приборов: от кондиционера до телевизора. Любое такое устройство можно представить как множество ячеек, в каждую из которых помещается элементарная порция информации – 1 байт. Именно тут физически записано программное обеспечение. При включении питания какая-то «начальная программа» должна быть передана процессору. В первый момент это чисто электрический процесс: из строго определенных ячеек памяти информация «выстреливается» в процессор. Выполняя команды, процессор начинает опрашивать запоминающие устройства, считывает и выполняет записанные там программы, переходит к следующим инструкциям, далее происходит загрузка компьютера (телефона).

    В персональном компьютере информация хранится в нескольких устройствах (рис. 7.1). Операционная система, все прикладные программы и пользовательские данные хранятся на жестком диске. Жестких дисков может быть несколько. Кроме них, существуют и другие, например компакт-диски, flash-диски и карты памяти, которые физически дисками вообще не являются. Объединяет их одно: информация на любых дисках организована в форме файлов. Другими словами, почти все программное обеспечение компьютера заключено в файловой системе. В принципе, какую-либо программу можно записать не на жесткий диск, а на съемный носитель (компакт– или flash-диск) и запускать непосредственно с этого носителя.

    Файловую систему иногда называют разметкой диска. Она напоминает оглавление книги или таблицу, в которой с именами файлов сопоставлены определенные области запоминающего устройства. Благодаря файловой системе мы можем обращаться к конкретным порциям информации «по имени». Мы вводим имя файла, а в ответ компьютер считывает с диска последовательность байт. При этом не имеет значения, записаны ли эти байты в виде намагниченных участков жесткого диска или содержатся в виде электрических зарядов в ячейках flash-диска.

    За пределами файловой системы существует только программа BIOS – базовая система ввода-вывода. Она записывается в микросхему, находящуюся на материнской плате, в процессе ее изготовления. Средства BIOS включают в себя загрузчик, исполняемый код программы ввода-вывода, и значения настроек. Основная ее задача – начальная загрузка компьютера. Когда она выполнена, управление переходит к операционной системе.


    Рис. 7.1. Физическая и логическая структура постоянной памяти компьютера.


    В телефоне запоминающие устройства представлены только микросхемами. В самом общем случае таких микросхем три.

    Ячейки памяти, в которых содержится загрузчик, физически находятся в микросхеме процессора. Загрузчик – микропрограмма, при выполнении которой процессор начинает считывать содержимое остальных областей памяти.

    Вторая микросхема называется EEPROM (электрически стираемое программируемое постоянное запоминающее устройство). В ее ячейках памяти хранятся все индивидуальные настройки телефона, связанные с аппаратной частью: параметры аудиотракта, радиопередатчика, уникальный номер аппарата (IMEI), параметры аккумулятора и т. д. Эти данные очень напоминают настройки BIOS компьютера.

    Третья микросхема – микросхема flash-памяти (Flash Memory); емкость ее в разных аппаратах варьируется от 1 до 32 Мб. В ней записана прошивка (Firmware) телефона, состоящая из двух частей.

    – Программный код (Flash или Main Code) – это собственно программа, которую выполняет аппаратная часть телефона. Ее принято сравнивать с операционной системой компьютера. Операционная система состоит из множества файлов (программ, их компонентов и файлов настроек), каждый из которых выполняет свою достаточно узкую функцию. Такие действия, как просмотр файлов мультимедиа, в компьютере возложены на отдельные прикладные программы. Программный код телефона – единое целое, он включает в себя все функции данного аппарата. Поэтому если на компьютере отдельные прикладные программы можно устанавливать и удалять, то прошивку заменяют только целиком. Языковой пакет (Lang) неразрывно связан с программным кодом и обеспечивает поддержку различных языков интерфейса. Кроме того, языковой пакет содержит словари для быстрого набора SMS (поддержку функций iTap или T9).

    – Другая часть прошивки, Flex, – файловая часть. Она содержит файлы системных настроек (Seems), значков, стандартных мелодий, картинок, шаблонов сообщений, а также файлы расположения меню, конфигурации подсветки и др. Иначе говоря, Flex является файловой системой телефона. Здесь же содержатся записи телефонной книги и ежедневника (User Data), хотя эти данные явно и не отображаются файловой системой.

    Такова классическая схема запоминающих устройств или областей памяти телефона (рис. 7.2). Она совпадает с перечнем составляющих программного обеспечения трубки. Во многих моделях запоминающие устройства организованы иначе, хотя функциональное назначение составляющих в целом сохраняется. Например, в большинстве современных телефонов микросхема EEPROM физически отсутствует, а под нее выделяют область в микросхеме flash-памяти. В некоторых телефонах Motorola в единственной микросхеме памяти размещены и загрузчик, и EEPROM, и прошивка со всей файловой системой. Из всего перечисленного файловой структурой обладает только Flex, а остальное программное обеспечение хранится в запоминающих устройствах телефона в виде безымянной непрерывной последовательности байт. Этим телефон очень напоминает BIOS компьютера. Не случайно BIOS тоже называют прошивкой.

    Понятием SEEM обозначают отдельные записи в памяти телефона, в которых содержатся настройки телефона, IMEI, удаленные SMS и телефонная книга. Это не область памяти, а лишь собирательное название ячеек, хранящих информацию определенного рода. Часть ячеек SEEM входит в EEPROM, а часть – во FLEX.


    Рис. 7.2. Физическая и логическая структура памяти телефона.


    В памяти телефонов Motorola особо выделяют область PDS – это уникальная для каждого телефона зона безопасности, содержащая часть SEEM, адрес для сетевого соединения Bluetooth, сведения об операторской блокировке, кодах и паролях, историю прошивок и другую служебную информацию. Функционально PDS соответствует EEPROM других телефонов. Со стертым или неправильным PDS телефон включается только во flash-режим.

    Panics – это область памяти, идущая сразу за PDS, в которую телефон записывает информацию об ошибках и сбоях программного обеспечения. Panics не затирается при перепрошивке, уничтожить эту информацию можно только принудительно. Прочитать сообщения Panics можно средствами самого телефона через меню.

    Мы умышленно не упомянули о SIM-карте и картах памяти. Первая, несмотря на крошечные размеры, является сложным и вполне самостоятельным устройством, которое сообщает телефону отдельные данные для входа в сеть оператора. Часть своей памяти SIM-карта может предоставить для хранения записей телефонной книги, но эта память никоим образом не является запоминающим устройством самого телефона. Карты памяти представляют собой обычные съемные носители информации с собственной файловой системой, и к телефону непосредственного отношения также не имеют. Когда они подключены к телефону, их содержимое отображается вместе с пользовательскими файлами, хранящимися во Flex.

    На протяжении предыдущих глав вы сталкивались только с той частью программного обеспечения телефона, которая чуть выше была обозначена как Flex. Именно ее содержимое просматривают и изменяют программы-менеджеры.

    Важно, что файловая информация в компьютере не привязана к каким-либо определенным ячейкам или адресам: она записывается на первое свободное место, а в файловой системе отмечается, что содержимое такого-то файла находится в таком-то месте на диске. Совершенно иначе обстоит дело с программным обеспечением телефона: для каждого компонента отведено строго определенное число ячеек (байт) по заранее определенным адресам памяти. Для Flex тоже выделен четкий диапазон адресов, а уже внутри этого диапазона файлы произвольного размера могут располагаться как угодно.

    Ячейки памяти принято нумеровать в шестнадцатеричной (hex) системе. Если в обычной десятичной системе мы считаем до десяти, а затем добавляем единицу в следующий разряд, то в шестнадцатеричной считают до шестнадцати. Естественно, одних цифр для такой записи недостаточно и вместо «10» пишется «A», вместо «11» – «B», и так до «F». Поэтому адрес (номер) ячейки может выглядеть как 10B1F7FF. Диапазон адресов обозначают начальным и конечным адресом, например 10B1F800–10B1FFFF. Можно встретить и другое обозначение диапазона: «начальный адрес 10B1F800, смещение 7FF». Смещение – всего лишь количество ячеек после начального адреса, записанное шестнадцатеричным числом. В данном случае количество ячеек равно 2047.

    О загрузчике и EEPROM стоит помнить следующее: эти составляющие программного обеспечения остаются неизменными на всем протяжении жизни телефона. Именно загрузчик и EEPROM отвечают за включение телефона и связь с компьютером через data-кабель. Пока они целы, телефон можно попытаться «реанимировать»: подключить к компьютеру или программатору и восстановить или заменить прошивку. Если поврежден загрузчик, то мобильный «умирает» окончательно.

    Поскольку ни загрузчик, ни EEPROM трогать не стоит, а с файлами телефона вы уже знакомы, рассматриваемые далее операции с программным обеспечением касаются именно прошивки.

    Установка и прошивка

    Компьютер предоставляет все возможности для установки, настройки и изменения своего программного обеспечения. Вполне достаточно, чтобы в нашем распоряжении был системный блок с монитором и клавиатурой – чистое «железо». Программа BIOS, которая всегда «зашита» в системном блоке, позволит выполнить начальную загрузку компьютера и установить на жесткий диск операционную систему с компакт-диска. Настроить операционную систему можно как угодно, пользуясь средствами самой системы. Можно обновить ее, установить или удалить отдельные компоненты. Установка прикладных программ не вызывает затруднений даже у начинающего пользователя: в сущности, мы копируем все программы (файлы) из дистрибутива, находящегося на компакт-диске, на жесткий диск компьютера. Разумеется, с помощью операционной системы и прикладных программ можно выполнять любые действия с пользовательскими данными (документами): создавать новые, копировать их с одного диска на другой и т. д. Все перечисленное, начиная с установки операционной системы и заканчивая работой с документами, сводится к операциям с файлами.

    В телефон программное обеспечение попадает несколько иначе, а сама трубка играет в этом процессе достаточно пассивную роль. Сам процесс в русском языке называется прошивкой или перепрошивкой. Чтобы внести ясность в русско-английскую терминологию, скажем, что в процессе прошивки в память телефона (Flash) записывают прошивку (Firmware), которая состоит из программного кода (Flash) и файловой части (Flex) (рис. 7.3).

    Для прошивки в телефон программного обеспечения необходимо следующее.

    1. Выполнить установку на компьютер программы для прошивки телефона. Эти приложения называют флешерами (flasher) или прошивальщиками.

    2. Полностью зарядить аккумулятор телефона. Еще лучше, если его питание осуществляется через кабель или от зарядного устройства.

    3. Подключить телефон к компьютеру data-кабелем, установить необходимые драйверы.

    4. Запустить программу для прошивки телефона. Открыть этой программой файл, в котором содержится образ прошивки.

    5. Перевести телефон в режим обновления программного обеспечения, так называемый flash-режим (Flash Mode). В некоторых случаях это делает сама компьютерная программа для прошивки; другие телефоны переводят в данный режим вручную одновременным нажатием нескольких кнопок телефона.

    6. Записать в память телефона программное обеспечение, содержащееся в файле-образе прошивки. Следует указать, в какие ячейки памяти должна быть записана прошивка. Многие программы для прошивки предлагают нужные значения исходя из модели телефона или данных, содержащихся в файле-образе. Процесс записи занимает достаточно много времени – десятки минут.

    7. Перезагрузить телефон. Многие программы делают это автоматически, закончив прошивку.


    Рис. 7.3. Общая схема прошивки телефона.


    Такие программы позволяют выполнить и обратную операцию: полностью или частично считать из телефона содержимое его памяти, а затем сохранить его в виде файла-образа прошивки или отдельных его частей. Эта процедура называется чтением и резервным копированием прошивки (Flash Backup), или дампом (Dump).

    Виды прошивок

    Старый компьютерный закон гласит, что каждая программа содержит хотя бы одну ошибку. Из этого следуют два вывода.

    Исправление одной ошибки вполне может привести к появлению другой.

    Исправление ошибок и усовершенствование программы – бесконечный процесс.

    В полной мере это относится и к мобильным телефонам. Поэтому работа над программным обеспечением для любой модели продолжается непрерывно. Каждые три-четыре месяца, и даже чаще, выходит новая версия прошивки, которая устанавливается во все вновь выпускаемые аппараты.

    Подобно компьютерным программам, версии телефонных прошивок (как Flash, так и Flex) нумеруются. Чем больше номер, тем новее прошивка. Узнать номер версии вашего телефона просто. В меню многих мобильных существуют пункты Сведения о телефоне > Версия ПО или подобные им. «Продвинутые» владельцы Nokia знают, что номера версий и дату создания прошивки можно увидеть на экране, набрав комбинацию клавиш *#0000#. Владельцы Siemens, Alcatel и Motorola с той же целью набирают *#06#. Подключив телефон к компьютеру, версии прошивки можно просмотреть практически любой программой-менеджером, а всякая программа показывает эти сведения обязательно. Наконец, сведения о версиях могут приводиться на наклейке под аккумулятором и на упаковке.

    Последнее обстоятельство достаточно неприятно. Если телефон находится на гарантии, то при обращении в сервисный центр мастер в первую очередь проверит совпадение версии прошивки, указанной на наклейке, и реально установленной в телефоне. Удаление этикетки автоматически лишает вас права на гарантийное обслуживание, а самостоятельная смена программного обеспечения телефона тоже является основанием для отказа в гарантии. Впрочем, даже если версия и не указана на этикетке, официально установленные прошивки прямо соотносятся с датой выпуска телефона, а в EEPROM могут сохраняться служебные сведения о проведенных попытках перепрограммирования.

    Сами по себе номера версий Flash и Flex, установленных в вашем аппарате, ничего не скажут. Гораздо полезнее другая информация – описание версий прошивок, точнее список исправленных ошибок и внесенных изменений. Этот список постоянно обновляется производителями телефонов и рассылается по авторизованным сервисным центрам «для служебного пользования». Поискать такое «секретное» описание проще всего в Интернете (например, на сайте www.trubka.net) или в техцентрах. Из описания можно понять, чего ждать от смены программного обеспечения. В большинстве случаев – это улучшение приема и передачи сигнала и SMS, более стабильная работа аппарата, устранение всевозможных сбоев (подвисания, самопроизвольного выключения), ускорение реакции на команды меню и более экономичное энергопотребление. Больше всего полезных наблюдений и замечаний по версиям прошивок можно найти на форумах, посвященных мобильным телефонам.

    Смена кодовой части (Flash) влечет малозаметные для пользователя, но полезные для телефона изменения. В частности, это оптимизация работы с памятью: более быстрая обработка задач, перемещение по меню, отсутствие задержек при просмотре видео и улучшение качества съемки. Смена языкового пакета проявляется двояко. Если новый языковой пакет поддерживает другой набор языков, то изменяется список доступных языков интерфейса. Если комплект прежний, но исправлен или расширен словарь, то при наборе SMS с включенной функцией «интеллектуального ввода текста» телефон скорее или точнее «угадывает» вводимое слово.

    Смена же файловой части (Flex) видна сразу – меняется набор мелодий, заставок, расположение и порядок пунктов меню. Особенно заметны смена значков и стиля оформления экрана вообще. Иногда добавляют новые встроенные игры или поддержку новых внешних устройств (например, гарнитуры с FM-радио).

    Официальная позиция большинства компаний-производителей сотовых телефонов по поводу смены прошивки такова: для легально приобретенных мобильных в период гарантии эта процедура бесплатна для устранения выявленных ошибок предыдущих версий. Перепрошивку производят в фирменных сервисных центрах, которые находятся преимущественно в Москве. Производители телефонов стараются не допустить свободного распространения как программ для перепрошивки, так и самих прошивок. Однако все тайное рано или поздно становится явным. Сейчас в Интернете свободно можно найти программы, которые делают все то, что раньше производилось аппаратно.

    Новые версии прошивок попадают в Интернет, а затем и к нам исключительно нелегальным путем. Чаще всего с помощью все тех же программ-флешеров прошивку списывают из телефона последнего выпуска. В отличие от компьютерных пиратов, которые своей деятельностью приносят большие убытки производителям программ, пираты телефонные никому не мешают. «Энтузиасты» просто избавляют официальные сервисные центры от лишней бесплатной работы, а владельцев трубок – от некоторого количества денег и проблем. Кроме копий прошивок недавно выпущенных телефонов, в Интернете часто размещаются «самодельные» прошивки. Как правило, изменения, иногда очень удачные, вносятся любителями тюнинга телефонов во Flex. В результате появляются принципиально новые темы оформления экрана и меню, изменяется назначение функциональных кнопок, убираются или добавляются отдельные значки на экране. Изменение Flex – наиболее безопасная программная модернизация, поэтому при условии создания резервной копии исходного состояния телефона с этими прошивками можно поэкспериментировать.

    Поскольку ниже пойдет речь о файлах, содержащих образ прошивки телефона, условимся для краткости называть их просто прошивками или файлами прошивок. Стандартный формат для них – двоичный файл с расширением BIN, являющийся точной побайтовой копией содержимого ячеек памяти. Очевидно, что размер такого файла совпадает с размером памяти телефона и может составлять десятки мегабайт. Программы, с помощью которых считывают память телефона, при сохранении файла могут сжимать его содержимое различными способами, а также добавлять сведения о версии прошивки, адресах памяти, по которым она должна располагаться, и другую служебную информацию. В результате появляются файлы самых разных форматов – TFS, FFS, XFS, SHX, FSW, DAT, MOT и др. Иногда создают дополнительный файл с описанием прошивки и служебными данными для программы-флешера. Полученные файлы обычно упаковываются архиватором WinRAR или WinZip, или на их основе создаются самораспаковывающиеся архивы с расширением EXE.

    Файл прошивки может содержать полный образ всей прошивки телефона, так называемый Full Flash (Monster Pack, Full Backup), или отдельные ее части – только Flash или Flex. Прошивку, содержащую только Flash, часто называют reflash. Применительно к телефонам LG файлы, содержащие Flash и Flex, называют CodeData (код прошивки) и AlchemyData (данные прошивки).

    В имени файла обычно принято указывать модель мобильного телефона или семейство телефонов, версии Flash и Flex, язык, а для «самодельных» файлов Flex еще и имя создателя. В результате файл может называться R365_G_0B.D3.08R_V180_RUS-(2E)_SE7548BXXU1113.shx или CoLoRiT_RELOAD_By_BENT_For_380_650_R365. В первом примере R365_G_0B.D3.08R – версия Flash, SE7548BXXU1113 – версия Flex, а V180 – модель телефона.

    Кроме того, существуют так называемые патчи (Patch) – отдельные части программного кода с внесенными в них изменениями. Размер патча гораздо меньше, чем всей прошивки. При «установке», а точнее его прошивке перезаписывается только ограниченный диапазон ячеек памяти телефона.

    Программы для прошивки

    Как уже сказано, производители телефонов стараются не допускать свободного распространения своих сервисных программ. С этой целью часто применяют аппаратные ключи защиты, иногда программа при регистрации «привязывается» к конфигурации компьютера. Поэтому к обычным пользователям попадают в лучшем случае «взломанные» и достаточно устаревшие программы для прошивки от производителей телефонов. Гораздо больше выбор программ, созданных независимыми разработчиками. «Любительский» софт зачастую не уступает фирменному в функциональности, а по удобству использования иногда и превосходит его. Перечислим некоторые программы для прошивки телефонов.

    • Alcatel.

    – Alcatel Workshop 5.0 Lite – универсальная программа для снятия блокировки и прошивки множества моделей Alcatel;

    – BE4 FLASHer 1.4 ByGsmBoyM – программа для сохранения и загрузки прошивок.

    • LG. Uni_FLOADER – приложение для перепрошивки различных моделей телефонов LG. Файлы прошивки имеют расширение BIF или MOT.

    • Motorola.

    – Motorola Product Support Tools – пакет сервисных программ для работы с телефонами Motorola; поддерживает большинство моделей, защищен аппаратным ключом, во многих «пиратских» копиях часть функций недоступна;

    – Random’s Flash&Backup – удобная программа для прошивки телефона, снятия резервных копий и редактирования прошивок с русским интерфейсом.

    • Nokia.

    – Rolis FLASHer v4 – программа для обновления прошивок телефонов Nokia семейства DCT4;

    – Wintesla – сервисная программа для телефонов Nokia семейства DCT3, снабжена аппаратным ключом защиты и требует особого набора кабелей; существуют «пиратские» копии, однако они работают с ошибками;

    – WinDCT4 FLASHer – приложение для прошивки телефонов Nokia; как и предыдущая программа, требует использования специального набора кабелей.

    • Samsung.

    – SGH FLASHer/Dumper – программа для прошивки телефона и снятия резервных копий на русском языке. Производит как полную, так и частичную прошивку, поддерживает форматы BIN и TFS;

    – OptiFLASH – прошивальщик, поддерживающий множество телефонов Samsung;

    – ToolBox 4.0 – приложение для прошивки и ремонта телефонов Samsung.

    • Siemens.

    – FREia build 10 unlock A60 & C60 – приложение для чтения, сохранения и загрузки прошивок, редактирования заводских настроек и снятия блокировки; работает с большинством моделей Siemens;

    – Siemens FLASH Tools 2002 v096 – программа для считывания и записи Full Flash, EEPROM, чтения и записи произвольных блоков памяти;

    – KSie5.1 – приложение для чтения и записи Flash и EEPROM;

    – UniSiemensSoft v.4 – программа для чтения и записи Flash и EEPROM от Siemens.

    • Sony Ericsson.

    – SE Tool – программа для прошивки телефонов через кабель, подключаемый к COM-порту. Запускается из командной строки;

    – SEMC Tool (USB Smart) – приложение с традиционным интерфейсом и поддержкой кабелей USB.

    Это, разумеется, далеко не полный перечень. Критерии выбора программы довольно просты. Прежде всего это поддержка вашей модели телефона. По мере появления новых моделей выходят и обновления программ. Лучший способ выяснить, поддерживает ли программа ваш телефон, – обратиться на сайт разработчика и на русскоязычные сайты, посвященные ремонту и перепрошивке телефонов. На официальных сайтах производителей такую информацию искать практически бесполезно. Стабильность работы программы, малое число ошибок при работе с конкретной моделью также следует принять во внимание. На этих же сайтах, а особенно на конференциях и форумах, стоит поинтересоваться мнением тех, кто испытывал программу с вашей моделью телефона. В отличие от «фирменных» программ, любительские разработки далеко не всегда снабжаются системой справки и поддержки, такие руководства создают сами пользователи, непрерывно обновляя и дополняя их. Поддержка программой различных форматов файлов прошивок не столь важна. Как правило, поддерживается большинство форматов, принятых для сохранения прошивок телефонов определенного производителя.

    Тактику действий при обновлении программного обеспечения телефона можно свести к десяти пунктам.

    1. Выяснить номера версий программного обеспечения вашего телефона.

    2. Найти в Интернете сведения о более новых версиях прошивок и внесенных в них изменениях. Выбор достаточно широк, поэтому лучше всего просмотреть несколько ресурсов.

    3. Найти ссылки и описания программ для прошивки, подходящих к вашему телефону.

    4. Решить, нужно ли вам перепрошивать телефон вообще. Любители «эксперимента ради эксперимента» этот пункт могут пропустить, но это чревато последствиями!

    5. Выбрать, скачать и установить нужную программу.

    6. Сохранить полную резервную копию прошивки телефона.

    7. Найти в Интернете подходящую прошивку. Критерий выбора – не столько новизна версии, сколько наличие вразумительного описания и положительных отзывов других экспериментаторов. Кроме того, важно уточнить языковой вариант прошивки: для каждой версии существует несколько таких вариантов. Ознакомиться с конкретными рекомендациями и замечаниями по конкретной модели мобильного и данной версией прошивки.

    8. Скачать необходимые файлы прошивки.

    9. Торжественно проститься с гарантией на телефон.

    10. Приступить к перепрошивке телефона, записывая все свои шаги. Подробная запись очень пригодится для исправления каких-либо ошибок и поможет избежать их повторения.

    Прошивка телефона на практике

    Буквальным руководством к действию данный раздел может служить только для владельцев телефонов Motorola. Настоящая цель описания иная: показать, как можно применить на практике теорию.

    Перед тем как вы начнете экспериментировать с прошивкой, целесообразно подготовить сам мобильный телефон. Для этого выполните следующие действия.

    Полностью зарядите аккумулятор. Лучше всего, если питание на телефон во время прошивки будет поступать через data-кабель или от зарядного устройства. Для телефонов Motorola более подходит второй вариант, так как кабель USB не мешает подключению штекера от штатного зарядного устройства телефона.

    В меню телефона отключите требование на ввод PIN-кода. Поскольку перезагрузка телефона будет происходить многократно, а клавиатура во flash-режиме не работает, запрос PIN-кода прервет процесс прошивки. При прошивке многих телефонов рекомендуют извлекать SIM-карту, однако для телефонов Motorola это необязательно.

    Random’s Flash&Backup

    В качестве примера рассмотрим программу Random’s Flash&Backup. Эта сервисная программа для телефонов Motorola семейства P2K, созданная независимым разработчиком, демонстрирует все типичные основные возможности программ такого рода:

    создание/восстановление резервных копий памяти;

    редактирование зоны безопасности PDS (области настроек телефона);

    применение патчей;

    прошивание;

    создание и редактирование файлов прошивок.

    При первом запуске программы и подключении телефона (очередность действий роли не играет) компьютер обнаружит несколько новых устройств. Как уже показано, программы для прошивки телефона обращаются к устройствам другого рода, нежели модем, и требуют установки дополнительных драйверов. Следует выбрать вариант Установка из указанного места. Откуда именно? При установке Random’s Flash&Backup в той же папке, что и сама программа, создается каталог с файлами драйвера С:\Program Files\FLASHBackup 3\Drivers. Разработчики поместили туда сразу две версии драйвера, старую и новую. В документации они рекомендуют использовать более старый, но стабильно работающий драйвер версии 2.1.0.0. В некоторых программах драйверы находятся в одном архиве с дистрибутивом программы, и их необходимо отдельно распаковать в какую-либо папку на диске.

    ВНИМАНИЕ

    Это лишний раз доказывает, что знакомство с любой программой разумно начинать с чтения документации: файлов ReadMe.txt и т. п., а также с посещения сайтов, на которых обсуждается эта программа. Как их найти? Универсальный инструмент – поисковые машины, а ключевое слово – название данной программы.

    В верхней части окна программы (рис. 7.4) располагается раскрывающийся список Активный профиль. Из него достаточно выбрать модель телефона, при этом основные настройки будут установлены автоматически. Такая простая и очевидная процедура – несомненное достоинство Random’s FLASH&Backup. В других программах подобные параметры могут «скрываться» в меню.

    В нижней части окна находится строка состояния с цветным индикатором. Если телефон не подключен или программа не может установить с ним связь, цвет индикатора красный. Когда программа успешно определяет подключенный мобильный, цвет индикатора меняется на зеленый, а рядом отображаются сведения о нем: модель, версия прошивки и его IMEI.


    Рис. 7.4. Выбор модели телефона.


    Начнем с создания резервных копий. Главное окно программы содержит несколько вкладок. На первой вкладке, Чтение данных, приведена таблица с перечислением сохраняемых областей памяти. В данной программе эти области, как принято для телефонов Motorola, обозначаются аббревиатурой CG (Code Group). После номера кодовой группы в скобках идет описание этой группы. Далее приводится диапазон адресов, занимаемый группой, и его размер в байтах. Из описаний можно догадаться, что кодовые группы – не что иное, как компоненты прошивки, перечисленные в теоретической части этой главы. При этом CG1 и CG3 (программное обеспечение) соответствуют Flash; описание CG4 (языковой пакет) говорит само за себя, а CG2 (пользовательская память) – скорее всего, Flex.

    Поскольку из теоретического курса известно, что чем полнее резервная копия, тем лучше, установите флажок Выбрать все. При этом установятся флажки напротив всех кодовых групп, а в поле Всего появится объем считываемой памяти.

    Флажок Убрать пустоту в конце кодовых групп по умолчанию снят. Хорошее правило поведения в таких случаях гласит: если назначение какого-либо переключателя неизвестно, безопаснее оставить его в исходном положении. Точно так стоит поступить и с раскрывающимся списком Формат хранения: оставим предлагаемый по умолчанию формат FB3.

    В текстовое поле Комментарий к создаваемому файлу введите свой произвольный комментарий, например исходное состояние телефона (рис. 7.5).


    Рис. 7.5. Сохранение резервной копии прошивки.


    Нажмите кнопку Чтение данных. Программа переведет телефон во flash-режим. О том, что телефон перешел в этот режим, свидетельствует появившееся на его экране сообщение (рис. 7.6). В нем указана версия загрузчика (Boot loader 07.B0). Программа считает содержимое памяти, а затем перезагрузит мобильный. Процесс чтения данных и сохранения резервной копии занимает несколько минут.


    Рис. 7.6. Экран телефона во flash-режиме.


    Прошивка сохранена на жесткий диск компьютера. Правда, непонятно, куда именно? Ведь программа не предложила указать ни папку, ни имя файла.

    Перейдите на вкладку Настройки. В поле Папка для хранения резервных копий по умолчанию указан путь C:\Program Files\FLASHBackup\ Backups\. Открыв эту папку, убедитесь, что в ней появилась подпапка, в имени которой присутствует текущая дата, а в ней – файл резервной копии прошивки.

    ПРИМЕЧАНИЕ

    Если программа не предлагает ввести какие-либо пути для сохранения данных, в первую очередь следует поинтересоваться соответствующими настройками самой программы. Вполне вероятно, что файлы сохраняются в папку, указанную по умолчанию, а имена им присваиваются автоматически, например исходя из времени и даты создания. Это довольно характерно для программ перепрошивки телефонов.

    Для создания более полной копии программного обеспечения телефона следует отдельно сохранить копию PDS и таких данных, как телефонная книга и ежедневник. Последнюю операцию мы уже выполняли раньше с помощью программ-менеджеров телефона. Принципиальное различие в том, что программы-менеджеры сохраняют отдельные записи телефонной книги и ежедневника в виде текстового файла или файла базы данных, а программы для прошивки создают образ всей области памяти, в которой хранится эта информация. Сохраним телефонную книгу и ежедневник в программе прошивки. Для этого перейдите на вкладку Другие функции (рис. 7.7). В левой части окна выберите пункт Справочник и сообщения.

    В области Выберите необходимые элементы для создания копии/восстановления установите флажки Справочник и ежедневник и Все сообщения. Нажмите кнопку Создать копию. В папке C:\Program Files\

    FLASHBackup 3\Backups появится папка Userdata, а в ней файл, в названии которого указаны текущие дата и время. Это файл, в котором сохранена резервная копия области памяти телефона с телефонной книгой, ежедневником и всеми SMS. На вкладке Другие функции в левой части окна выберите пункт Обработка PDS. Нажмите кнопку Откр. из телефона. В результате вы увидите сообщение об ошибке, гласящее, что при выбранном профиле такая операция невозможна.


    Рис. 7.7. Сохранение справочника.


    Что делать? Раз причиной ошибки назван выбранный профиль, попробуем сменить его. Из раскрывающегося списка Активный профиль выберите значение Общий для моделей с бутом не выше 07.D0. Наш подопытный телефон вполне подходит под это определение, ведь версия его загрузчика (07.B0) действительно ниже, чем 07.D0.

    Вновь нажмите кнопку Откр. из телефона. На этот раз область PDS будет успешно считана, о чем свидетельствуют появившиеся в окне программы шестнадцатеричные данные (рис. 7.8). Не вдаваясь в подробности, скажем, что эти данные содержат настройки телефона и представляют собой записи SEEM.


    Рис. 7.8. Содержимое PDS считано из телефона.


    Нажмите кнопку Сохранить файл, а в появившемся окне укажите папку и имя файла.

    Таким образом, мы сохранили три файла, в которых содержится практически полный образ программного обеспечения нашего телефона. Он понадобится при восстановлении исходного состояния телефона, если результат перепрошивки не устроит. После того как мы выбрали профиль телефона Общий для моделей с бутом не выше 07.D0, на вкладке Чтение данных стали доступны совершенно другие элементы (рис. 7.9). Оказывается, при такой настройке программы вполне можно сохранить полную резервную копию памяти, включая все кодовые группы, PDS и загрузчик. Достаточно только выбрать необходимый размер памяти: 16 или 32 Мбайт в зависимости от модели телефона.

    Каковы преимущества и недостатки подобной копии? Очевидное преимущество в том, что, возможно, какие-то адреса памяти не вошли ни в один из трех файлов. В полной копии будет сохранено абсолютно все, и, соответственно, восстановление будет заведомо полным. Полную копию сделать целесообразно на случай каких-либо непредвиденных аварий – практика показала, что резервные копии лишними не бывают. Недостаток менее очевиден. Дело в том, что такую копию можно прошить в телефон только целиком. Выборочно восстановить из нее, допустим, только языковой пакет или только телефонный справочник не удастся, а при перепрошивке такая возможность довольно важна.


    Рис. 7.9. Сохранение полной резервной копии прошивки.


    Теперь приступим к обновлению программного обеспечения. Для этого потребуется файл прошивки более новой версии, чем та, что установлена в нашем телефоне. Такой файл в виде архива RAR был сохранен из Интернета. Распакуйте файл прошивки из этого архива в какую-либо папку, например в C:\Temp. В окне программы Flash&Backup перейдите на вкладку Запись данных и нажмите кнопку Выбрать файл. В открывшемся окне перейдите к папке, в которую ранее был распакован файл прошивки, и выберите этот файл (рис. 7.10). Нажмите кнопку Открыть.

    В области Выберите необходимые элементы перечисляются кодовые группы, входящие в прошивку. Установите флажки перед теми элементами, которые вы хотите записать в телефон (рис. 7.11).


    Рис. 7.10. Выбор файла прошивки.


    Рис. 7.11. Выбор элементов для прошивки в телефон.


    Полезно сравнить данные о программном обеспечении телефона, показанные в строке состояния, со сведениями о прошиваемом файле. В данном случае можно заметить, что в прошиваемом файле версия Flash выше, а версия Flex, наоборот, ниже, чем версии аналогичных, уже установленных, компонентов. Поэтому целесообразно снять флажок перед элементом CG2 (Пользовательская память) – нет смысла заменять существующую версию Flex более старой.

    Нажмите кнопку Запись данных. Информация из файла-образа прошивки будет записана в память телефона. Это, как и чтение памяти, достаточно долгий процесс. Текущие операции отображаются в окне сообщения. После окончания прошивки телефона закройте окно сообщения, нажав кнопку Закрыть, отсоедините телефон от кабеля и включите его.

    Можно также прошить файл, содержащий только Flex. В этом случае в области Выберите необходимые элементы будут отображены те кодовые группы, которые содержатся в выбранном файле.

    После прошивки в большинстве случаев в телефоне оказываются стертыми все записи телефонной книги и архив SMS. Для восстановления этих данных можно воспользоваться программой-менеджером, но можно восстановить записи и из образа, созданного Flash&Backup. Для этого необходимо выполнить следующие действия.

    1. В окне программы перейдите ко вкладке Другие функции.

    2. В левой части окна выберите пункт Справочник и сообщения.

    3. В области Выберите необходимые элементы установите флажки Справочник и ежедневник и Все сообщения.

    4. Нажмите кнопку Восстановить. Все записи будут восстановлены в первозданном виде.

    Устранение неполадок

    По той же причине, по которой невозможно создать универсальное руководство по прошивке мобильных телефонов, не существует и универсальных рекомендаций по устранению неполадок.

    Самая частая и пугающая ситуация – после перепрошивки телефон не включается. Первое действие при этом – снять и вновь присоединить аккумулятор, а затем попробовать включить мобильный. Иногда помогает включение телефона во flash-режиме. Например, на аппаратах Motorola для этого необходимо одновременно нажать клавиши * и #, а затем, удерживая их, нажать кнопку включения. Далее следует подключить телефон к компьютеру и проверить, определяет ли подключенное устройство программа для прошивки. Вполне возможно, что телефон «завис» на каком-то этапе загрузки, поэтому его экран не светится, а на нажатие кнопок аппарат не реагирует. Программа может получить через кабель доступ к интерфейсам управления и программирования телефона. Если это так, следует попытаться перепрошить телефон той полной резервной копией, которая была сделана заранее.

    Существуют и более радикальные способы оживления мобильного. В частности, это установка перемычек на плате, подача питания непосредственно на контрольные точки платы телефона и др. Эти методы применяют в сервисных центрах и при желании описания таких приемов для конкретных моделей можно найти в Интернете.

    Другой неприятный случай – после перепрошивки появляются критические ошибки при обращении к меню, самопроизвольное выключение телефона и т. д. Здесь снова выручит резервная копия. После восстановления исходного состояния, если неудача не отбила у вас желание продолжать эксперименты, следует попробовать другую прошивку.

    Если попытки прошить телефон оканчиваются появлением сообщения об ошибке, можно попытаться использовать другую прошивку. Следующим шагом является выбор другой версии программы для прошивки или вообще другой программы. Иногда ошибки связаны именно с поврежденным файлом прошивки или с несовместимостью конкретных аппаратов, прошивок и программ.

    Случайное выключение компьютера (например, отключение электричества в доме) или полный разряд аккумулятора телефона, скорее всего, приведут к временной неработоспособности мобильного. Аккумулятор проще всего зарядить на другой аналогичной трубке. С полностью заряженным аккумулятором следует повторить попытку перепрошивки – почти всегда она проходит успешно.

    Лучший способ овладеть всеми секретами перепрошивки и настройки мобильного телефона – предварительно собрать как можно более полную информацию о своем мобильном, его недокументированных возможностях и других «подводных камнях».