Skip to main content

Cos'è la presa C?

Socket C è un termine che a volte viene utilizzato per fare riferimento al processo di scrittura del codice socket nel linguaggio di programmazione C e talvolta viene utilizzato per fare riferimento al file della libreria effettivo che contiene l'implementazione per alcune funzioni socket.Il file della libreria Coch Socket C effettiva contiene implementazioni per diverse funzioni e macro che forniscono la funzionalità socket di base fornita dalle librerie di lingue, sebbene il file socket C sia dipendente dal sistema operativo e potrebbe non essere implementato su alcuni sistemi.La scrittura del codice Cocket C implica la creazione di un'interfaccia con un protocollo di input e output standard, noto come socket e utilizzandolo per inviare o ricevere informazioni, di solito su una rete o attraverso un pezzo di hardware.Il linguaggio di programmazione C è destinato a essere portatile, ma la programmazione di socket si basa su alcune funzioni specifiche del sistema di basso livello, quindi a volte può essere difficile scrivere programmi in C che usano le prese ma mantengono anche la portabilità incrociata.

Ce ne sono treTipi di base di prese supportate da Socket C.Il primo è noto come un datagramma, il secondo è un flusso e il terzo è l'accesso grezzo.Un datagramma è un tipo di socket che invia informazioni in piccoli fasci noti come pacchetti.Ogni pacchetto viene inviato da una fonte con informazioni sulla presa di destinazione che sta cercando su una rete.Mentre un datagramma può essere un metodo efficiente per comunicare tramite le prese e spesso viene utilizzato per inviare e -mail, è anche perdita, poiché non è garantito che nessun pacchetto inviato arrivi alla presa di destinazione.

Una presa di flusso fa una connessione a un altroSocket e informazioni vengono passate direttamente tra le prese.Se utilizzato nella programmazione di socket C, questo tipo di socket garantisce che tutti i dati inviati vengano ricevuti dall'altra parte.Una complicazione, tuttavia, è che la presa a volte può utilizzare il blocco, il che significa che la presa interromperà l'esecuzione di un processo fino a quando non verranno ricevute informazioni o fino a quando la presa non sarà chiusa, sebbene l'utilizzo di thread o processi biforcuti possano risolvere questo problema nella maggior parte dei casi.L'accesso a socket grezzo viene fornito come mezzo per interfacciarsi effettivamente a livello quasi hardware con qualunque dispositivo ospiti la presa.

Le prese vengono comunemente utilizzate in varie forme per le comunicazioni Internet.L'hardware e i driver che consentono che il networking si verifichi variare notevolmente dal sistema operativo, quindi può essere difficile individuare un file della libreria di socket C che supporta tutte le possibili combinazioni.Per questo motivo, il file Socket C stesso, così come il file di intestazione del socket, spesso contiene un lungo elenco di direttive di compilazione condizionale in modo da compilare in modo diverso su vari sistemi.