Что такое бинарный файл прошивки

Что такое bin и чем открыть bin файлы?

Описание файлов формата BIN

Расширение Binary содержит двоичный код, предназначенный для совершенно разных целей. Чаще всего – это вспомогательное программное средство, необходимое для выполнения той или иной задачи на вашем ПК. Может храниться в системных папках либо идти в комплекте с каким-либо приложением, установленным на компьютер. В более редких случаях, БИН является виртуальным образом оптического носителя, подобно формату ISO, MDF, IMG, NRG и т.д.

Рассмотрим основные виды BIN-файлов

Некоторые из вышеприведенных расширений можно конвертировать в другие более удобные форматы.

Кстати, открыть файл BIN в онлайне невозможно, так что пользователю придётся воспользоваться одной из специальных программ, о которых пойдёт речь в статье ниже.

Открытие BIN стандартными средствами операционной системы Windows 7, 8, 10?

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

Программы для открытия файлов расширением BIN

Чтобы выяснить, является ли БИН образом CD/DVD диска, обратите внимание на его размер. Если объём соответствует размеру оптического носителя — скорее всего, ваш файл представляет собой образ.

После того, как будете знать такую информацию, можете попробовать одну из универсальных программ для монтирования CD/DVD-образов.

UltraISO

Очень функциональная утилита, отлично справляется с распаковкой и записью разных данных. Умеет создавать установочные флешки и DVD-диски.

Daemon Tools

Популярный софт с интуитивно понятным интерфейсом. Поможет узнать подробные сведения о содержимом файла и отредактировать его. Поддерживает разные версии Microsoft Windows, Mac OS и Linux.

Nero

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

Если BIN-расширение небольшого размера появилось после подключения к компьютеру смартфона или фотоаппарата, оно связано с драйверами для подключенных устройств. Открывать такой тип файла можно через специальные программы, поставляющиеся в комплекте с гаджетом, например: Nokia PC Suite, Samsung Kies, BlackBerry Desktop Manager, Mackintosh Suite и т.д.

Источник

Мобильные устройства изнутри. Разметка памяти, структура файлов описания и разметки памяти

1. Введение

Как оказалось, разметка физической памяти мобильных устройств (МУ) это малоописанный раздел знаний, необходимых разработчику. Т.к. память существует во всех устройствах, созданных на основе микропроцессоров или микроконтроллеров, а их уже миллиарды, то это еще и очень-очень востребованный раздел знаний.

Эта статья посвящена аспектам разметки памяти только МУ, т.к. именно здесь существует тесно свитый разными производителями клубок из файлов описания разметки при почти полном отсутствии теоретических данных о структуре самих этих файлов.

Разметка физической памяти МУ формируется на основании таблиц или списков описаний параметров разделов памяти. Практически каждая фирма-производитель МУ имеет свою форму (структуру) этих таблиц. Тем не менее, все описания параметров разделов имеют много общего, что позволяет рассматривать их в едином контексте.

На основе таблиц описаний затем формируются файлы разметки памяти, которые в виде образов разделов прошиваются непосредственно в память МУ.

2. Что такое разметка памяти?

Подробнее, что представляет собой разметка памяти МУ и для чего это нужно, можно посмотреть, например, в [1]. Вот еще одна публикация, в которой доступно объясняется устройство памяти и ее разметка [2].

Если кратко, то разметка памяти, как процесс, выполняет распределение всего объема внутренней физической памяти МУ на отдельные разделы, которые могут иметь разное функциональное назначение, вплоть до разных файловых систем, и разные права доступа. Это позволяет выделить в памяти отдельно области для хранения данных и работы пользователя, отдельно для работы операционной системы, шифровать или форматировать разделы при необходимости и независимо друг от друга и т.д.

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

Для выполнения разметки памяти используют файлы двух видов: текстовые и бинарные (двоичные RAW-файлы).

Текстовый файл представляет собой перечень (список) всех разделов памяти, каждая запись которого содержит описание основных параметров этих разделов. Он используется при выполнении нескольких операций:

Процесс создания разметки памяти можно описать следующим алгоритмом:

3. Схемы разметки памяти

Чаще всего применяются две схемы разметки памяти: Mbr и Gpt.

При любой схеме разметки памяти первым по порядку разделом в пользовательском регионе МУ всегда должен быть раздел разметки (Mbr, Gpt, Parameter).

3.1.Mbr-схема разметки памяти

