Android, из чего состоит прошивка ROM
Сегодня я постараюсь объяснить, что такое прошивка популярным языком, рассчитанным на неискушенного пользователя.
Для начала давайте определимся с происхождением самого этого термина.
Итак, что такое прошивка, в изначальном понимании этого термина. Давным давно, когда вычислительные устройства были большими и некоторые их экземпляры занимали целые комнаты, их встроенная (постоянная) память изготавливалась весьма оригинальным образом.
Каждая ее ячейка состояла из небольшого кольца, выполненного из специального материала – феррита, который легко намагничивается. И в каждое кольцо продевалось две петельки провода, предназначенные для записи (намагничивания), стирания (размагничивания) и считывания информации из этого кольца. А информации в нем хранилось всего лишь один бит: 0 – когда кольцо размагничено и 1, когда намагничено. Знаете, сколько таких колец нужно, чтобы обеспечить устройству 1 гигабайт встроенной памяти? Я вам скажу: всего лишь 8 589 934 592 штуки.
И вот процесс продевания проводов в эти кольца при изготовлении постоянной памяти для старых устройств так и назывался – прошивка.
А теперь вернемся к нашим планшетам и смартфонам. Они, как и любой современный компьютер работают под управлением операционной системы (Windows, Linux, iOS, Android и т.п), которая полностью отвечает за их работу. Иными словами, если внутреннее железо компьютера – это его мозг, то операционная система – это его сознание, которое управляет компьютером.
Без операционной системы любой компьютер, планшет или смартфон – набор мертвого железа. И если на компьютер, операционную систему мы устанавливаем, записывая ее на его жесткий диск, то в планшете или смартфоне операционная система хранится в его внутренней памяти, занимая часть тех 4, 8, 16, 32 или даже 64 гигабайт, которые имеют современные устройства.
Вы наверное уже догадались, что именно эта процедура «установки» операционной системы на планшет или смартфон и называется прошивкой, поскольку система записывается (прошивается) в его постоянную, внутреннюю память.
Теперь вы понимаете, что выражение «сменить пошивку» на планшете или телефоне означает примерно то же самое, что «переустановить Виндовс» на компьютере.
Кроме того, и сам файл с операционной системой, которая записывается на устройство называют прошивкой. Так как начинка или «мозги» у каждого планшета или телефона разные, прошивка создается для каждого устройства отдельно. Прошивки бывают двух типов:
1. Официальные, выпущенные производителем устройства, которые или автоматически загружаются на планшет или телефон через интернет подключение (так называемые прошивки по «воздуху»). Их также чаще всего можно скачать на планшет с сайта производителя и установить вручную. Этот тип прошивок еще часто называют обновлением системы.
2. Самодельные прошивки, их еще называют «кастомные» или «альтернативные». Обычно это улучшенные или доработанные независимыми разработчиками официальные прошивки. К ним также относятся прошивки основанные на официальных версиях «чистой» операционной системы Android от компании Google, такие как CyanogenMod или MIUI.
Рассмотрим состав прошивки , на примере состава прошивки от ZTE , в принципе она с небольшими изменениями идентична на всех Android устройствах
0.25 Мб.) — предзагрузчик. Обеспечивает связь телефона с FlashTool-ом в «режиме USB» для прошивки, а также обеспечивает запуск устройства. Предположительно грузит в оперативную память uboot и передаёт ему управление.
dsp_bl (
0.75 Мб.) — Малоизвестная вещь. Судя по названию микропрограмма процессора. Порча его превращает телефон в планшет без комуникаций. Какими потом прошивками не прошивай телефон беспроводные сети работать не будут. Решение: прошить рабочий dsp_bl. (Только MT65x3, MT65x5, MT65x7!)
nvram (
3.0 Мб.) — хранит калибровки железок, IMEI, MAC-адреса BT и WIFI и другое. Точка монтирования /data/nvram.
seccnfg (
0,125Мб.) — неизвестная штука, обычно содержит только пустоту «FF FF. «.
uboot (
0.375 Мб.) — загрузчик операционной системы + драйверы для инициализации основного оборудования (дисплей, процессор, GPIO).
boot (
6.0 Мб.) — ядро и драйверы операционной системы (камеры, датчики, сенсоры). Точка монтирования /.
recovery (
6.0 Мб.) — минисистема (система в ядре) функцией которой является только резервирование/восстановление приложений системы, сброс до заводских установок. В расширенном recovery функционал конечно же намного богаче.
secstatic (
1.156 Мб.) — sec_ro , зачем нужно не понятно, при стирании на Android 2.2.1 и 2.3.5 ничего не происходит. На Android 2.2.2 (преимущественно у Fly-ying) этот раздел занимает хороший кусок ROM и в нём находятся службы Google. Точка монтирования /system/secro. Файловая система yaffs2.
misc (
0.375 Мб.) — неизвестная штука, обычно содержит только пустоту «FF FF. «.
logo (
3.0 Мб.) — Первая картинка при включении, картинка зарядки. На 95% содержит только пустоту «FF FF. «.
expdb (
0.65 Мб.) — неизвестная штука, обычно содержит только пустоту «FF FF. «.
system (
160-210 Мб.) — системный раздел Android. Тут всё что относится к функционированию аппарата, от «морды» до поддерживаемых функций операционной системы. Всё, что здесь изменяется не подлежит востановлению заводским сбросом. Точка монтирования /system. Файловая система yaffs2.
cache (
62.0 Мб.) — раздел для расположения временных файлов. Обычно используется приложениями («Маркет», «ROM Manager» . ). При утрате содержимого раздела функционирование системы не пострадает. Неверное же содержимое может привести к зависанию при загрузке устройства. Полностью стирается при заводском сбросе. Точка монтирования /cache. Файловая система yaffs2.
userdata (
220-290 Мб.) — data, это раздел для установки программ календарей, телефонок, профилей, настроек различных программ и системы. При утрате содержимого раздела обычно* функционирование системы не страдает. Неверное же содержимое может привести к зависанию при загрузке устройства. Полностью стирается при заводском сбросе. Точка монтирования /data. Файловая система yaffs2.
Источник
Самостоятельное создание прошивки для Android
Прошивка на любом современном смартфоне, включая устройства на платформе Android, позволяет модифицировать буквально каждый элемент на собственный вкус. И хотя обычно рядовые пользователи используют уже готовые варианты, прошивку можно создать самостоятельно. Для этого потребуется ряд специальных инструментов, о которых нами будет рассказано в настоящей инструкции.
Создание прошивки для Android
Прежде чем перейти к основам, необходимо учесть: даже если в точности придерживаться ограничений и рекомендаций из нашей статьи, ваше устройство может прийти в нерабочее состояние. Связано это со многими факторами, от мелких ошибок до отсутствия совместимости. Поэтому любыми доступными способами проверяйте совместимость, чтобы сохранить девайс в целости.
Шаг 1: Установка Recovery
В одной из инструкций на нашем сайте был рассмотрен процесс установки кастомного рекавери, необходимого для перепрошивки Android-устройства. Этот шаг является обязательным и должен быть выполнен заранее до работы с самой прошивкой. При этом помните, что для разных смартфонов используется собственный вариант, но это никак не скажется на дальнейшем процессе за исключением некоторых отличий в интерфейсе.
Шаг 2: Выбор прошивки
Помимо добавления загрузчика с возможностью сохранения доступа к файлам нужно найти прошивку, совместимую с вашим девайсом. В этом вопросе трудно дать какие-то конкретные советы, так как существует огромное количество смартфонов и не менее большой ассортимент прошивок. Проще всего найти подходящий вариант, посетив раздел «Android» на русскоязычном форуме 4PDA или на англоязычном ресурсе XDA Developers.
Отыскав раздел с прошивками для вашего устройства, предпочтение стоит отдать чистым вариантам, которые не были модифицированы автором. Это необходимо для того чтобы изменить прошивку с нуля, не заменяя и не вырезая другие элементы. Загрузите архив в формате ZIP на компьютер, где и будут производиться дальнейшие изменения.
Шаг 3: Подготовка системы на ПК
Специальное ПО для компьютера, о котором пойдет речь в следующем разделе, в равной степени совместимо с ОС Windows, Linux и MacOS. Наиболее удобный метод сводится к использованию систем на основе Linux, в то время как на Виндовс потребуется ряд дополнительных действий и программ. В связи с куда большей распространенностью второго варианта, именно ОС Windows мы уделим внимание.
- Посетите официальный сайт Oracle и загрузите программное обеспечение JDK в соответствии с разрядностью вашей операционной системы.
Кликните по загруженному EXE-файлу и произведите инсталляцию программы.
Следом за JDK нужно скачать и установить Cygwin. Для этого посетите тему на форуме 4PDA по представленной ниже ссылке.
Перейти к скачиванию Cygwin
Откройте загруженный архив при помощи любого удобного архиватора и извлеките имеющиеся файлы.
Среди полученных файлов дважды кликните по «Setup», чтобы начать установку.
На этапе «Choose A Download Source» выберите вариант «Install from Local Directory» и нажмите «Далее».
В строке «Root Directory» путь оставьте без изменений, воспользовавшись кнопкой «Далее».
Дальше нужно изменить «Local Package Directory», указав папку Cygwin, которую вы извлекли из архива ранее. К примеру, в нашей ситуации она находится на рабочем столе, и потому путь выглядит так, как показано на скриншоте.
Дальнейшие действия по установке Cygwin производятся в автоматическом режиме.
По желанию можете создать на рабочем столе ярлык для более удобного запуска программы.
Запустите программу с помощью созданного значка. В ОС Windows выше семерки используйте «Запуск от имени администратора».
Дождитесь завершения создания директорий и файлов в консоли, после чего закройте Cygwin.
На этом этап подготовки можно считать завершенным и переходить к следующему шагу. Заметьте, внутри архива в файле «kitchen_readme» также имеется инструкция по установке.
Шаг 4: Использование Android Kitchen
Программа Android Kitchen, так же известная как «кухня», представляет собой наиболее удобное средство для создания кастомных прошивок. Загрузить архив можно с официальной страницы на Github по ниже представленной ссылке. Лучше всего брать последнюю вышедшую версию ПО.
- Загрузив «кухню» на компьютер, извлеките папку из архива так же, как и на прошлом этапе.
Переименуйте папку в «kitchen» и с помощью комбинации клавиш «CTRL+X» подготовьте к переносу.
Откройте «Локальный диск (C:)» и откройте папку по следующему пути: Cygwin/home/user . Нажмите сочетание клавиш «CTRL+V», чтобы добавить ранее извлеченную папку.
Примечание: Вместо «user» папка будет названа в соответствии с именем пользовательской директории в системе.
Переместите заранее скачанный файл прошивки, подходящей для вашего устройства, в папку «original_update». Эта директория расположена по следующему пути: Cygwin/home/user/kitchen/original_update .
Вновь запустите Cygwin и последовательно воспользуйтесь следующими командами:
cd kitchen
./menu
В случае успеха в консоли появится множество пунктов, предназначенных для работы с прошивкой.
Закройте «кухню» и переходите к следующему этапу.
Шаг 5: Сборка прошивки
Самой важной и наиболее трудоемкой частью является сборка прошивки, так как этот процесс необходимо выполнять с осторожностью, чтобы исключить вероятность ошибок. Данная процедура не будет проблемой при наличии опыта. По той же причине мы не будем акцентировать внимание на этапе сборки, упомянув лишь несколько моментов.
- В главном меню Android Kitchen введите «0» и нажмите «Enter», чтобы перейти к расширенному списку параметров.
Отсюда можно внести множество изменений в прошивку, будь то добавление ROOT, изменение анимации или запуск плагинов.
Для завершения нужно будет ввести «99» и нажать «Enter». Готовый файл будет находиться в папке «OUTPUT_ZIP» в пользовательской директории Cygwin.
Завершив процедуру редактирования, можно приступать к прошивке устройства.
Шаг 6: Установка прошивки
Как и в случае с установкой рекавери, процедура инсталляции кастомной прошивки вне зависимости от варианта ее получения была нами описана в отдельной статье на сайте. Ознакомиться с ним вы можете, перейдя по ниже представленной ссылке. Обратите внимание, что разные виды прошивок могут устанавливаться по-разному.
Заключение
Надеемся, наша статья помогла вам разобраться с процедурой создания собственной прошивки для Android-устройства. Важно учитывать, что без опыта и понимания достичь желаемого результата не получится, даже если уделить внимание конкретным примерам. Связано это с массой отличий в случае разных прошивок, версий Андроид и смартфонов.
Помимо этой статьи, на сайте еще 12473 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Источник