[go: up one dir, main page]

Dzinis[1], saukts arī par draiveri (angļu: driver), ir programma, kas vada dažādu procesu norisi vai ierīču darbību (piemēram, signālu pārsūtīšanu pa sakaru līnijām, diskdziņu, printeru u.c. ierīču funkcionēšanu), lai saskaņotu šo procesu izpildi vai ierīču sadarbību ar datoru. Ierīču dziņus lieto, lai katrai programmai, kas grib lietot kāda veida ierīci, nebūtu jāiekļauj visu attiecīgā veida ierīču vadības kodu. Dziņi nodrošina standartizētu kāda veida ierīču piekļuves saskarni.

Dziņus var iedalīt fizisko ierīču dziņos, kas nodrošina standartizētu saskarni kādai fiziskai ierīcei (piemēram, tīkla karte, videokarte) un virtuālo ierīču draiveros, kas simulē ierīci ar standartizētu saskarni (šajā gadījumā nekādas fiziskas ierīces nav) (piemēram, optisko disku ierīču emulatori (Daemon tools), virtuālās tīkla kartes (openvpn)). Virtuālo ierīču draiverus lieto arī virtuālajām mašīnām un emulatoriem. Šajā gadījumā šie dziņi emulatorā darbojošajai operētājsistēmai vai programmai rada ilūziju, ka tā darbojas reālā datorā.

Vēl dziņus var iedalīt fiziskā slāņa draiveros un loģiskā slāņa ierīču dziņus:

  • Fiziskā slāņa ierīču draiveri darbojas ar kādu konkrētu ierīci un nodrošina standartizētu piekļuves saskarni. Tādi ir tīkla karšu, videokaršu un citu ierīču draiveri. Virtuālo ierīču draiveri pēc definīcijas ir fiziskā slāņa draiveri.
  • Loģiskā slāņa draiveri darbojas ar jau standartizētu ierīces saskarni (kas nav specifisks attiecīgajai ierīcei). Tādi ir datņu sistēmu dziņi, kas operētājsistēmai nodrošina iespējas strādāt ar dažādām datņu sistēmām un tīkla slāņa protokolu izpildi, no kurām pazīstamākā ir TCP/IP. Pie šīs grupas kaut kādā mērā var pieskaitīt arī printeru dziņus.

Fiziskā slāņa draiveri gandrīz vienmēr ir operētājsistēmas kodola daļa. Tos vai nu iekompilē tur iekšā kompilēšanas laikā, vai arī ielādē kā atsevišķus moduļus darbojošai operētājsistēmai. Kļūdas šajos dziņos var radīt visas operētājsistēmas nestabilitāti.

Loģiskā slāņa draiveri var vai nu būt (datņu sistēmu dziņi), vai var nebūt (daži printeru dziņi) operētājsistēmas kodola daļa. Kļūdas dziņos, kuri nav operētājsistēmas kodola daļa, parasti nespēj izraisīt visas sistēmas nestabilitāti.