Согласно Mbr-схеме память МУ представляется как последовательность разделов, дополненная главной загрузочной записью или Mbr (Master Boot Record), содержащей таблицу описания разделов. Mbr физически располагается в первом (нулевом) секторе памяти МУ:


рис.1. Главная загрузочная запись.

Mbr содержит сигнатуру, т.е. признак Mbr, и непосредственно саму таблицу описания разделов.

Внутреннее строение Mbr [3] позволяет разместить в ней только 4 записи о разделах, что является в современных условиях существенным недостатком. Если требуется разбить память на большее количество разделов, то используется дополнительная (расширенная) загрузочная запись Extended Boot Record (Ebr). При этом в Mbr вместо записи об одном из разделов помещается запись о дополнительном (extended) разделе, содержащем только Ebr.

Читайте также:  Что такое одод в школе

Сама Ebr устроена аналогично Mbr, и использовать ее нужно точно также. Т.е., если при заполнении таблицы Ebr опять не хватает места под записи о разделах, то создается следующая Ebr-таблица и т.д.

Mbr и все Ebr могут помещаться в отдельные файлы-образы, которые размещаются и прошиваются в соответствующих отдельных разделах памяти. При этом все файлы, содержащие Ebr, имеют имена нумерованные последовательно: Ebr1, Ebr2,…

При другом варианте Ebr помещаются в один файл-образ последовательно, тогда этот образ, соответственно, размещается в одном Ebr-разделе памяти.

3.2. Gpt-схема разметки памяти

Gpt-схема разметки (GUID Partition Table) является частью EFI (Extensible Firmware Interface) — стандарта, используемого вместо BIOS для разметки памяти и загрузки ее разделов. Переход на другой формат описания разделов позволил устранить самый существенный недостаток Mbr-схемы — малое число разделов, т.к. в таблице описания разделов Gpt можно разместить до 128 разделов. Структуру самих таблиц можно посмотреть в [4].

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

4. Таблицы описания разделов памяти

Таблицы описания разделов памяти МУ содержат информацию о всех разделах, необходимую для создания разметки памяти. Каждая строка (запись) таблицы описывает один раздел и содержит, как правило, следующие параметры:

4.1. Parameter-файл

Прошивка МУ на чипе RK содержит текстовый файл PARAMETER, который предназначен для описания построения (настройки и загрузки) физической памяти блочного типа. Причем использовался он и на ОС LINUX.

Оригинальный вид содержимого файла PARAMETER для МУ Cube u30gt-M приведен ниже:

FIRMWARE_VER:4.0.4
MACHINE_MODEL:U30GT-M
MACHINE_ID:007
MANUFACTURER:RK30SDK
MAGIC:0x5041524D
ATAG:0x60000800
MACHINE:3066
CHECK_MASK:0xFF
KERNEL_IMG:0x60408000
RECOVERY_KEY:0,4,C,6,0
COMBINATION_KEY:0,4,C,6,0
CMDLINE: console=ttyFIQ0 androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand:0x00002000@0x00002000(misc),0x00004000@0x00004000(kernel),0x00008000@0x00008000( boot),0x00008000@0x00010000(recovery),0x000C0000@0x00018000(backup),0x00040000@0x000D8000(cache),0x00200000@0x00118000(userdata),0x00002000@0x00318000(kpanic),0x00120000@0x0031A000(system),-@0x0043A000(user)

4.1.1. Описание параметров файла PARAMETER

Файл PARAMETER может содержать следующие параметры:

4.1.2. Параметр CMDLINE и его возможности

Формат командной строки, т.е. CMDLINE, имеет следующий вид:

CMDLINE: ключ1=значение1 [ключ2=значение2], где

mtddef — описание разметки памяти устройства блочного типа (БУ). Если МУ содержит несколько БУ, то может содержать и несколько описаний, которые располагаются последовательно без промежутка и разделяются символом «точка с запятой».

Описание разметки памяти каждого БУ имеет следующее строение:

Параметр part_size описывает размер раздела в блоках, выраженный в hex-системе счисления. Если вместо размера указан символ «минус» («-«), это означает максимально возможный размер, т.е. до физического конца памяти.

Параметр part_offset представляет смещение раздела в блоках, выраженный в hex-системе счисления. Смещение всегда выравнивается на границу в 0х1000.

Параметр label (имя раздела) это строковый идентификатор раздела, заключенный в круглые скобки, например, (boot).

Параметр flag (флаг) может принимать только одно значение — «ro«, означающее, что раздел предназначен только для чтения. Отсутствие флага означает, что раздел доступен для чтения и записи.

