Фърмуер

от Уикипедия, свободната енциклопедия
Направо към навигацията Направо към търсенето

Фърмуерът (на английски: firmware, букв. „твърдо, яко изделие“) или базово програмно осигуряване е комбинация от постоянна памет, информацията, съхранена в нея, и програмен код.

Две понятия за устройствата[редактиране | редактиране на кода]

В английския език се използват firmware и embedded software. Терминът, използван за програмите, принадлежащи на устройства, които не са компютърни, и представляват вградена система, като се оказват част от друго, по-сложно устройство, чиято работа те управляват, вградени в самото устройство, е „embedded software“. Понятието „firmware“ е по-общо, то се отнася както за програми във вградени устройства, така и за програми в останалите устройства.[1]

Типични примери за устройства, съдържащи фърмуер, са вградени системи (като светофари, потребителски уреди и дигитални часовници), компютри, периферни устройства на компютри, мобилни телефони, дигитални камери, фискални устройства. Фърмуерът осигурява тяхното контролиране и функциониране.[2] Съдържа се в устройства като ROM, EPROM и флаш-паметта. Промяна на фърмуера на устройство по време на неговия живот може да бъде извършено много рядко или дори никога. Някои устройства с фърмуер памет са перманентно инсталирани и не могат да бъдат променяни след производство. Основните причини за обновяването на фърмуера са премахването на програмни грешки или добавяне на нови функции към устройството. Това може да доведе до смяна на интегралната схема на ROM или повторното програмиране на флаш паметта.[3] Фърмуерът на персонален компютър като ROM BIOS може да съдържа само основни, елементарни функции на устройството и може само да осигурява работата на софтуера от по високо ниво. Понякога фърмуерът може да бъде единствената програма, която да стартира устройството и осигурява функционирането му.

Персонални компютри[редактиране | редактиране на кода]

В някои отношения различните компоненти на фърмуера са точно толкова важни колкото и операционната система в работещия компютър. За разлика обаче от повечето модерни операционни системи, фърмуерът рядко притежава добре развит механизъм за автоматично обновяване, който да отстранява потенциални дефекти, получени при монтирането на устройството.

Примери[редактиране | редактиране на кода]

  • В потребителски продукти:
    • Синхронизиране и системи за контрол в пералните машини.
    • Контролиране на звук и картина, както и списък с каналите при модерните телевизори.
  • В компютрите:
    • BIOS системата, в компютри съвместими с IBM.
    • (U) EFI-съвместим фърмуер използван при Itanium системи, Intel-базирани компютри от Apple, както и много дънни платки за Intel настолни компютри.
  • В рутери и „защитни стени“
    • OpenWRT – защитна стена / рутер OS с отворен код на базата на FreeBSD
    • IPFire – безплатен Linux рутер и дистрибуция на защитна стена

Разработване на фърмуер[редактиране | редактиране на кода]

Средата за разработване на вграден фърмуер се различава значително от тестовата и производствената среда. Инженерите, разработващи фърмуер, могат да използват специализирани софтуерни стекове, различни архитектури на чиповете и дори операционни системи. Вградената система позволява значително да се улеснят схемите и по този начин да се намалят разходите по проекта и размерът на хардуера.

Накратко обаче, разработката на вграден фърмуер не се различава толкова много от процеса на разработване на „стандартен“ софтуер. Независимо от използвания модел на разработка/управление, той се състои от следните етапи:

  1. Анализ на изискванията;
  2. Проектиране и съставяне на алгоритъм;
  3. Кодиране на фърмуера;
  4. Тестване на системата.

Източници[редактиране | редактиране на кода]