Hop til indhold
Hardware

Firmware

Firmware er en type software, der ligger fast indlejret i en hardwareenheds hukommelse og styrer, hvordan de fysiske komponenter fungerer. Den fungerer som bindeled mellem hardwaren og de mere synlige programmer eller operativsystemer, brugeren interagerer med. Firmware findes i næsten alle elektroniske enheder og bliver typisk den allerførste kode, der kører, når enheden tændes.

Et hverdagseksempel er en almindelig router: når den tændes, er det firmwaren, der starter processoren, tjekker de tilsluttede porte og gør routeren klar til at dele netværksforbindelsen ud til hjemmets enheder. På samme måde har en trykt printer, en smartwatch og bilens motorstyring hver deres firmware, som får de indbyggede kredsløb til at udføre de rigtige handlinger. Uden denne underliggende kode ville hardwaren ikke vide, hvad den skulle foretage sig.

Hvordan adskiller firmware sig fra software og drivere?

Hardware, software og firmware hænger sammen, men dækker forskellige lag i en enhed. Hardware er de fysiske dele, mens software er de programmer, man som bruger installerer, åbner og lukker efter behov. Modem og lignende netværksudstyr illustrerer forskellen godt: modemmets firmware sørger for, at det kan omsætte signaler og oprette forbindelse, mens en app på computeren, der viser forbindelsens status, er almindelig software oven på operativsystemet.

Firmware minder i sin funktion om en enhedsdriver, men de to ting er ikke det samme. En driver er et program, operativsystemet bruger til at kommunikere med hardwaren, og driveren installeres og opdateres via operativsystemet. Firmware ligger derimod direkte på selve hardwareenheden og kan i mange tilfælde starte og virke, selv før operativsystemet er indlæst.

Hvordan fungerer firmware i praksis?

Når en enhed tændes, læser processoren firmwaren fra en ikke-flygtig hukommelse, altså en hukommelse der bevarer sit indhold, selv når strømmen slukkes. Firmwaren initialiserer herefter hardwarekomponenterne, tjekker for fejl og forbereder systemet til at indlæse et eventuelt operativsystem eller udføre sine faste funktioner. På en computer er det klassiske eksempel BIOS eller det nyere UEFI, som begge er firmware, der ligger på bundkortet og styrer opstartsprocessen, før Windows, macOS eller Linux overtager. I mere specialiserede enheder, som en netværksswitch, styrer firmwaren i stedet, hvordan datapakker sendes videre mellem de tilsluttede porte.

Typer af firmware

Firmware kan groft opdeles efter, hvor let den kan ændres, og hvor i systemet den sidder:

  • Lavniveau-firmware ligger typisk i ROM eller lignende hukommelse, der ikke kan omskrives. Den er meget stabil, men kan til gengæld ikke rettes eller opdateres uden at udskifte selve hardwaren.
  • Opdaterbar (høj­niveau) firmware ligger i flashhukommelse og kan ændres af producenten eller i visse tilfælde brugeren. Det gør det muligt at rette fejl, lukke sikkerhedshuller og tilføje nye funktioner efter enheden er solgt.
  • Embedded/subsystem-firmware styrer en afgrænset funktion i et større system, for eksempel en netværksprotokol i en router eller batteristyringen i en bærbar computer.

Hvorfor og hvordan opdateres firmware?

Producenter udgiver løbende firmwareopdateringer, der kan rette fejl, forbedre ydeevnen eller lukke sikkerhedshuller, uden at brugeren skal udskifte selve hardwaren. En typisk opdatering indebærer, at man finder den nyeste firmwarefil på producentens hjemmeside, følger vejledningen for installation og lader enheden genstarte, så ændringerne træder i kraft. Det anbefales generelt at tage backup af vigtige data og sikre sig, at opdateringen passer til den præcise enhedsmodel, inden man går i gang, da en fejlslagen firmwareopdatering i nogle tilfælde kan gøre enheden ubrugelig.

Sikkerhed og risici ved forældet firmware

Fordi firmware ligger så tæt på hardwaren, kan sårbarheder her være særligt alvorlige og svære at opdage med almindelige sikkerhedsværktøjer. Angribere kan i visse tilfælde udnytte huller i forældet firmware til at få adgang til en enhed, aflytte netværkstrafik eller skjule skadelig kode, så den overlever selv en geninstallation af operativsystemet. Det gælder ikke mindst netværksudstyr som routere og switches, hvor firmwaren blandt andet håndterer opgaver som tildeling af IP-adresser via DHCP. Derfor anbefales det løbende at holde firmware opdateret på både computere, netværksudstyr og andre forbundne enheder.

Firmware i en tættere forbundet verden

Med flere internetforbundne enheder i hjem og virksomheder fylder firmware en stadig større rolle, fordi hver eneste sensor, kamera eller smart-højttaler har brug for firmware for at fungere og kommunikere sikkert. Det stiller nye krav til, hvor ofte og hvor let producenter kan sende opdateringer ud, og til at brugere rent faktisk installerer dem, når de bliver tilgængelige.

Eksempel
Når en router tændes, er det firmwaren der starter processoren, tjekker portene og gør routeren klar til at dele internetforbindelsen ud i hjemmet.
Ofte stillede spørgsmål
Hvad er forskellen på firmware og almindelig software?
Firmware ligger fast i hardwarens egen hukommelse og styrer grundlæggende funktioner, mens almindelig software installeres og køres oven på operativsystemet og typisk kan åbnes og lukkes efter behov.
Hvad er BIOS og UEFI?
BIOS og UEFI er to typer firmware, der sidder på en computers bundkort og styrer opstartsprocessen, før operativsystemet indlæses. UEFI er en nyere afløser for BIOS med flere sikkerhedsfunktioner.
Er firmware det samme som en driver?
Nej. En driver er et program, operativsystemet bruger til at kommunikere med hardware, og den installeres via operativsystemet. Firmware ligger derimod direkte på selve hardwareenheden og kan fungere uafhængigt af operativsystemet.
Hvorfor skal firmware opdateres?
Firmwareopdateringer kan rette fejl, forbedre en enheds ydeevne og lukke sikkerhedshuller, som ellers kan udnyttes af angribere.
Kan firmware blive ramt af sikkerhedsangreb?
Ja, forældet eller sårbar firmware kan i visse tilfælde udnyttes af angribere, og skadelig kode gemt i firmware kan være særligt svær at opdage med almindelige antivirusværktøjer.
Nysgerrig på, hvordan firmwaren helt konkret får din internetforbindelse i gang? Se, hvordan et modem bruger sin indbyggede firmware til at omsætte signaler og skabe forbindelsen til internettet.
Modem →