Несколько очень важных замечаний:

4.2. Rawprogram0-файл

Файл rawprogram0.xml предназначен для описания разметки памяти МУ на основе чипов Qualcomm и имеет следующее строение:

Рис.3. Вид файла rawprogram0.xml от Lenovo s90a

Он содержит таблицу описания параметров разделов в виде xml-элементов типа program. Все разделы перечисляются строго в порядке их размещения в памяти МУ.

Каждый xml-элемент может содержать следующие xml-атрибуты:

4.3. Ota-файл

Это единственный файл описаний, который описывает строение файла прошивки, а не разметку памяти.

Например, файл ota-обновления МУ на чипе МТ6582 фирмы MTK, имеет следующий вид:

Он содержит описание тех разделов, чьи образы присутствуют в файле прошивки для ota-обновления, каждое из которых имеет следующее строение:

label part_offset, где

4.4. Scatter-файл

Файл scatter содержит описание разметки памяти МУ, построенных на основе чипов МТК. Существует три версии структуры этого файла, что связано с историческим развитием возможностей как самих чипов памяти, так и чипов процессоров фирмы MTK.

4.4.1. Версия 1

Файл описаний разметки первой версии содержит список описаний каждого раздела памяти, и имеет следующий вид:

Рис.5. Scatter-файл первой версии

Каждый раздел памяти описывается следующей структурой:

Такое описание разделов памяти предполагает, что:

4.4.2. Версия 2

Scatter-файл описаний разметки памяти второй версии содержит заголовок и непосредственно таблицу описаний каждого раздела памяти. Он имеет следующий вид:

Рис.6. Scatter-файл второй версии

Заголовок содержит параметры прошивки целиком и содержит следующие поля:

Для чипов МТ6572-МТ6577 в качестве значения Begin Address флешером используется значение поля linear_start_addr, отражающее истинное смещение раздела в памяти (представляющей один сплошной регион), т.к. чипы не умеют работать с регионами, а используемая память имела только один регион для размещения разделов. При этом значение поля «physical_start_addr» всегда равно нулю.

Чипы МТ6582 уже умеют работать с регионами, но используемая память еще имеет только один регион. Поэтому в качестве значения Begin Address флешером уже используется значение поля physical_start_addr, отражающее смещение раздела в пределах регионов, создаваемых в памяти программно, а поле linear_start_addr содержит значения смещения от начала чипа памяти.

В связи с тем, что, начиная с чипа МТ6592, МУ от МТК используют полноценную работу с регионами памяти, то для чипов МТ6592 и выше флешером в качестве значения Begin Address используется значение поля physical_start_addr.

Читайте также:  Что такое облагороженная бирюза

Значение поля Format Length флешер всегда получает из поля partition_size.

5.Файлы разметки памяти.

Файлы разметки памяти содержат образ раздела разметки памяти МУ. Их структура зависит от схемы разметки (Gpt или Mbr) и от назначения, например, резервные файлы разметки Pmt или Gpt.

Встречаются следующие виды файлов разметки:

5.1. Mbr-файл

Mbr-файл представляет собой образ раздела разметки памяти по Mbr-схеме, имеющий размер 1 сектор, т.е. 512 байт.
В МУ применяется так называемая классическая структура Mbr-файла [5]:

Рис.7. Классическая структура Mbr-файла

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

Поле IsBoot имеет размер 1 байт и используется для обозначения активности раздела, старший бит которого указывает на загрузочный раздел:

Поле Type имеет размер 1 байт и используется производителями МУ для обозначения типа описываемого раздела. Обозначение типа раздела у разных производителей могут отличаться, но есть некоторые общепринятые значения:

Поле Offset имеет размер 4 байта и содержит значение смещения раздела, выраженное в секторах.

Поле Size имеет размер 4 байта и содержит значение размера раздела, выраженное тоже в секторах.

По адресу 0x01FE расположена сигнатура Mbr-файла, имеющая значение 0xAA55.

5.2. Ebr-файл

Ebr-файл представляет собой образ расширенного раздела разметки памяти, выполненной по Mbr-схеме. Он имеет такое же строение и размер, как и Mbr-файл:

Рис.8. Классическая структура Ebr-файла

Отличия заключаются в том, что в Ebr-файле признак активности всегда установлен в 0, да и этих файлов, при необходимости, может быть уже не один, а 63. Соответственно, для их размещения тоже понадобится создавать до 63 разделов, что приводит к расточительному расходованию памяти МУ.

