"Software på lavt niveau" er et bredt udtryk, men det henviser generelt til software, der interagerer direkte med hardware i et computersystem. Dette inkluderer ting som:
1. Operativsystemer (OS): Den grundlæggende software, der administrerer hardware og giver en grænseflade til anden software at køre på. Eksempler:Windows, MacOS, Linux.
2. Enhedsdrivere: Software, der giver operativsystemet mulighed for at kommunikere med specifikke hardwareenheder, som printere, grafikkort og lagerenheder.
3. Firmware: Software indlejret i hardwareenheder, der ofte er gemt i skrivebeskyttet hukommelse (ROM). Det styrer enhedens grundlæggende funktionalitet og starter ofte systemet op. Eksempler:Bios på et bundkort, firmware i en router.
4. Bootloader: Det første program, der kører, når en computer starter. Det indlæser operativsystemet i hukommelsen.
5. Systemværktøjer: Programmer, der administrerer systemets ressourcer, såsom diskstyringsværktøjer, filsystemværktøjer og netværkskonfigurationsværktøjer.
6. Indlejret software: Software designet til specifikke enheder med dedikerede funktioner, ofte skrevet på sprog på lavt niveau som C. Eksempler:Software i et bils instrumentbræt, et vaskemaskins kontrolsystem.
Egenskaber ved software på lavt niveau:
* direkte hardwareinteraktion: Arbejder tæt sammen med computerens hardware, ofte ved hjælp af monteringssprog eller programmeringssprog på lavt niveau.
* Performance Critical: Designet til hastighed og effektivitet, da de direkte påvirker systemets ydeevne.
* Abstraktionslag: Tilvejebringer et abstraktionslag til software på højere niveau til at interagere med hardware uden at skulle forstå kompleksiteten i de underliggende komponenter.
* Systemstabilitet: Afgørende for systemstabilitet og funktionalitet. Fejl i software på lavt niveau kan forårsage større systemulykker.
hvorfor kaldes det "lavt niveau"?
Dette udtryk henviser til softwarens nærhed til hardware. Det fungerer på et lavere abstraktionsniveau og håndterer de grundlæggende aspekter af, hvordan computeren fungerer. Software på højere niveau, som applikationer og spil, er bygget på dette fundament og behøver ikke at interagere direkte med hardware.
At forstå software på lavt niveau er vigtig for alle, der ønsker at gå dybere ned i computersystemer, netværksadministration eller indlejret programmering. Det giver en grundlæggende forståelse af, hvordan computere fungerer, og hvordan software interagerer med hardware.