Datamaskinenhetsdrivere er det som gjør at operativsystemet ditt kan fortelle maskinvaren inne i datamaskinen og periferiutstyret du har koblet til hva de skal gjøre.
I likhet med apper og operativsystemer kan disse maskinvaredriverne bestå av åpent tilgjengelig kildekode skjult bak binære blogger og en lang sluttbrukerlisensavtale.
Så, hva er forskjellene mellom lukkede og åpen kildekode maskinvaredrivere? Videre, hvordan påvirker disse forskjellene deg?
Hva er en maskinvaredriver?
Maskinvaredrivere finnes for å aktivere din datamaskinens programvare for å kommunisere med maskinvaren. Noen ganger kommer de integrert med datamaskinens operativsystem. Andre ganger må du laste ned og installere driverne selv.
Mange drivere for Microsoft Windows er tilgjengelige for nedlasting. Eldre PC-enheter kom ofte med CD-ROM-er som inkluderte driverne for å få maskinvaren til å fungere. Maskinvare betyr alt fra en USB-mikrofon til et grafikkort for spilling.
På Linux kommer drivere ofte bakt inn i operativsystemet, som kommer med sine fordeler og ulemper. Mesteparten av tiden, når du kobler til en ny enhet, fungerer det ganske enkelt. Dette er spesielt tilfelle med eldre maskinvare som har hatt tid til å komme seg inn i Linux-kjernen. Men noen ganger, spesielt med nyere enheter, vil ikke datamaskinen gjenkjenne den nye enheten, og det er mindre sannsynlig at Linux-kompatible drivere er tilgjengelige for nedlasting på nettet.
Hvorfor mange drivere er proprietære
En datamaskinkomponent eller ekstern enhet kan virke som et primært fysisk produkt, men programvaren som driver enheten gjør ofte ett produkt mer overbevisende enn et annet. Mange bedrifter ser på koden som driver denne programvaren som deres konkurransefortrinn i forhold til andre selskaper.
I stedet for å gjøre denne koden offentlig tilgjengelig, lar de bare de uten selskapet eller visse entreprenører se koden. Koden anses som proprietær informasjon. Den resulterende programvaren er proprietær programvare, også kjent som programvare med lukket kildekode.
Konkurransen mellom AMD og NVIDIA er en av de hardeste innen maskinvare. NVIDIA har lenge hatt en fordel fremfor rivaler og er mindre tilbøyelig til å tilby åpen kildekode maskinvaredrivere. Koden i disse driverne kan uten tvil gjøre det mulig for en eksisterende konkurrent å ta igjen eller gjøre det lettere for et nytt selskap å komme inn på feltet uten å utvikle kode fra bunnen av.
Proprietære operativsystemer har proprietære drivere
Her er det også behov for å adressere elefanten i rommet. Microsoft Windows er det mest brukte stasjonære operativsystemet i verden. Windows består av lukket kildekode.
Maskinvaredrivere integreres med operativsystemet på et så lavt nivå. Siden Windows 8 kan Windows-datamaskiner bare kjøre signerte drivere. Dette betyr at drivere må sertifiseres av Microsoft, og siden Windows er proprietær, må disse driverne også være det.
Kanskje mindre overraskende sertifiserer Apple også drivere på macOS. Men på kjernenivå er macOS basert på ulike åpen kildekode-teknologier. macOS bruker også åpen kildekode CUPS-systemet for å administrere skrivere. Men hvis du installerer en driver, er den sannsynligvis proprietær.
Googles Chrome OS er litt av et unntak her. Chrome OS er teknisk proprietært, men det er bygget på toppen av et fundament med åpen kildekode. Siden Chrome OS bruker Linux-kjernen, bruker den både åpen kildekode-drivere og lukkede binære blobs som følger med kjernen. Men hvis du trenger å kjøre ekstra maskinvare som ikke støttes ut av esken, er det egentlig ikke det Chrome OS er ment for.
Hva er behovet for åpne drivere?
Dette betyr at spørsmålet om åpen kildekode vs lukket kildekode-drivere i stor grad påvirker Linux-brukere. Her er preferansen det motsatte av de andre stasjonære OS-ene. Ingen selskap utvikler og sender Linux, så det er ikke ett selskap som sertifiserer drivere. Linux-utvikling er spredt blant folk over hele verden, noen jobber som frivillige og andre som ansatte for ulike selskaper. Det fungerer bedre for alle når kildekoden for drivere er tilgjengelig.
Fordelene med åpen kildekode-drivere gjenspeiler mange av fordelene med åpen kildekode-programvare generelt.
- Enklere programvaresamarbeid: Mange mennesker kan utvikle programvare sammen når det ikke er ett selskap som fungerer som portvakt for kildekoden.
- Programvare du kan stole på: Uten tilgang til kildekoden vet du faktisk ikke hva et program gjør.
- Større personvern: Det er sjelden at åpen kildekode-programvare sporer hva du gjør siden det er lett for noen å redistribuere en annen kopi av programvaren med sporingen fjernet.
- Programvarens levetid: Når et selskap mister interessen for et program eller en enhet, slutter de ofte å distribuere dem. Åpen kildekode gjør at alle andre kan fortsette å gjøre programvaren tilgjengelig.
På Linux, når en driver er åpen kildekode, er det større sjanse for at alt bare vil fungere. Maskinvaren din vil sannsynligvis også inneholde færre feil.
For eksempel kan Linux-brukere forvente jevnere skrivebordsanimasjoner ved bruk av Intel-integrert grafikk enn en NVIDIA-grafikk kort, fordi Linux-grafikkutviklere ikke har tilgang til den indre funksjonen til NVIDIA-brikken for å finne ut alle feil. Spennelser kan dukke opp på uventede steder, for eksempel når du lukker en bærbar datamaskin for å sette den i dvale. Som et resultat kan Linux-brukere som ønsker en jevnere opplevelse, men samtidig trenger et kraftig grafikkort, ende opp med å foretrekke AMD, et selskap som tilbyr mer åpen kildekode-drivere.
Hvis Linux var mer utbredt på stasjonære datamaskiner, ville du sannsynligvis sett et større press på selskaper for å frigjøre åpne drivere. På Linux er åpen kildekode mer et konkurransefortrinn, en funksjon som mange brukere legger vekt på når de tar kjøpsbeslutninger. Men med Linux-brukere som representerer en så liten prosentandel av totale databrukere, kommer nesten aldri spørsmålet om å lage en driver med åpen kildekode opp. På Windows og macOS vil en åpen kildekode-driver ikke sertifiseres.
Åpen kildekode vs. Proprietær: Hvilken bør du bruke?
På de fleste datamaskiner har du ikke noe valg. På Windows og macOS er driverne dine proprietære. På Chrome OS, uansett om driverne dine er åpne eller lukkede, er denne kunnskapen stort sett ukjent og irrelevant for opplevelsen din.
Men hvis du bruker Linux, er dette spørsmålet viktig. Med mindre du trenger den ekstra kraften som en proprietær driver kan gi, for eksempel for spill, gir maskinvare med åpen kildekode-drivere ofte en bedre opplevelse. Og slike drivere er bedre på linje med den bredere etosen og funksjonaliteten som skiller Linux fra andre operativsystemer.