Если разделов памяти относительно немного, например, как в МУ Star Z2, то используются отдельные файлы Ebr1 и Ebr2, размещаемые в отдельных разделах. Но, если разделов много, например,, то все файлы Ebr можно сложить в один и разместить общий файл в одном разделе памяти.

5.3. Gpt-файл

Gpt-файл содержит образ разметки памяти по Gpt-схеме. Чаще всего МУ имеют стандартную структуру Gpt-схемы, поэтому, фактически, в прошивке имеется два Gpt-файла: основной, называемый pgpt (primary) или gpt_main, и вторичный (резервный), называемый sgpt (secondary) или gpt_backup.

Основной Gpt-файл располагается в памяти МУ, начиная с нулевого сектора, занимает 34 сектора и имеет следующее строение:

5.4. Parameter-файл

Parameter-файл, т.е. образ раздела, содержащего разметку памяти, содержит только сам текстовый файл PARAMETER, причем независимо от размеров этого раздела. Вот как Parameter-файл выглядит, например, внутри прошивки для устройства U30GT-H фирмы RK [6]:

Рис.9. Parameter-файл от U30GT-H на процессоре RK3066

5.5. Pmt-файл

Pmt-файл представляет собой образ резервного раздела разметки памяти, используемой разработчиками МУ фирмы МТК, и имеет размер 4096 байт.

Образ раздела PMT состоит из двух таблиц описания разделов памяти. В начале расположена базовая, а следом за ней резервная или зеркальная (mirror) таблица описания разделов.

Каждая из таблиц состоит из:

Для резервной таблицы эта строка имеет вид «‘MPT1’\х01\х00\х03\х01»:

Рис.13.Сигнатура конца резервной таблицы

Структура каждой записи имеет размер 0х58 (88) байт состоит из 4 полей и имеет следующий вид:

5.6. Pit-файл

Pit-файл (Partition Information Table) представляет собой образ раздела разметки памяти, используемой разработчиками МУ фирмы Samsung, и имеет размер 4096 байт. Информация по строению образа взята из [7, 8].

Pit-файл состоит из заголовка и таблицы описаний параметров разделов.

Заголовок имеет размер 28 байт и содержит следующие поля:

Следом располагается таблица описаний параметров разделов, состоящая из записей о разделах. Признак конца таблицы — пустая запись. Каждая запись содержит следующие поля:

Поле binary содержит тип операционной системы. Допустимы следующие значения:

Поле device содержит тип устройства. Допустимы следующие значения:

Поле id содержит порядковый номер раздела в прошивке.

Поле flags содержит флаги раздела. Может принимать значения:

Поле update содержит флаги раздела при обновлении. Может принимать значения:

Поле part_off содержит смещение раздела в памяти, выраженное в блоках.

Поле part_len содержит размер раздела в памяти, выраженный в блоках.

Поле offset содержит смещение файла-образа в прошивке, выраженное в блоках.

Поле file_size содержит размер файла-образа, выраженный в блоках.

Поле label имеет длину 32 байта и содержит метку раздела памяти, завершенную нулем (0х00).

Поле file_name содержит имя файла-образа раздела прошивки, завершенное нулем (0х00).

Поле fota_name содержит имя файла-образа раздела прошивки FOTA-обновления, завершенное нулем (0х00).

Источник

Как открыть файл с расширением BIN

Формат файлов BIN – особенный. В отличие от других, он способен содержать в себе самые разнообразные данные. Давайте разберемся, что может находиться в БИН-файлах, и рассмотрим способы их открытия.

Что представляет собой формат BIN

Программы для открытия BIN файлов

Предположить, что перед вами бинарный файл образа диска, можно по его размеру. Например, образы дистрибутивов операционных систем «весят» 1-2 Gb и больше, образы CD/DVD/Blu-ray дисков – от десятков Mb до нескольких Gb и т. д.

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

Открыть файл Bin с образом диска можно при помощи различных онлайн-сервисов и приложений. Первых не так уж и много, они далеко не всегда корректно считывают данные, да и загружать на веб-сайт файл большого размера неудобно. Поэтому остановимся на рассмотрении программ, которые умеют работать с объектами этого типа. Большинство таких приложений платные, но чаще всего имеют бесплатный пробный период с некоторыми ограничениями. Рассмотрим в подробностях несколько программ для Windows.

Читайте также:  Что такое стадиометрический дальномер

UltraISO

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

Программа UltraISO способна производить следующие действия с бинарными образами:

