Teknisk sett er fastvare bare en undergruppe av programvare, siden sistnevnte begrep inkluderer hver og en nyttig kodebit. I praksis refererer imidlertid begrepet programvare til en helt annen klasse av programmer.
Generelt sett er fastvare navnet på lavnivåkode som har direkte grensesnitt med maskinvaren. Alle programmer som fungerer på toppen av dette laget omfatter programvaren. Forvirret? Her er en dypere titt.
De mange typer programvare
Problemet med begrepet programvare er at det er for bredt. Ethvert sett med instruksjoner som kan kontrollere en datamaskin – eller en hvilken som helst annen elektronisk enhet, for den saks skyld – kan betraktes som programvare.
Dette var ikke et problem i de tidlige dagene av databehandling da alle programmer ble skrevet i assembly og direkte koblet til maskinvaren for å utføre en hvilken som helst oppgave. Men i disse dager kjører en dataenhet på lag på lag med kode, med brukeren bare eksponert for programmene på toppen.
Denne kategorien av brukervennlige programmer, kalt applikasjonsprogramvare, inkluderer alle apper og verktøy du bruker på PC-en din, for eksempel nettleseren eller ordredigeringsprogrammet. Under det ligger operativsystemet, som håndterer detaljer på lavt nivå som å gjengi visuelle bilder til skjermen og håndtere input.
De fleste tror at det ender her, men operativsystemet kommuniserer sjelden direkte med maskinvaren. Det er et annet lag under operativsystemet som gir systemprogramvare en enkel måte å få tilgang til maskinvarefunksjoner. Og det er fastvaren.
Firmware: The Foundation Layer of Software
I de fleste programmeringsspråk på høyt nivå er det å gjøre ting som å vise et bilde på skjermen en enkel kommando. Likevel et sted i datamaskinen er det et stykke kode som er ansvarlig for å oversette den kommandoen til faktiske prosessorinstruksjoner.
Firmware er koblingen mellom maskinvare og programvare, og lar utviklere bruke enhetens muligheter gjennom et forenklet programmeringsgrensesnitt i stedet for CPU-spesifikke instruksjoner. For en datamaskin er denne fastvaren den velkjente Basic Input Output System (BIOS), tilgjengelig selv uten OS.
I enklere elektroniske enheter som en TV-fjernkontroll eller en ruter, fungerer fastvaren også som operativsystemet. Slike maskiner er ikke ment for installasjon av tredjepartsprogramvare som en PC og er avhengige av fastvaren for å utføre alle nødvendige oppgaver.
Hvordan installeres fastvare på en enhet?
Ingen elektronisk enhet kan brukes uten fastvare. Dette er grunnen til at alle elektroniske komponenter leveres med fastvare forhåndsinstallert av produsenten.
Selv på datamaskiner er dette programmet lagret på en spesialisert flash-brikke på hovedkortet, ikke harddisken. Dette gjør det mulig å starte opp en datamaskin og konfigurere maskinvareinnstillinger uten at et operativsystem er installert.
Å oppdatere fastvare er verken enkelt eller nødvendig på de fleste enheter. Som den grunnleggende kontrollkoden for maskinen, kan det å rote den gjøre maskinvaren ubrukelig. Datamaskiner er et unntak, som tillater BIOS-oppgraderinger som skal installeres av brukeren ved å blinke brikken.
Firmware vs Software: Et øyeblikk
Hvordan er fastvare forskjellig fra programvare?
Maskinvare og programvare kalles vanligvis de to komponentene i en elektronisk enhet, men det er ikke det komplette bildet. Operativsystemer og applikasjoner kan ikke kommunisere med maskinvaren direkte, og krever et lag med spesialisert kode for å bygge bro over gapet.
Og det koblingselementet er fastvare. Den består av arkitekturspesifikke instruksjoner som direkte styrer maskinvaren, og i enkel elektronikk fungerer den også som et grunnleggende OS. I andre enheter gir firmware et abstrakt grensesnitt til programvare i stedet, slik at operativsystemet kan bruke maskinvaren uten å bry seg om den underliggende arkitekturen.
På grunn av sin essensielle natur kommer fastvaren forhåndslastet på en flash-brikke på selve hovedkortet, uavhengig av programvare som er skrevet til disken. Den kan bare oppdateres (dvs.”flashes”) med spesialiserte prosesser, i motsetning til enkel installasjon av programvarepakker.
Alle elektroniske enheter og perifere komponenter kommer med sin egen fastvare. Digitale kameraer, smarttelefoner, SSD-er og til og med USB-stasjoner – hvis den har maskinvare som må kontrolleres, er det fastvare ombord for å administrere det.