Als «unix-sockets» getaggte Fragen

2
Warum ist die Socket-Pfadlänge auf 100 Zeichen begrenzt?
Auf Unix-Systemen gibt es für Pfadnamen in der Regel praktisch keine Längenbeschränkung (also 4096 Zeichen unter Linux) ... außer für Socket-Dateipfade, die auf ungefähr 100 Zeichen begrenzt sind (107 Zeichen unter Linux ). Erste Frage: Warum so eine geringe Einschränkung? Ich habe überprüft, ob es möglich zu sein scheint, diese …

1
Was passiert mit Unix-Stream-Zusatzdaten bei teilweisen Lesevorgängen?
Ich habe also viele Informationen zu Unix-Stream-Zusatzdaten gelesen, aber eine Sache, die in der gesamten Dokumentation fehlt, ist, was passieren soll, wenn ein Teil gelesen wird? Angenommen, ich empfange die folgenden Nachrichten in einem 24-Byte-Puffer msg1 [20 byes] (no ancillary data) msg2 [7 bytes] (2 file descriptors) msg3 [7 bytes] …

2
Bereinigt Linux automatisch abstrakte Domain-Sockets?
Auf StackOverflow gibt es eine großartige Antwort darauf , eine bessere Sperre für Daemons (synthetisiert von Eduardo Fleury ) bereitzustellen , die nicht vom allgemeinen PID-Dateisperrmechanismus für Daemons abhängt. Es gibt dort viele gute Kommentare darüber, warum PID-Sperrdateien manchmal Probleme verursachen können, deshalb werde ich sie hier nicht erneut aufbereiten. …


1
Was bedeutet der Inhalt von / proc / net / unix?
Auf meinem Android-Gerät befindet sich die Datei /proc/net/unixwho's content, die nicht mit der einer Standard- Linux-Distribution übereinstimmt (die die Unix-Domain-Sockets anzeigt). Erste Zeilen: Num RefCount Protocol Flags Type St Inode Path 00000000: 00000002 00000000 00000000 0002 01 5287581 /data/misc/wifi/sockets/wpa_ctrl_789-3189 00000000: 00000003 00000000 00000000 0001 03 6402 /dev/socket/qmux_radio/qmux_client_socket 297 00000000: 00000002 …


1
Gleichzeitig in denselben Unix-Socket lesen / schreiben?
Ist es in Ordnung, wenn zwei oder mehr Prozesse gleichzeitig lesen / schreiben unix socket? Ich habe einige Tests durchgeführt. Hier ist meine sock_test.sh, die 50 Clients hervorbringt, von denen jeder gleichzeitig 5K-Nachrichten schreibt: #! /bin/bash -- SOC='/tmp/tst.socket' test_fn() { soc=$1 txt=$2 for x in {1..5000}; do echo "${txt}" | …

1
Warum gibt es AF_NETLINK? Ist AF_UNIX nicht genug?
Soweit ich weiß, dient das AF_NETLINK-Socket-Protokoll zur Kommunikation zwischen dem Kernel und dem Userspace und AF_UNIX zur Kommunikation zwischen zwei Userspace-Prozessen. Warum benötigt Linux einen separaten AF_NETLINK? Warum können UNIX-Sockets nicht für die Kommunikation zwischen Kernel und Benutzer verwendet werden?
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.