Hvad er indlejret software?

“Hvad er indlejret software?” er et ofte stillet spørgsmål. Verden og samfundet omkring os er formet og styret af systemer baseret på mikroprocessorer – pacemakere, mobiltelefoner, husholdningsapparater, biler, jernbanekontrolsystemer, satellitter – listen er næsten bogstaveligt talt uendelig. Uden dem ville der ikke være nogen energi, rindende vand eller fødevareforsyning. Forretninger eller transport ville være umulige. Sygdomme ville sprede sig, og samfundet ville hurtigt gå i opløsning.

Den software, der afvikles i disse systemer, kaldes indlejret software. Det er computersoftware, der er indbygget i hardwaresystemer, som er skrevet til at styre maskiner eller apparater. Indlejret software er typisk designet til den særlige hardware, det kører på, og udfører ofte en specifik funktion, selv om et enkelt stykke hardware kan indeholde flere indlejrede softwareprogrammer.

Alle teknologiske enheder, der har printplader og computerchips, vil sandsynligvis have indlejret software i dem. Producenter inkorporerer indbygget software i elektronikken i f.eks. biler, telefoner, modemmer, apparater, legetøj, sikkerhedssystemer, pacemakere, fjernsyn og set-top-bokse og digitale ure.

Indlejret software muliggør mange af de avancerede funktioner, der er almindelige i moderne enheder. Mens indlejret software kan være meget enkel, kan den også være meget sofistikeret i applikationer som f.eks. processtyringssystemer, militære våben og fly.

Historie om indlejret software

Den mest innovative teknologi finansieres, undersøges og udvikles ofte med henblik på militære applikationer, og indlejrede systemer blev anvendt i rumforskning, missilstyring og flyelektronik fra slutningen af 30’erne til midten af 60’erne. Det var først i slutningen af 60’erne, at indlejret software udviklede sig til et punkt, hvor det var nyttigt for folk uden for disse specialområder.

I 1970’erne fik de første integrerede mikrocontrollerchips som f.eks. Intel 8008 den første integrerede mikrocontrollerchip til at få indlejret software til at tage fart. Denne enkelt chip fungerede som en lille computer; den kunne læse data fra den virkelige verden, behandle dem og generere output, styret af et fleksibelt softwareprogram. Med disse chips blev det muligt at skrive et enkelt program, indlæse det i chippen og derefter få chippen til at udføre sit program, når den modtog det korrekte input. I slutningen af 1980’erne havde næsten alle former for forbrugerelektronik en eller anden form for mikrocontrollerchip indbygget i sig.

I de følgende år er omkostningerne ved at fremstille integrerede mikrocontrollere faldet til kroner og øre. Som følge heraf findes de i næsten alle elektroniske apparater, og hver af disse chips har et eller flere stykker indlejret software. De sidder endda i ting, som de fleste mennesker ikke ville tro havde computere, f.eks. brødristere, elektriske ventilatorer eller børnelegetøj.

Udfordringerne ved indlejret software

Indlejret software er pr. definition en del af et større hardwaresystem, uanset om det er en bil, en pacemaker eller et industrielt automatiseringssystem. Ikke alene fungerer disse systemer i realtid og skal under alle omstændigheder udføre den planlagte handling inden for et bestemt tidsrum, men de skal også fungere med begrænsede ressourcer som f.eks. begrænset hukommelsesplads, begrænset databehandlingskapacitet eller lavt strømforbrug. Indlejret software skal også tilpasse sig en lang række ændringer i dets omgivelser. Processorer, sensorer og hardwaredele ændres over tid, mens softwaren forbliver næsten den samme. Desuden kræver softwaren portabilitet, autonomi, fleksibilitet og tilpasningsevne.

Pålidelighed er af største vigtighed. Uventet opførsel fra et indlejret system kan skade dets driftsmiljø alvorligt. Da slutbrugerne kræver langvarig adfærd fra indlejrede systemer, skal indlejret software fungere i årtier uden service.

Da indlejret software er tæt forbundet med kritiske miljøer og livstruende risici, er sikkerhed også et centralt krav. Livscyklussen for udvikling af indlejret software er styret af standarder, der kræver høj kvalitet og stærke ingeniør- og forvaltningsprocesser. Når dette kombineres med brugen af de nyeste teknologier, stilles der store krav til den tekniske ekspertise og professionalisme, der kræves af ingeniører inden for indlejret software. Efterhånden som størrelsen og kompleksiteten af indlejret software vokser, skal de standarder, der anvendes i softwareudviklingsprocessen, løbende forbedres på trods af et voldsomt omkostningspres.

Sikkerheden bliver vigtigere og vigtigere i takt med, at “tingenes internet” betyder, at indlejrede systemer bliver mere udbredt og mere sammenkoblet med hinanden. I takt med at hverdagsapparater som vaskemaskiner og køleskabe omfatter konnektivitet som en standardfunktion, risikerer tingenes internet at udsætte nye niveauer af usikkerhed, og der er behov for nye idéer til at hjælpe med at afværge malware og hackertrusler.

Slutning

Indlejret software øger variabiliteten, konfigurerbarheden, udvidelsesmulighederne og ændringsmulighederne for hverdagsprodukter og giver også mulighed for en større variation i funktionaliteten. Det er nu en grundlæggende del af mange ting, som vi tager for givet i dagligdagen.

I fremtiden vil indlejret software være i alt – i dit automatiserede hjem, din intelligente bil, kommunikationsinfrastrukturer, medicinske instrumenter og implantater og allestedsnærværende kontrolsystemer. Nye energirelaterede teknologier vil øge effektiviteten af den elektriske strømtransmission og give umiddelbare, effektive måder at imødegå energi- og klimakravene på.

Indlejrede systemer vil ikke længere være defineret af den computerhardware, de anvender. De vil snarere blive designet til at udføre en hvilken som helst funktion for at nå flere og skiftende mål, uanset om det er på en mikrocontroller, en mikroprocessor, en signalprocessor, en biologisk samling eller en anden programmerbar logisk enhed.

Desto mere livskvalitet vi ønsker, jo højere levestandard vi ønsker at etablere på hele planeten, og jo mere vi kræver sikkerhed og tryghed, jo mere har vi brug for indlejret software.