/dev
Katalog /dev
Większość użytkowników systemów Linux rozumie, że /dev/sda1 jest szybkim sposobem do odniesienia się do pierwszej partycji pierwszego dysku wykrytego przez Jądro. To banalnie proste, prawda?
Lecz biorąc pod uwagę urządzenia podłączane na gorąco, takie jak USB, IEEE 1394, hot-swap PCI, itp. Jakie jest pierwsze urządzenie dla każdego z nich? I na jak długo? Jak będą nazwane inne urządzenia, jeśli to pierwsze urządzenie zostanie odłączone? Jak to będzie oddziaływać na trwających operacjach? Czy nie byłoby to zabawne, gdyby zlecenie drukowania nagle przemieściłoby się z drukarki laserowej na niemal martwą drukarkę igłową tylko dlatego, że ktoś zdecydował się wyciągnąć wtyczkę drukarki laserowej (która akurat była pierwszą drukarką)?
- Uruchamiać się w przestrzeni użytkownika.
- Dynamicznie tworzyć i usuwać pliki urządzeń.
- Zapewnić spójne nazewnictwo urządzeń.
- Zapewnić API strefy użytkownika.
Podczas każdej zmiany w strukturze urządzeń, jądro emituje uevent który jest odbierany przez menedżera urządzeń. Menadżer urządzeń postępuje zgodnie z regułami zadeklarowanymi w /etc/udev/rules.d, /run/udev/rules.d oraz /lib/udev/rules.d. Na podstawie informacji zawartych w uevent, znajduje regułę lub reguły, których potrzebuje, aby uruchomić i wykonać wymagane działania. Działania te mogą obejmować tworzenie lub usuwanie plików urządzeń, a także mogą powodować ładowanie poszczególnych plików oprogramowania układowego do pamięci jądra.