Firmware что это такое
Что такое прошивка
Заглядываем внутрь простой электроники
Наверняка вы слышали фразы вроде: «обновил прошивку телефона», «у фотоаппарата проблемы с прошивкой» или «пиратская прошивка». Сейчас эти фразы означают любой софт, который управляет железом на низком уровне.
О чём речь
Сам термин «прошивка» появился примерно 70 лет назад: это было время, когда ещё не было интегрированных микросхем и микроэлектроники, а вычислительные машины уже были. И вот тогда вместо флеш-памяти и жёстких дисков использовали память на магнитных сердечниках.
Сердечник — это тороид (типа бублик) из специального материала, который можно намагничивать с помощью тока. Через сердечники пропускают ток в разных направлениях, и в зависимости от этого менялись магнитные свойства этого сердечника. Намагниченный сердечник означал единицу, размагниченный — ноль.
Кайф был в том, что намагниченный сердечник оставался намагниченным, не мешал соседям и терял заряд очень медленно, поэтому такую технологию можно было с некоторой натяжкой назвать компьютерной памятью.
Чтобы собрать рабочий модуль памяти, нужно было продевать множество проводов через множество бубликов, что напоминало процесс прошивания иголкой и ниткой. Процесс был ручным: сидели инженеры и шили себе память. Отсюда и слово — «прошивка».
Потом изобрели печатные платы и интегрированные микросхемы, жить стало веселей, появилась флеш-память и магнитные накопители. Процесс записи данных поменялся, а термин остался. С тех пор прошивкой называют программу, заложенную в микросхему и отвечающую за её работу.
Память на магнитных сердечниках
Зачем нужна прошивка
Прошивка в электронике отвечает за работу всего устройства — телефона, фотоаппарата, умной колонки, часов или охранного модуля. Сама прошивка хранится либо в той же микросхеме в блоке памяти, либо в отдельном чипе, если для неё нужно много места.
Когда устройство включается, происходит такое:
👉 Получается, что прошивка — это программа, которая отвечает за работу всего устройства на самом низком уровне.
Зачем менять прошивку
Иногда производитель устройства не добавляет в него некоторые возможности. В этом случае программисты извлекают файл прошивки из устройства, разбираются, из чего он состоит, и смотрят, можно ли в нём что-то изменить, чтобы сделать устройство лучше.
История из жизни одного производителя смартфонов: при производстве телефонов используется один модуль камеры и в дешёвых, и в дорогих моделях. Чтобы они не конкурировали между собой, производитель может в прошивке дешёвой модели отключить оптическую стабилизацию или ночную съёмку. В итоге покупатели знают, что если нужна ночная съёмка, то нужно взять дорогую модель, потому что она это умеет, а дешёвая нет.
Но если в прошивке убрать это ограничение и загрузить её на дешёвый телефон, то он тоже станет снимать и со стабилизацией, и ночной режим появится. В итоге за те же деньги пользователь может получить новые возможности устройства. Но теряет гарантию производителя.
Другой пример — из мира фотоаппаратов. У старых камер Canon есть стандартная прошивка, у неё много ограничений. Разработчики придумали альтернативную прошивку Magic Lantern, которая делает из камеры настоящего зверя для съёмки видео.
Прошивка — не для всей электроники
Есть много устройств, которые прошить не получится: либо нужно распаивать микросхему, либо она защищена от записи. Чаще всего это простая бытовая техника: пульты от телевизоров, миксеры, микроволновки, детские игрушки и тому подобное.
👉 Общее правило такое: если устройство можно подключить к интернету или к компьютеру — скорее всего, его можно прошить. Работает это не всегда, но чаще всего так.
А можно ничего не прошивать и пользоваться как есть?
Можно, иногда даже нужно, если прошивка отвечает за важные системы, например за работу домашнего газового котла, автомобильных систем безопасности или кардиостимулятора.
Что такое прошивка? Определение и типы
Что такое прошивка
Микропрограмма, как и драйверы, выполняет ту же функцию, но отличается тем, что хранится на самом аппаратном устройстве, пока драйверы устанавливаются внутри операционной системы. Кроме того, прошивка может запускаться сама по себе и выполнять то, для чего она запрограммирована или предназначена, в то время как драйверы должны запускаться операционной системой.
Типы прошивок
BIOS
Первое, что оживает после включения компьютера – это BIOS. Он может взаимодействовать с оборудованием и проверять наличие неизвестных ошибок. Затем он сигнализирует о другой программе, называемой загрузчиком, которая выполняет функцию пробуждения операционной системы, спящей внутри жесткого диска, и помещает ее в оперативную память. Таким образом, BIOS несет основную ответственность за обработку аппаратных компонентов вашего компьютера и обеспечение их правильной работы. Хотя низкоуровневое программное обеспечение хорошо, оно оставалось практически неизменным в течение последних двух десятилетий, и в связи с этим оно становится устаревшим и не поддерживает современные технологии. Например, BIOS по-прежнему использует 16-битный код, в то время как большинство ноутбуков и ПК используют 32- и 64-битный код.
EFI, сокращенная форма Extensible Firmware Interface, представляет собой спецификацию системного встроенного ПО нового поколения, которая предоставляет первые инструкции, используемые ЦПУ для запуска аппаратного обеспечения, и передает управление загрузчику. EFI, иногда также называемый Unified Extensible Firmware Interface (UEFI), имеет определенные преимущества перед BIOS. Например, это помогает гарантировать, что ваш компьютер загружается с использованием только программного обеспечения, которому доверяет производитель ПК, т. Е. Поддерживает функцию «Безопасная загрузка» для повышения безопасности.
Зная версию BIOS вашего компьютера, вы сможете узнать, установлена ли у вас самая последняя версия прошивки. На компьютерах с Windows вы можете получить информацию о версии прошивки с помощью командной строки. Кроме того, вы можете использовать помощник по обновлению для вашего устройства.
Вообще говоря, чтобы увидеть версию прошивки любого оборудования, вы можете открыть Диспетчер устройств, развернуть категорию, выбрать оборудование, щелкнуть по нему правой кнопкой мыши и выбрать «Свойства». Теперь на вкладке «Сведения» в раскрывающемся меню «Свойства» выберите «Аппаратные идентификаторы». Здесь, в таблице значений, вы должны увидеть версию прошивки.
Обновление прошивки
Обновления прошивки доступны от производителей оборудования. Например, может быть выпущено обновление прошивки для сетевого маршрутизатора, чтобы исправить ошибки, дыры в безопасности или расширить его возможности.
Некоторые обновления встроенного программного обеспечения применяются нормально и выглядят как обычное обновление программного обеспечения. Тем не менее, другие могут занять много времени, так как они могут включать в себя копирование прошивки на переносной накопитель, а затем загрузку его на устройство вручную. Тем не менее, некоторые устройства имеют специальный раздел в административной консоли, который позволяет применять обновление прошивки или руководство пользователя для полной справки.
Чрезвычайно важно убедиться, что устройство, получающее обновление прошивки, не выключается во время применения обновления. Частичное обновление прошивки приводит к повреждению прошивки, что может серьезно повредить работу устройства. Итак, просто убедитесь, что после запуска средства обновления прошивки вы дадите завершению обновления.
Разница между прошивкой и программным обеспечением
Часто слово «Прошивка» и «Программное обеспечение» используются взаимозаменяемо, то есть как отдельная или совокупность компьютерных программ, назначенных для какой-либо задачи на компьютере. Но в действительности именно работа определяет корни этих категорий (прошивки и программное обеспечение), в которые мы их помещаем.
Например, программное обеспечение является виртуальным, поэтому его можно копировать, изменять и уничтожать. Он часто хранится в памяти, которая легко доступна и даже может быть заменена пользователем. Но в случае прошивки память, которую она хранит, часто встроена в само устройство и не может быть заменена пользователем. Это сделано намеренно, чтобы предотвратить любое вмешательство или удаление, поскольку это крайне важно для работы устройства и может привести к серьезным последствиям при удалении.
Кроме того, программное обеспечение часто обновляется, и поэтому информация, хранящаяся в нем, часто модифицируется/изменяется при каждом выполнении приложения. Напротив, прошивка не сильно изменится, если вы не будете часто менять настройки. Существует также очень мало или не требуется менять прошивку устройства.
Надеюсь, это объясняет, что означает прошивка.
Введение в Android Firmware
Пользовательская прошивка также является единственным способом установки новых версий 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 фактически запускает другую операционную систему на независимом процессоре, называемом процессором основной полосы. Радио прошивка относится к операционной системе, которая работает на процессоре основной полосы частот.
Что такое билды Android
Сборка Android обычно используется в виде ZIP-файла, который может использоваться fastboot. Он имеет следующее содержимое:
С другой стороны, ramdisk является файловой системой только для чтения, которая монтируется ядром во время процесса загрузки. Он содержит хорошо известный процесс init, первый процесс, который запускается любой операционной системой на базе Linux. Он также содержит различные демоны, такие как adbd и healthd, которые запускаются процессом init. Вот как выглядит дерево каталогов ramdisk:
recovery.img очень похож на boot.img. Он имеет загрузочный исполняемый файл ядра, который может использовать загрузчик, и ramdisk. Следовательно, образ для восстановления также можно использовать для запуска устройства Android. Когда он используется, вместо Android запускается очень ограниченная операционная система, которая позволяет пользователю выполнять административные операции, такие как сброс пользовательских данных устройства, установка новой прошивки и создание резервных копий.
Процедура, необходимая для загрузки с использованием образа восстановления, зависит от устройства. Обычно это включает в себя запуск режима загрузчика, также называемый fastboot mode, путем нажатия комбинации аппаратных ключей, присутствующих на устройстве, а затем выбора опции Recovery. Например, на устройстве Nexus вам нужно нажать и удерживать кнопку питания в сочетании с кнопкой уменьшения громкости.
Кроме того, вы можете использовать adb, инструмент, включенный в Android SDK, для прямого входа в режим восстановления.
3. Использование fastboot
Аналогичным образом, если вы хотите заменить только загрузочный образ, вы должны использовать следующую команду:
Обратите внимание, что ни одна из команд fastboot, упомянутых в этом разделе, не будет работать, если загрузчик вашего устройства не был разблокирован.
Заключение
Что такое прошивка?
Что такое прошивка?
Прошивка – это программное обеспечение, управляющее работой аппаратной части устройства. Без прошивки большинство электронных устройств, используемых нами ежедневно, не смогут работать; благодаря ей устройство выполняет свои функции.
Прошивка может быть простой микропрограммой, выполняющей ограниченное число функций, а также полноценной, многофункциональной операционной системой. В смартфонах как раз используется операционная система, а её установку можно назвать процессом прошивки. Она предварительно изменяется и компонуется в образ, и записывается во внутреннюю память устройства.
К примеру, известно, что MP3 плеер имеет свою прошивку. Вся воспроизводимая музыка обрабатывается управлением работы аппаратной части за счёт прошивки, а без неё это, скорее всего, будет ненужная штука.
Что бы стало ещё больше понятно о чём идёт речь, возьмём другой компьютерный пример: материнская плата, не имеющая прошивку не будет «знать», как обнаруживать жёсткий диск или твердотельный накопитель, оптический привод и другие компоненты, находящиеся под корпусом компьютера. Ровно такая же ситуация обстоит и с жёстким диском, если он не имеет прошивку, то не будет «иметь понятия» о том, с какой скоростью должен вращаться шпиндель и когда ему остановиться. Wi-Fi сетевая карта не будет «разбираться» в радиочастотах, а смартфон не будет «знать», как ему включиться.
Где хранятся эти микропрограммы?
Теперь понятно, что прошивка записывается непосредственно в устройства, но каким образом производится хранение? Любая прошивка, как правило, хранится в специальных типах памяти, называемых флеш-ПЗУ. Аббревиатура ПЗУ или ROM обозначает память только для чтения, и как обычно бывает, этот файл записан один раз производителем используемого аппаратного средства. Память ROM необходима для любого вида электронного устройства, она должна постоянно содержать эти данные, даже когда устройство выключено.
Хоть ROM является памятью, хранящей первоначальную запись производителя, многочисленные примеры её перезаписи свидетельствуют о том, что не только ему это под силу. Можно использовать свою собственную разработку для перезаписи, что часто делают со смартфонами, но лучше воспользоваться инструментом, предоставленным разработчиком специально и официальной прошивкой.
Где используются прошивки?
Прошивки устройств имеют довольно большое разнообразие. Прошивки материнских плат в компьютерах называются BIOS или UEFI; есть прошивки жёстких дисков, твердотельных накопителей, оптических приводов, сетевых карт, маршрутизаторов и даже компьютерные мыши и клавиатуры имеют свои прошивки. Это лишь малое число примеров устройств, использующих прошивку.
Нужно понимать, что телевизор или стиральная машина тоже не обходятся без прошивки, современные модели автомобилей скорее всего имеют прошивки, такие устройства вряд ли получится использовать по назначению без неё.
Может ли прошивка обновляться?
Большинство производителей выпускают обновления для прошивок своих устройств в регулярном порядке, одновременно предоставляя необходимые программные средства, для записи новых прошивок. Тем не менее право выпуска новой прошивки для того или иного устройства остаётся именно за производителем. Для компьютерных комплектующих производитель разрабатывает новую прошивку и предоставляют её своим клиентам, тем самым позволяя произвести обновление, выпускаемое обычно в течение нескольких лет после выпуска устройства.
В качестве примера можно привести производителя материнской платы, выпускающего для неё прошивку, которая может включать новые функции, поддержку новых типов процессоров или оперативной памяти, обновления решающие конкретные проблемы в работе оборудования. Читайте, нужно ли обновлять BIOS или UEFI материнской платы.
Каждый из производителей может предоставлять обновление прошивки для своих устройств: Wi-Fi роутер может получать такие обновления, увеличивающие стабильность в работе, а оптический привод, после получения новой прошивки, может начать работать с новыми дисками и т.д. Но, важно понимать, если техническая часть устройства не способна выполнять ту или иную функцию, то новая прошивка вряд ли поможет в этом.
В основном предназначение обновления прошивки заключается в исправлении, корректировке, в редких случаях раскрытии, ранее скрытого потенциала. Но всё же некоторые устройства, различающиеся по цене, имеют различный функционал, именно из-за ограничений в прошивке, и это может стать причиной для использования неофициальной прошивки, так же называемой модифицированной или кастомной.
А где же можно скачать прошивку и откуда её взять? Как правило, найти прошивку можно на сайте производителя. Нужно посмотреть на странице загрузки, загрузить новую прошивку, а для полной осторожности лучше руководствоваться предоставленной документацией.
Бывают ситуации, когда производителем заблокирована возможность обновления или замены прошивки, тогда умельцам приходится выпаивать чип памяти и устанавливать другой, уже с необходимой микропрограммой. Сам процесс прошивки является серьёзным шагом, и если что-то пойдёт не так, то устройство может превратиться, как часто говорят про телефоны в «кирпич». Зачастую с решением таких проблем не может помочь даже сотрудник сервисного центра.
Теперь вам известно, что такое прошивка, что она делает и где хранится. При прошивке своего устройства нужно использовать ПО именно для него, будь то смартфон, или материнская плата; знайте, что всё делается на свой страх и риск.
Прошивка. Что это такое и зачем она нужна.
Многие начинающие пользователи смартфонов и планшетов, впервые столкнувшись с загадочным словом «прошивка», с трудом понимают что это такое, для чего она предназначена и зачем она вообще нужна.
Сегодня я постараюсь объяснить, что такое прошивка популярным языком, рассчитанным на неискушенного пользователя.
Для начала давайте определимся с происхождением самого этого термина.
Итак, что такое прошивка, в изначальном понимании этого термина. Давным давно, когда вычислительные устройства были большими и некоторые их экземпляры занимали целые комнаты, их встроенная (постоянная) память изготавливалась весьма оригинальным образом.
Каждая ее ячейка состояла из небольшого кольца, выполненного из специального материала – феррита, который легко намагничивается. И в каждое кольцо продевалось две петельки провода, предназначенные для записи (намагничивания), стирания (размагничивания) и считывания информации из этого кольца. А информации в нем хранилось всего лишь один бит: 0 – когда кольцо размагничено и 1, когда намагничено. Знаете, сколько таких колец нужно, чтобы обеспечить устройству 1 гигабайт встроенной памяти? Я вам скажу: всего лишь 8 589 934 592 штуки.
И вот процесс продевания проводов в эти кольца при изготовлении постоянной памяти для старых устройств так и назывался – прошивка.
А теперь вернемся к нашим планшетам и смартфонам. Они, как и любой современный компьютер работают под управлением операционной системы (Windows, Linux, iOS, Android и т.п), которая полностью отвечает за их работу. Иными словами, если внутреннее железо компьютера – это его мозг, то операционная система – это его сознание, которое управляет компьютером.
Без операционной системы любой компьютер, планшет или смартфон – набор мертвого железа. И если на компьютер, операционную систему мы устанавливаем, записывая ее на его жесткий диск, то в планшете или смартфоне операционная система хранится в его внутренней памяти, занимая часть тех 4, 8, 16, 32 или даже 64 гигабайт, которые имеют современные устройства.
Вы наверное уже догадались, что именно эта процедура «установки» операционной системы на планшет или смартфон и называется прошивкой, поскольку система записывается (прошивается) в его постоянную, внутреннюю память.
Теперь вы понимаете, что выражение «сменить пошивку» на планшете или телефоне означает примерно то же самое, что «переустановить Виндовс» на компьютере.
Кроме того, и сам файл с операционной системой, которая записывается на устройство называют прошивкой. Так как начинка или «мозги» у каждого планшета или телефона разные, прошивка создается для каждого устройства отдельно. Прошивки бывают двух типов:
1. Официальные, выпущенные производителем устройства, которые или автоматически загружаются на планшет или телефон через интернет подключение (так называемые прошивки по «воздуху»). Их также чаще всего можно скачать на планшет с сайта производителя и установить вручную. Этот тип прошивок еще часто называют обновлением системы.
2. Самодельные прошивки, их еще называют «кастомные» или «альтернативные». Обычно это улучшенные или доработанные независимыми разработчиками официальные прошивки. К ним также относятся прошивки основанные на официальных версиях «чистой» операционной системы Android от компании Google, такие как CyanogenMod или MIUI.
Еще прошивки подразделяются на odexed и deodexed. Что это означает, вы можете почитать в этой статье: Изучаем Android. Что такое odex и deodex