What is android rom and firmware

What are Custom ROMs for Android and why they are awesome?

Updated on July 9, 2021

If you’re reading this post, chances are you’re new to the world of Custom ROMs For Android™. Am I right?

As a starter, it can be very overwhelming to grasp a bunch of new technical terms such as “bootloader”, “custom recovery”, “flashing ROM”, etc. Trust me, I’ve been there.

For me, it all started when I accidentally stumbled upon a thread in XDA while looking for tips to bring my old lagging smartphone back to life. And that opened the doors to this parallel dimension of Android-based operating system development to me.

Believe me, I was dead scared when finally flashing a Custom ROM on that smartphone. No prizes for guessing, the fear was not of failure, rather of rendering the phone useless in the process (bricking)!

Thankfully, it went well, and I was pleasantly surprised with the results and wondered why I didn’t know about this before.

If you share the dilemma, I can assure you that if I could flash a Custom ROM on my Android device, with my very limited knowledge, you can too.

Be warned that you may never again want to go back to using the stock OS provided by your smartphone manufacturer (yes!). Unless it’s a Pixel or OnePlus device maybe, will discuss later why.

Coming back to where we started, I’ll assume you’re a beginner if you’re reading this article (although even if you’re not, I’m glad you’re still with me).

Let us start taking baby steps into the world of custom ROMs for Android and understand what they are and what makes them so cool. Note that in this article we are not going to cover the processes involved, or try to understand the technicalities; we shall just focus on the basics.

Table of Contents

What is Android?

Android is a touch-based operating system developed and maintained by Google for smartphones and tablets. It is based on a modified version of the Linux kernel.

What is Android Open Source Project (AOSP)?

Android Open Source Project (AOSP) is the official repository of Android OS maintained by Google where the source code in its purest form is available for anyone to download. The goal of AOSP is to provide an open-source framework for developers and manufacturers to build on while maintaining compatibility across various Android devices.

The source code is modified by various OEMs (such as Samsung and OnePlus) to add extra features, customization or performance optimization for their mobile devices.

Independent developers use the same source code to build feature-rich variants of the Android operating system for various devices. Let us discuss this part further.

What is a Stock ROM?

Stock ROM is the OS that comes pre-installed on a new Android device. The manufacturers build them by tweaking Android OS to give it a unique flavour. Popular examples: Samsung Experience and OxygenOS.

What is a Custom ROM?

In simple words, custom ROMs are firmware based on the Android operating system for mobile devices. Usually, they are built to enhance the user interface and/or add features on top of Android in its vanilla form.

Most of the custom ROMs are developed and maintained by individual Android developers or small teams. However, these are a few examples of corporates developing custom ROMs.

Why should you install Custom ROMs?

There are quite a few reasons why you may want to go for a custom ROM.

  • Stock Android: Most smartphone manufacturers ship their devices with custom skinned Android operating systems. And although some might like it, if you’re like me, you would prefer a clean, no-nonsense OS on your device. And since most custom ROMs retain the pure user interface of Android, it’s an obvious choice to go for them if you’re fond of simplicity.
  • Latest Android on older devices: Most smartphone manufacturers support their devices with OS upgrades through one or two years. That’s hardly one major version upgrade and few security updates. And then some companies do worse. So if you’re stuck with an outdated Android version on an old smartphone that no longer gets official updates from the manufacturer, you may give custom ROMs a serious thought. Plus, custom ROM developers are generally way quicker at pushing updates than most manufacturers.
  • Get rid of bloatware: When you buy a new smartphone, you will notice it comes with a bunch of pre-loaded apps, either from the manufacturer or a third party. Third-party app companies pay OEMs to ship their devices with their apps, which in turn helps bring down the overall smartphone prices for the consumers. These are usually the least used apps. What’s worse – most of them are installed as system apps, which means you cannot uninstall them if you want (although lately, I have observed a welcome change in this practice). Getting a custom ROM installed on your device makes sure you have a system clean of unwanted apps – which in turn means more storage space and less RAM wasted.
  • Added features/customization: Custom ROMs come with many added features not found in the stock OS of your device. And unlike those provided by the manufacturers, these are useful more often than not. Add to that the endless possibilities of customising the look and feel of your device the way you want, it’s a solid deal.
  • Regain control of your device: Most smartphones are deliberately underpowered by the manufacturers. This means you’re not getting the experience that the hardware on your device is capable of providing. Flashing a custom ROM and getting root access makes sure you get maximum performance from your device. Remember, you also paid for the hardware too when you bought the phone.
Читайте также:  Tiny troopers для android

Why should you avoid Custom ROMs?

