Enhetsdrivare är vanligtvis skrivna i
c eller
C ++ .
Medan andra språk kan användas i specifika nischfall, förblir C och C ++ de dominerande valen på grund av deras:
* Åtkomst på låg nivå: De tillåter direkt manipulation av hårdvara och minne, avgörande för att interagera med enheter.
* Prestanda: De erbjuder den hastighet och effektivitet som krävs för interaktioner i realtid som krävs av många enhetsdrivrutiner.
* portabilitet (i viss utsträckning): Även om det inte är så bärbart som högre nivåer, kan välskrivna C/C ++ -kod anpassas över olika operativsystem med rimlig ansträngning.
* etablerat ekosystem: Omfattande bibliotek och verktyg finns för att stödja förarutveckling på dessa språk.
Även om nyare språk som Rust får dragkraft för sina minnesskyddsfördelar (adressering av en gemensam källa till förarolyckor), har C och C ++ fortfarande den största marknadsandelen i utvecklingen av enhetens förare.