Hi, wieviele (virtuelle) COM-Ports kann man unter Linux maximal verwenden? Gibts es Unterschiede zwischen den verschiedenen Distributionen? Google hat mir leider nicht weitergeholfen, und selber verwende ich momentan kein Linux. Bei Windows lieg die Grenze bei 256
less /usr/src/linux/Documentation/devices.txt
1 | 4 char TTY devices |
2 | 0 = /dev/tty0 Current virtual console |
3 | |
4 | 1 = /dev/tty1 First virtual console |
5 | ... |
6 | 63 = /dev/tty63 63rd virtual console |
7 | 64 = /dev/ttyS0 First UART serial port |
8 | ... |
9 | 255 = /dev/ttyS191 192nd UART serial port |
10 | |
11 | UART serial ports refer to 8250/16450/16550 series devices. |
scheint auf den ersten blick 192 "com" devices ist max.
Pro seriellem Treiber etwa 1.000.000 (2^20), insgesamt also mehrere Millionen. Thorsten
c. m. schrieb: > UART serial ports refer to 8250/16450/16550 series devices. > > scheint auf den ersten blick 192 "com" devices ist max. Das sind aber erstmal nur die klassischen "COM"-Ports. Dazu kommen noch andere, wie z.B. per USB angebundene RS232-Schnittstellen.
Die Beschränkung auf 8-bit (256) MAJOR und MINOR Nummern bei den Devices ist schon seit Linux 2.6 nicht mehr aktuell. MAJOR-Nummern sind aktuell 12-bit (4096), die MINOR-Nummern 20-bit (1048576) lang. Thorsten
Kann man die Einträge des /dev Interface überhaupt als COM Ports bezeichnen, alle Einträge sind Dateien, auf die man Daten schreiben kann, die zwar nicht gespeichert, aber verarbeitet werden. Gleiches gilt auch für das Lesen, gelesene Daten werden umgehend gelöscht.
/dev ist kein Interface, /dev ist lediglich eine Konvention. Nahezu alle Unix-artigen legen ihre Geräteeinträge dort ab, was aber weder einen technischen Grund hat noch Zwang ist. Und natürlich sind das serielle Ports, wenn dem Geräteeintrag eine entsprechende Hardware zugeordnet ist. Dateizugriff auf /dev/ttyS0 stellt eben die Programmierschnittstelle des seriellen Ports dar. So wie unter DOS eben Dateizugriff auf COM1:, die beiden sind sich viel ähnlicher als du denkst. Auch unter DOS könnte sich ein serieller Gerätetreiber GNA7: nennen, wenn er das wollte, und dennoch serielle Hardware zur Verfügung stellen. Mit den /dev-Einträgen geht die Flexibilität eben noch einen Schritt weiter und erzwingt nicht einmal einen bestimmten "magischen" Dateinamen. Ob es sich bei einem Eintrag in /dev um einen seriellen Port handelt, ist freilich nicht verlässlich herauszufinden, daher auch die Namenskonvention "/dev/ttyIRGENDWAS<n>", damit das etwas vorhersagbar wird. Ist unter DOS nicht grundsätzlich anders, ausser das halt alle Treiberhersteller freiwillig ihre seriellen Ports COM<n> nennen.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.