udev Linuxen kernelak bere 2.6 bertsioan erabiltzen duen gailuen kudeatzailea da. /dev-en dauden gailu fitxategiak kontrolatzea da bere funtzioa. devfs-ren ondorengo bat da.
udev eta devfs ez zuten Linux-eko sistema zaharretan, sistema horrek zuen gailu bakoitzarentzat fitxategi batzuk sortzen ziren (gailua sistemara konektatua egon ala ez). Fitxategi multzo estatikoa zela esaten da, nodoak ez baitira aldatzen.
Gainera, periferiko bat atzitzeko modua ez da beti berdina, konektaturik dauden gailuak kontutan hartu behar baitira: A eta B diskoak konektatzen badira, disko1 eta disko2 deituko dira hurrenez hurren. Baina disko bakarra egon ezkero konektaturik (B diskoa adibidez), disko1 deituko da, disko bakarra izango baita. B diskoak beraz izenez aldatu du.
Gailuak kudeatzeko modu honek zenbait arazo eman ditzake:
udev-ek arazo hau konpontzen du, batez ere, gailu batera beti izen berarekin atzitu ahal izatearena. Horregatik sortu zen udev, nahiz eta honen aurretik devfs sortu, hauetako arazo batzuk konpontzen zituena.
Lehen aipatutako arazoak, udev-ek ondoren azaltzen den moduan konpontzen ditu:
udev-ek, sistemara konektaturik dauden gailuen sarrerak bakarrik mantentzen ditu /dev katalogoan. Honela /dev ikeragarri handiaren arazoa konpontzen da.
Gailu bakoitza ezagutarazteko ez da zenbaki nagusia eta bigarren mailakoa zenbakirik erabiliko. Ausaz aukeratuta ere ibiliko da sistema hau.
Gailu bakoitzari izen finko bat esleitzea onartzen du, adibidez, kamara. Ez dugu zein beste gailu eta zein ordenetan konektatu diren begira ibili beharko.
Adibidez, disko gogor bat, bere fitxategi sistemaren identifikadorea, bere izena eta lotutako konektore fisikoagatik ezagutuko da.
D-BUS mezuen bidez edozein programari helaraziko dio, gailu bat noiz konektatzen den jakin dezaten. Programei ere konektaturik dauden gailuen zerrenda eskuratzeko aukera ematen die eta atzitzeko modua erakutsi.
Izen politika erabiltzailearen ingurunean egon dadin, eta ez kernel-aren ingurunearen menpe, lortzen da udev-i esker. Beraz, edozein programak gailuaren izena erabaki ahal izatea ahalbidetzen du. Ez da beharrezkoa izango kernela aldatzea.
udev-en deabrua den udevd erabiltzailearen ingurunean izateak ere beste abantaila du, izan ere, memoria hau diskora eramatea posible izango baita, kernelean ez bezala.
Nahiz eta erabiltzaileek izenak aldatzeko aukera izan, udev-ek gailuak LSB-an definiturik dauden eran izendatzen ditu.
udevd prozesuak memoria gutxi erabiltzen du eta ez da beti exekutatu behar. Ahalmen txikiko ordenagailuetarako gauza ona da hau.
devfs ere arazo batzuk konpontzeko sortu zen, baina ez arazo guztiak. udev sortu zutenek ondorengo orrian devfs baino hobea izatearen arrazoiak azaltzen dituzte (ingelesez): [1]
Laburbilduz:
udev, udevd izeneko deabru baten bidez exekutatzen da. Gailu bat noiz konektatu edo kentzen den detektatuko du.
Hauetako gertaera baten aurrean, udev-ek ingurune informazioa (kernelaren subsistema, erabilitako konektore fisikoa, kernelak emandako izena, ...) eta gailuaren informazioa (serie zenbakia, ekoizlea, ...) lortuko ditu.
/etc/udev/rules.d/-en kokatuko erregela multzo batek, jasotako datuen arabera burutu beharreko ekintzak erabakiko ditu. Erregelak seguraski ondorengoa egingo du: gailuari izen bat eman, gailuaren fitxategia sortu eta gailuak lan egin dezan beharrezko programa abiarazi.
udev, Greg Kroah-Hartman-ek sortu zuen Dan Stekloff, Kay Sievers eta beste askoren laguntzaz.