Технически прошивка — это всего лишь подмножество программного обеспечения, поскольку последний термин включает в себя все полезные фрагменты кода. Однако на практике термин «программное обеспечение» относится к совершенно другому классу программ.
Вообще говоря, прошивка — это название низкоуровневого кода, который напрямую взаимодействует с оборудованием. Любые программы, работающие поверх этого уровня, составляют программное обеспечение. Смущенный? Вот более глубокий взгляд.
Множество типов программного обеспечения
Проблема термина «программное обеспечение» в том, что он слишком широк. Любой набор инструкций, которые могут управлять компьютером (или любым другим электронным устройством, если уж на то пошло), можно считать программным обеспечением.
Это не было проблемой на заре компьютерной эры, когда все программы были написаны на ассемблере и напрямую взаимодействовали с оборудованием для выполнения любой задачи. Но в наши дни вычислительное устройство работает на слоях кода, и пользователю доступны только программы наверху.
Эта категория удобных для пользователя программ, называемая Прикладное программное обеспечение, включает в себя все приложения и утилиты, которые вы используете на своем компьютере, например веб-браузер или текстовый редактор. Ниже находится Операционная система, отвечающая за такие низкоуровневые детали, как отрисовка изображений на экране и обработка ввода.
Большинство людей думают, что на этом все заканчивается, но операционная система редко взаимодействует напрямую с оборудованием. Под ОС есть еще один уровень, который предоставляет системному программному обеспечению простой доступ к аппаратным функциям. И это прошивка.
Прошивка: базовый уровень программного обеспечения
В большинстве языков программирования высокого уровня такие действия, как вывод изображения на экран, представляют собой простую команду. Однако где-то в компьютере есть фрагмент кода, отвечающий за преобразование этой команды в реальные инструкции процессора.
Прошивка — это связующее звено между аппаратным и программным обеспечением, позволяющее разработчикам использовать возможности устройства через упрощенный интерфейс программирования вместо инструкций, специфичных для ЦП. Для компьютера это всем известная прошивка Базовая система ввода-вывода (BIOS), доступная даже без ОС.
В более простых электронных устройствах, таких как пульт от телевизора или маршрутизатор, прошивка также выполняет функцию операционной системы. Такие машины не предназначены для установки стороннего прикладного программного обеспечения, такого как ПК, и полагаются на прошивку для выполнения всех необходимых задач..
Как устанавливается прошивка на устройство?
Ни одно электронное устройство невозможно использовать без прошивки. Вот почему все электронные компоненты поставляются с предустановленной прошивкой, установленной производителем.
Даже на компьютерах эта программа хранится на специализированной флэш-памяти на материнской плате, а не на жестком диске. Это позволяет загружать компьютер и настраивать параметры оборудования без установленной операционной системы.
Обновление прошивки на большинстве устройств не является ни простым, ни необходимым. Поскольку это основной код управления машиной, его нарушение может привести к тому, что оборудование станет непригодным для использования. Компьютеры являются исключением: пользователю разрешено Обновления BIOS, которые необходимо установить путем перепрошивки чипа.
Прошивка и программное обеспечение: краткий обзор
Прошивка | Программное обеспечение |
Основной код, который напрямую управляет компонентами оборудования. | Дополнительные программы, использующие встроенное ПО для выполнения сложных задач. . |
Хранится на выделенном чипе устройства. | Устанавливается в памяти жесткого диска. |
Поставляется предварительно установленным производителем. | Может быть установлен и настроен пользователем. |
Нижний уровень кода, поддерживающий операционные системы и другое программное обеспечение. | Код более высокого уровня, который использует расположенную ниже прошивку для аппаратной абстракции. |
Часто единственная управляющая программа в простых электронных устройствах. | Не может работать без прошивки. |
Зависит от аппаратного обеспечения. Прошивки различаются для разных архитектур процессоров и не могут быть взаимозаменяемы. | Аппаратно-независимый. ОС работает одинаково на разных семействах процессоров, хотя прикладное программное обеспечение обычно зависит от ОС. |
Обновляется очень редко, если вообще обновляется. Невозможно удалить. | Легко обновить и удалить. |
Чем прошивка отличается от программного обеспечения?
Оборудование и программное обеспечение обычно называют двумя компонентами электронного устройства, но это не полная картина. Операционные системы и приложения не могут напрямую взаимодействовать с оборудованием, поэтому для устранения этого разрыва требуется слой специализированного кода..
И этим связующим элементом является прошивка. Он состоит из специфичных для архитектуры инструкций, которые непосредственно управляют аппаратным обеспечением, а в простой электронике также действуют как базовая ОС. В других устройствах встроенное ПО предоставляет абстрактный интерфейс к программному обеспечению, позволяя ОС использовать оборудование, не заботясь о базовой архитектуре.
Из-за своей сути прошивка предварительно загружена на флэш-чип самой материнской платы, независимо от какого-либо программного обеспечения, записанного на диск. Это может быть только обновляется (т.е. «прошивается») специализированными процессами, в отличие от простой установки пакетов программного обеспечения.
Все электронные устройства и периферийные компоненты поставляются с собственной прошивкой. Цифровые камеры, смартфоны, твердотельные накопители и даже USB-накопители — если у них есть оборудование, которым необходимо управлять, для управления им есть встроенное ПО.
.