Для установки UltraISO, как и остальных описанные ниже приложений, запустите скачанный с сайта разработчика инсталлятор с именем программы. В некоторых случаях установочный файл называется setup или install.

Чтобы открыть БИН при помощи UltraISO, сделайте следующее:

Daemon Tools Lite

Daemon Tools — еще одна популярная программа, которая умеет работать с образами дисков. Ее интерфейс достаточно прост, и разобраться в нем несложно без инструкции.

Если хотите, чтобы Daemon Tools открывал образы BIN по умолчанию, при установке приложения отметьте этот формат, как на скриншоте ниже:

С помощью Daemon Tools вы сможете:

Чтобы открыть БИН при помощи Daemon Tools, запустите программу и сделайте следующее:

В отличие от UltraISO, программа Daemon Tools Lite не загружает образ в себя, а монтирует его в виртуальный привод. Содержимое последнего открывается в проводнике Windows 7 или Windows 10 как обычная папка или диск.

Power ISO

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

Power ISO позволяет производить с БИН файлами следующие действия:

Чтобы открыть БИН с помощью Power ISO, сделайте следующее:

Открыть BIN на компьютере также можно и при помощи других приложений для работы с образами дисков, таких, как Alcohol 120%, MagicISO, Hex to Bin Utility, Roxio Creator, Nero Burning ROM и т. д.

Другие виды бинарных файлов

Помимо образов дисков, файлы бинарного формата могут быть прошивками устройств, данными игр, видео- или аудиозаписями и многим другим. Рассмотрим несколько самых распространенных после образов типов БИН-файлов в подробностях.

Исполняемый двоичный файл

Исполняемый файл — это часть какого-либо приложения в двоичном виде. Он может содержать в себе данные для запуска программы или её настройки.

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

Некоторые из файлов этого типа можно открыть при помощи приложения Apache OpenOffice, которое работает на компьютерах с операционной системой Windows, Mac OS и Linux.

Исполняемый файл Unix

Файлы двоичного формата в операционных системах Unix – это обычные приложения. Они предназначены для использования в дистрибутивах Linux, FreeBSD и т. д.

Файл прошивки маршрутизатора

Фирмы Linksys, D-Link, ZyXEL, TP-Link, Huawei используют в своих роутерах прошивки в формате БИН. Прошивка – это программа, которая управляет работой устройства.

Для работы с файлами прошивок используются собственные приложения производителей роутеров для различных платформ (Windows, Mac, Android и т. д.), а также веб-сервисы.

Архив Macbinary II

Бинарник Macbinary II — это закодированный, сжатый файл с данными, обычно предназначенный для передачи информации через сеть. Открывается при помощи следующих программ:

Файл обновления конфигураций устройств BlackBerry

Программный пакет BlackBerry Enterprise Server содержит в себе приложение IT Policy Manager, одним из компонентов которого является файл policy.bin. Он содержит в себе данные настроек и используется системными администраторами для обновления программного обеспечения BlackBerry.

Policy.bin можно открыть при помощи программы Research In Motion BlackBerry Desktop Manager.

Файл игр приставки Nintendo DS

Открыть файл БИН этого типа можно при помощи следующих программ:

Файл игры Atari

БИН-файл игры Atari содержит в себе образ картриджа для одноименных консолей, которые были популярны в 80-ых годах. Файл используется для загрузки игр в эмулятор приставки, открыть его можно при помощи следующих приложений:

Файл данных Nintendo Wii

Файл данных Nintendo Wii может содержать в себе зашифрованные или обычные текстовые сведения об игре для одноименной игровой консоли. Обычно он хранится на SD-карте устройства и имеет название content.bin. Увидеть, что находится в этом файле, можно при помощи программных инструментов самой приставки.

Образ игры Sega Genesis

Бинарник Sega Genesis – это образ картриджа с игрой для консоли Sega Genesis. На компьютере он открывается при помощи эмуляторов.

BIOSPlayStation

БИН файлы BIOS PlayStation также могут открываться в эмуляторах одноименной консоли на компьютере. Они предназначены для обеспечения работы устройства.

Программы для открытия файлов BIOS PlayStation в Windows, Mac OS и Linux:

Бинарный видео- или аудиофайл

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

Если вы не знаете, чем именно может быть интересующий вас файл BIN, предположить его примерное назначение поможет размер. Объект размером от десятков Mb до нескольких Gb, скорее всего, окажется образом диска, видеозаписью или приложением. Файл небольшого объема, вероятно, будет содержать прошивку устройства или данные для эмуляторов игровых приставок.

Источник

Информационный сайт