/dev

From Gentoo Wiki
Jump to:navigation Jump to:search
This page is a translated version of the page /dev and the translation is 86% complete.
Outdated translations are marked like this.

Directorul /dev

Majoritatea utilizatorilor Linux înțeleg că /dev/sda1 este doar o metodă rapidă pentru a se referi la prima partiție de pe primul disc pe care îl găsește kernel-ul. Destul de ușor, nu?

Dar ia în considerare dispozitive care pot fi introduse fără a mai opri sistemul, cum ar fi USB, IEEE 1394, PCI hot-swappable, etc. Care este primul dispozitiv pentru fiecare dintre acestea? Și pentru cât timp? Cum ar fi numite celelalte dispozitive atunci când primul dispare? Cum ar afecta procesele in curs de desfășurare? Nu ar fi haios ca un proces de printare să fie transferat de la o imprimantă laser de ultimă generație la o imprimantă cu matrice aproape moartă doar din cauza faptului că cineva s-a decis să scoată imprimanta laser (care se intâmpla să fie prima imprimantă)?

Vă prezentăm managerul de dispozitive. Un manager de dispozitive modern (inclusiv udev și eudev) trebuie să:

  • Meargă în userspace.
  • Creeze și să șteargă fișiere de dispozitive.
  • Ofere nume de dispozitive consistente.
  • Ofere un API în userspace.

De fiecare dată când o schimbare se produce în structura dispozitivului, kernel-ul emite un uevent care este preluat de către manageul de dispozitive. Apoi manageul de dispozitive urmează regulile declarate în directoarele /etc/udev/rules.d, /run/udev/rules.d și /lib/udev/rules.d. În funcție de informația din uevent, găsește regula sau regulile pe care trebuie să le aplice și execută acțiunile necesare. Aceste acțiuni pot implica crearea sau ștergerea unor fișiere de dispozitive, și mai poate provoca încărcarea unor anumite fișiere firmware în memoria kernel-ului.