Ответы:
Прошивка - это программное обеспечение, которое работает на устройстве. Драйвер - это программа, которая сообщает операционной системе, как взаимодействовать с устройством. Не все устройства имеют прошивку - только устройства с некоторым уровнем интеллекта.
Я не совсем уверен, что вы имеете в виду ... Вообще говоря, прошивка не имеет ничего общего с "загрузкой" ... Я думаю, может быть, то, что вы спрашиваете, всегда ли на устройствах с прошивкой установлена прошивка, или он загружается после загрузки. Если это то, что вы спрашиваете, ответ нет ...
Чаще всего устройства с микропрограммой имеют встроенную микропрограмму, запрограммированную в устройстве (либо с микросхемой ПЗУ, либо с программируемой микросхемой ПЗУ), но есть некоторые устройства, в которых микропрограмма загружается в устройство во время инициализации. Я могу вспомнить некоторые сетевые карты и веб-камеры, которые работают таким образом, но я уверен, что есть и другие.
only devices with some level of intelligence have firmware
? Я бы сказал, что все наоборот: простые (электронные) устройства могут не иметь операционных систем, но имеют встроенное программное обеспечение.
Микропрограмма реализует низкоуровневые детали, необходимые для работы оборудования, и обеспечивает API / ABI на более высоком уровне. Драйвер устройства обеспечивает адаптер между ОС и API / ABI, предоставляемым микропрограммой.
Современное определение или обычное использование встроенного программного обеспечения не имеет ничего общего с определенной функциональностью программного обеспечения. Микропрограмма - это просто программное обеспечение, которое хранится в чипах энергонезависимой полупроводниковой памяти (например, PROM, EEPROM или флэш-память), а не в устройстве хранения большой емкости, таком как жесткий диск. Хранимое программное обеспечение может быть монолитно-связанным двоичным файлом или состоять из загрузчика, ядра и прикладных модулей. (ОТО, я видел несколько плат ТВ-тюнеров для ПК, которые требуют загрузки «прошивки» ядром Linux для завершения инициализации.)
Происхождение этого термина связано с логикой, управляемой процессором, а не с аппаратной логикой. Программное обеспечение, хранящееся на жестких дисках, может быть легко изменено и обновлено. Пересмотр и обновление аппаратной логики требует перепроектирования и замены платы или модуля. Срединная земля была процессором, исполняющим программное обеспечение для управления оборудованием. Программное обеспечение было названо фирменным программным обеспечением, чтобы отразить среднюю позицию между программным обеспечением и аппаратно- проводной логикой. Первоначально прошивка хранилась в микросхемах ROM, PROM или EPROM для поддержания модульности платы. Развитие EEPROM и микросхем флэш-памяти позволило встроенные и встроенные обновления прошивки.
Поскольку процессоры (и периферийные устройства) стали меньше, дешевле и потребляли меньше энергии, расширились возможности их встраивания в каждое устройство / устройство. Чтобы программное обеспечение для работы с этими устройствами было надежным и безопасным, оно хранится в микросхемах флэш-памяти, а не на жестком диске; это также делает устройство меньше и намного дешевле. Термин «встроенное программное обеспечение» был расширен, чтобы охватить все программное обеспечение в устройствах / устройствах со встроенными процессорами, хотя некоторые части хранимого кода могут не иметь отношения к замене аппаратной логики.
Кто-то недавно опубликовал этот вопрос , сказав:
Прошивка представляет собой комбинацию постоянной памяти, программного кода и данных, хранящихся в нем. Типичными примерами устройств, содержащих встроенное ПО, являются встроенные системы, такие как светофоры, бытовые приборы, цифровые часы, компьютеры, компьютерная периферия, мобильные телефоны и цифровые камеры. Встроенное ПО, содержащееся в этих устройствах, предоставляет управляющую программу для устройства.
На самом деле drivers
тег SuperUser определен:
Драйвер, также называемый драйвером устройства или программным драйвером, представляет собой программное обеспечение, которое позволяет компьютерным программам более высокого уровня взаимодействовать с аппаратным устройством. Когда компьютерная программа запрашивает взаимодействие с определенным аппаратным устройством, драйвер будет обрабатывать перевод команд и выходных данных между устройством и компьютерной программой, вызывающей драйвер.
и firmware
тег определен:
В общем, разница между программным обеспечением и встроенным программным обеспечением заключается в уровне, на котором оно взаимодействует с аппаратным обеспечением. Микропрограмма взаимодействует на очень низком уровне аппаратного обеспечения, в то время как программное обеспечение взаимодействует на высоком уровне. Прошивка обычно контролирует базовую синхронизацию, элементы управления и функциональность оборудования.
Первоначально я думал, что он firmware
был установлен на чип или плату напрямую и жил там, поэтому его нужно «прошить», а вы должны установить driver
поверх операционной системы.
Вывод:
Firmware
позволяет аппаратным средствам "делать" что-то, и drivers
позволяет программному обеспечению взаимодействовать с аппаратным обеспечением.