Я читаю « Драйверы устройств 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 идентифицирует уникальное устройство. »
Теперь я запутался. Как получилось, что два устройства могут иметь один и тот же мажор-минор? Какие именно номера устройств?
Поправьте меня, если я ошибался .. Заранее спасибо.