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

We use cookies. Read the Privacy and Cookie Policy

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

Возникает следующий вопрос: как связаны между собой аппаратная и программная составляющие? Существуют электронные компоненты, которые способны «запоминать» поступающие на них электрические сигналы, сохранять информацию, а потом вновь воспроизводить. Запоминающие устройства обязательно входят в состав компьютеров, мобильных телефонов, да и многих других «умных» приборов: от кондиционера до телевизора. Любое такое устройство можно представить как множество ячеек, в каждую из которых помещается элементарная порция информации – 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 трогать не стоит, а с файлами телефона вы уже знакомы, рассматриваемые далее операции с программным обеспечением касаются именно прошивки.

Данный текст является ознакомительным фрагментом.