Jest jeszcze jedna rzecz, która moim zdaniem zasługuje na uwagę; mianowicie montowanie głównego systemu plików, które stanowi kluczową część inicjacji systemu. Jądro musi za wczasu wiedzieć, które urządzenie zawiera główny system plików, a dokładniej musi w zmiennej ROOT_DEV umieścić numer tego urządzenia. Jednym ze sposobów powiadomienia jądra o urządzeniu jest dostarczenie mu odpowiedniego parametru przez program ładujący (np. LILO). Parametr taki jest ciągiem znaków i wygląda np. tak:
root=/dev/hdb4
Jądro musi z tego wywnioskować, jaki numer ma urządzenie /dev/hdb4.
I tu okazuje się, że ta nazwa wcale nie jest rozpoznawana przez jądro
jako nazwa pliku specjalnego utworzonego przez mknod - to jest po prostu
ciąg znaków, rozpoznawany dzięki tablicy root_dev_names, zdefiniowanej
i widocznej tylko w pliku init/main.c, która zawiera pary (w postaci struktur)
składające się z nazw najważniejszych urządzeń i odpowiadających im numerów.
Dzięki temu w funkcji root_dev_setup() możliwe jest nadanie zmiennej
ROOT_DEV odpowiedniej wartości.