Despite the many advantages custom ROMs bring in, there are still a few points to reconsider:

  • Void warranty: Replacing the stock operating system of your device with a Custom ROM usually voids your warranty.
  • Possible damage to your device: The process of installing a Custom ROM is not for everyone. Go for it only if you want to take the challenge, and the risk of damaging your phone if something goes wrong.
  • Battery performance: It has been observed that Android devices provide the longest battery life on their stock skins. This is because they are optimised for the hardware and rigorously tested.
  • Hardware issues: Custom ROMs may at times be unstable on your device as they were not originally built to support your hardware. There may be abrupt restarts, frame drops or crashes. However, lately, I have noticed that the Custom ROM ecosystem has evolved a lot and many of these issues are no longer as frequent.

Are Custom ROMs safe to install?

Yes, custom ROMs are very safe to install as your daily driver. But there are a few things to keep in mind here:

  • Source: Download Custom ROMs only from respective official websites or XDA.
  • Instructions: Follow the installation instructions provided by the developer religiously. Often the developers don’t explain the process in-depth assuming you already know it. So, do thorough research before installing your first.
  • Expert help: Take expert help if needed. Watch tutorial videos on Youtube, call up an Android nerd you know or raise your query on the XDA forum so that the developer or the fellow members can help you out,

Who should install Custom ROMs?

First, be informed that installing custom ROMs comes with its share of risks as explained before. You need to be very sure you want this trade-off.

  • If your device is still under warranty, replacing the stock OS may void it. Read the warranty document first.
  • If your device is no longer under warranty but works flawlessly and you don’t see a reason to replace the OS, then don’t do it.
  • I would not recommend someone with limited technical know-how or a penchant for troubleshooting to install a Custom ROM on their own.
  • Yet, if you have the passion to try something different and are ready to do all the troubleshooting if things go wrong, just go for it.

Which devices don’t need a custom ROM?

This is very subjective. Any device can survive well without a custom ROM. But my personal opinion is, if your device is already running a near-stock version of Android, don’t go for a custom ROM.

So which devices in particular? Let’s see.

  • Pixel smartphones – They give a pure Android experience with added Pixel specific features and enhancements.
  • OnePlus smartphones – They run on OxygenOS, which gives a near-stock experience and is highly optimised for speed and performance.
  • Android One smartphones – The updates for these smartphones are pushed by Google itself as part of the Android One project.
  • Others – There are some manufacturers that at times launch devices with near-stock Android experience, without being part of the Android One project.
Читайте также:  Как обновить h96 max tv box до android 10

Absolutely. AOSP is open source. This means that any modifications made under the appropriate open source licence are completely legal as long as the new codes being added are not proprietary.

I’m glad you’re still with me in this learning journey. I hope we have been able to understand the basics of Custom ROMs, their merits and demerits and whether you really need to flash one on your device.

Next, I would advise you to read my article on the best custom ROMs for Android and figure out which one you like based on your needs.

Look, I know it can be daunting in the beginning, but isn’t most things in life the same?

If you have any queries or suggestions, please write in the comments. I would be happy to answer them as that helps me as much as you.

Источник

Введение в Android Firmware

Телефоны и планшеты Android, как правило, намного более открытые, чем их аналоги с такими операционным системами, как iOS, Tizen или Windows 10 Mobile. Если вам не нравится прошивка, установленная изготовителем устройства на вашем устройстве Android, вы можете заменить ее собственной. CyanogenMod, Paranoid Android и проект Pure Nexus — примеры пользовательских прошивок, которые пользуются большой популярностью среди пользователей Android.

Пользовательская прошивка также является единственным способом установки новых версий Android на устройствах, которые больше не поддерживаются их производителями. Если вы не владеете устройством, принадлежащим к серии Nexus или Android One, я уверен, что вы уже это знали.

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

Предостережения

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

1. Что такое прошивка для Android?

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

Однако прошивка для Android отличается от других. Она включает в себя всю операционную систему Android и хранится в записываемой памяти под флэш-памятью NAND, том же типе памяти, который используется на устройствах хранения, таких как USB-накопители и SD-карты. Слово прошивка используется только потому, что производители устройств не удосужились придумать новое слово для этого.

Прошивку Android также часто называют Android ROM, потому что по умолчанию пользователи не могут напрямую писать в нее.

2. Что содержит прошивка Android?

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

Что такое загрузчики

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

Как он решает, что является подлинным? Он проверяет, был ли загрузочный раздел подписан с использованием уникального ключа OEM, что является сокращением от ключа Original Equipment Manufacturer. Ключ OEM, конечно же, принадлежит производителю устройства, является закрытым, и вы не можете понять, что это такое.

Из-за проверки подлинности вы не можете напрямую установить пользовательский ПЗУ на устройстве Android. К счастью, в наши дни большинство производителей устройств позволяют пользователям отключать проверку. На Android-жаргоне они позволяют пользователям разблокировать загрузчик.

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

Обычно для запуска команд разблокировки используется инструмент fastboot, который является частью Android SDK. Например, если у вас есть устройство Nexus, вы можете разблокировать его загрузчик, выполнив следующую команду:

