Skip to main content

Was ist Socket C?

Socket C ist ein Begriff, mit dem manchmal auf den Prozess des Schreibens von Socket -Code in der C -Programmiersprache C verwiesen wird, und wird manchmal verwendet, um auf die tatsächliche Bibliotheksdatei zu verweisen, die die Implementierung für einige Socket -Funktionen hält.Die tatsächliche Socket-C-Bibliotheksdatei enthält Implementierungen für verschiedene Funktionen und Makros, die die von den Sprachbibliotheken bereitgestellte grundlegende Socket-Funktionen bereitstellen, obwohl die Socket C-Datei operatives System-abhängig ist und möglicherweise nicht in einigen Systemen implementiert ist.Das Schreiben von Socket C -Code beinhaltet das Erstellen einer Schnittstelle mit einem Standardeingangs- und Ausgangsprotokoll, das als Socket bezeichnet wird, und zum Senden oder Empfangen von Informationen, normalerweise über ein Netzwerk oder über ein Stück Hardware.Die C-Programmiersprache soll tragbar sein, aber die Socket-Programmierung basiert auf einigen systemspezifischen Funktionen auf niedrigem Niveau, sodass es manchmal schwierig sein kann, Programme in C zu schreiben, die Sockets verwenden, aber auch die Tragbarkeit der Cross-Systems aufrechterhalten.

Es gibt dreiGrundtypen von Sockets, die Socket C unterstützt.Das erste ist als Datagramm bekannt, der zweite ist ein Stream und der dritte ist RAW Access.Ein Datagramm ist eine Art Socket, der Informationen in kleinen Bündeln sendet, die als Pakete bezeichnet werden.Jedes Paket wird von einer Quelle mit Informationen auf dem Zielbuchsen gesendet, das es in einem Netzwerk sucht.Während ein Datagramm eine effiziente Methode zur Kommunikation über Steckdosen sein kann und häufig zum Senden von E -Mails verwendet wird, ist es auch verlustvoll, da kein gesendetes Paket garantiert am Zielbuchse ankommt.

Ein Stream -Socket stellt eine Verbindung zu einem anderen herSocket und Informationen werden direkt zwischen den Steckdosen übergeben.Bei der Verwendung in der Socket -C -Programmierung stellt diese Art von Socket sicher, dass alle gesendeten Daten auf der anderen Seite empfangen werden.Eine Komplikation ist jedoch, dass die Socket manchmal Blockierungen verwenden kann, was bedeutet, dass der Sockel die Ausführung eines Prozesses stoppt, bis Informationen empfangen werden oder bis der Sockel geschlossen ist, obwohl die Verwendung von Threads oder Gabelprozessen dieses Problem in den meisten Fällen beheben kann.Der Zugriff auf den Rohen Socket wird als Mittel zur Verfügung gestellt, um sich auf eine nahezu Hardware -Ebene mit dem Gerät zu verbinden.Die Hardware und die Treiber, die das Netzwerk ermöglichen, variieren stark durch Betriebssystem. Daher kann es schwierig sein, eine Socket -C -Bibliotheksdatei zu finden, die alle möglichen Kombinationen unterstützt.Aus diesem Grund enthält die Socket C -Datei selbst sowie die Socket -Header -Datei häufig eine lange Liste der bedingten Kompilierungsrichtlinien, sodass sie auf verschiedenen Systemen unterschiedlich kompiliert wird.