Я читаю « Драйверы устройств Linux, 3-е издание » и обнаружил что-то, чего не могу понять.
в главе 3.2, автор сказал:
Традиционно, старший номер идентифицирует драйвер, связанный с устройством.Младший номер используется ядром, чтобы точно определить, на какое устройство ссылаются.
Затем я попытался взглянуть на "ls -l / dev" и обнаружил кое-что необычное:
brw-rw---- 1 root disk 1, 1 2011-08-23 23:52 ram1
brw-rw---- 1 root disk 1, 2 2011-08-23 23:52 ram2
brw-rw---- 1 root disk 1, 3 2011-08-23 23:52 ram3
brw-rw---- 1 root disk 1, 4 2011-08-23 23:52 ram4
brw-rw---- 1 root disk 1, 5 2011-08-23 23:52 ram5
...
crw-r----- 1 root kmem 1, 1 2011-08-23 23:52 mem
crw-r----- 1 root kmem 1, 4 2011-08-23 23:52 port
crw-rw-rw- 1 root root 1, 3 2011-08-23 23:52 null
crw-rw-rw- 1 root root 1, 5 2011-08-23 23:52 zero
У всех этих устройств (ram1-ram5) есть клонс тем же мажор-минором, но с другим именем и типом.Я думал, что автор говорит: « старший номер означает класс устройства, а младший номер означает индекс устройства. Поэтому Major-Minor идентифицирует уникальное устройство. "
Теперь я запутался.Почему два устройства могут использовать один и тот же мажор-минор?Какие именно номера устройств?
Поправьте меня, если я ошибся .. Заранее спасибо.