В этой статье вы узнаете больше о fastboot. Обратите внимание, что если у вас есть устройство с загрузчиком, которое невозможно разблокировать, нет простого способа изменить или заменить его прошивку.

Что такое радио прошивка

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

Как правило, это RTOS — операционная система реального времени отвечает за управление возможностями сотовой радиосвязи устройства. Другими словами, это то, что позволяет вашему устройству совершать звонки и подключаться к Интернету с использованием беспроводных технологий, таких как 2G, 3G и 4G LTE.

Читайте также:  Шпионское по для андроид как выявить

RTOS — это проприетарный кусок кода и популярные производители базовых процессоров, такие как Qualcomm, MediaTek и Spreadtrum держат его в секрете. Операционная система Android обычно взаимодействует с RTOS с использованием сокетов и обратных вызовов.

Как правило, замена радио прошивки вашего устройства — плохая идея.

Что такое билды Android

Android-сборка — это единственная часть прошивки, созданная с открытым исходным кодом. Следовательно, это единственная часть, которую вы можете изменить и расширить. Когда вы слышите, как энтузиасты Android говорят, что «я сделал новый ПЗУ на своем устройстве», вы можете быть уверены, что речь идет о новой сборке Android.

Сборка Android обычно используется в виде ZIP-файла, который может использоваться fastboot. Он имеет следующее содержимое:

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

boot.img — это двоичный файл, содержащий как ядро Linux, так и ramdisk в виде архива GZIP. Ядро — это исполняемый файл zImage для загрузки, который может использоваться загрузчиком.

С другой стороны, ramdisk является файловой системой только для чтения, которая монтируется ядром во время процесса загрузки. Он содержит хорошо известный процесс init, первый процесс, который запускается любой операционной системой на базе Linux. Он также содержит различные демоны, такие как adbd и healthd, которые запускаются процессом init. Вот как выглядит дерево каталогов ramdisk:

system.img — образ раздела, который будет установлен в пустой каталог system, который вы можете увидеть в приведенном выше дереве. Он содержит исполняемые файлы, необходимые для запуска операционной системы Android. Он включает в себя системные приложения, шрифты, фреймворки JAR, библиотеки, медиакодеки и многое другое. Очевидно, что этот файл больше всего интересует пользователей Android, когда они запускают новый ПЗУ.

Системный образ также является файлом, который заставляет большинство пользователей Android проявлять интерес к пользовательской прошивки. Файлы системных образов, предоставляемые производителями устройств, часто заполняются ненужными приложениями и настройками, неофициально называемыми bloatware. Единственный способ удалить bloatware — заменить образ системы производителя на более желательный образ системы.

userdata.img — образ раздела, который будет установлен в пустой каталог data, который вы можете увидеть в дереве каталогов ramdisk. Когда вы загружаете пользовательский ПЗУ, этот образ обычно пустой, и он используется для сброса содержимого каталога data.

recovery.img очень похож на boot.img. Он имеет загрузочный исполняемый файл ядра, который может использовать загрузчик, и ramdisk. Следовательно, образ для восстановления также можно использовать для запуска устройства Android. Когда он используется, вместо Android запускается очень ограниченная операционная система, которая позволяет пользователю выполнять административные операции, такие как сброс пользовательских данных устройства, установка новой прошивки и создание резервных копий.

Процедура, необходимая для загрузки с использованием образа восстановления, зависит от устройства. Обычно это включает в себя запуск режима загрузчика, также называемый fastboot mode, путем нажатия комбинации аппаратных ключей, присутствующих на устройстве, а затем выбора опции Recovery. Например, на устройстве Nexus вам нужно нажать и удерживать кнопку питания в сочетании с кнопкой уменьшения громкости.

Кроме того, вы можете использовать adb, инструмент, включенный в Android SDK, для прямого входа в режим восстановления.

3. Использование fastboot

Самый простой способ загрузки новой прошивки на вашем устройстве — использовать инструмент fastboot. fastboot следует протоколу fastboot для связи с устройством Android. Однако это может произойти только при запуске устройства в режиме fastboot. Самый быстрый способ войти в режим fastboot — использовать adb:

Чтобы запустить пользовательский ПЗУ, который доступен в виде ZIP-файла, содержащего все файлы образов, упомянутые в предыдущем разделе, вы можете использовать команду fastboot update . Например, вот как вы могли бы загрузить ROM, присутствующий в файле с именем update.zip:

Если вы хотите загрузить только определенный образ, вы можете сделать это, используя команду quickboot flash . Например, вот как вы могли бы загрузить только образ системы:

Аналогичным образом, если вы хотите заменить только загрузочный образ, вы должны использовать следующую команду:

Всегда полезно проверить, работает ли загрузочный или восстановительный образ, прежде чем он начнет работать на вашем устройстве. Для этого вы можете использовать команду fastboot boot . Например, вот как вы можете проверить, совместим ли пользовательский образ восстановления с именем twrp.img с вашим устройством:

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

Заключение

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

Источник

Оцените статью