Antwort1
Dies sind Haupt- und Nebennummern. Weitere Informationen dazu finden Sie hier: http://www.makelinux.net/ldd3/chp-3-sect-2.shtml
Traditionell identifiziert die Hauptnummer den mit dem Gerät verbundenen Treiber. Beispielsweise werden /dev/null und /dev/zero beide von Treiber 1 verwaltet, während virtuelle Konsolen und serielle Terminals von Treiber 4 verwaltet werden; ebenso werden sowohl vcs1- als auch vcsa1-Geräte von Treiber 7 verwaltet. Moderne Linux-Kernel erlauben die gemeinsame Nutzung von Hauptnummern durch mehrere Treiber, aber die meisten Geräte, die Sie sehen, sind immer noch nach dem Prinzip „eine Hauptnummer, ein Treiber“ organisiert.
Die Minor-Nummer wird vom Kernel verwendet, um genau zu bestimmen, auf welches Gerät verwiesen wird. Abhängig davon, wie Ihr Treiber geschrieben ist (wie wir weiter unten sehen werden), können Sie entweder einen direkten Zeiger auf Ihr Gerät vom Kernel erhalten oder die Minor-Nummer selbst als Index in einem lokalen Gerätearray verwenden. In beiden Fällen weiß der Kernel selbst fast nichts über Minor-Nummern, außer dass sie sich auf Geräte beziehen, die von Ihrem Treiber implementiert werden.
Antwort2
Wie @Daemon erwähnt hat, handelt es sich hierbei um Haupt- und Nebennummern. Die Hauptnummern sind für einen bestimmten Gerätetyp üblich.
Beispielsweise durch Ausführen von:
ls -l /dev | grep -P "tty\d$"
Produziert:
crw--w---- 1 root tty 4, 0 May 26 23:41 tty0
crw--w---- 1 root tty 4, 1 May 26 23:41 tty1
crw--w---- 1 root tty 4, 2 May 26 23:41 tty2
crw--w---- 1 root tty 4, 3 May 26 23:41 tty3
crw--w---- 1 root tty 4, 4 May 26 23:41 tty4
crw--w---- 1 root tty 4, 5 May 26 23:41 tty5
crw--w---- 1 root tty 4, 6 May 26 23:41 tty6
crw--w---- 1 root tty 4, 7 May 26 23:41 tty7
crw--w---- 1 root tty 4, 8 May 26 23:41 tty8
crw--w---- 1 root tty 4, 9 May 26 23:41 tty9
Diese haben alle die gleiche Hauptnummer 4
, aber unterschiedliche Nebennummern.