Indirizzamento dei programmi applicativi



Il processo P che vuole comunicare con un altro processo Q deve essere in grado di identificare la controparte. Ciò avviene individuando prima di tutto la macchina sulla quale il processo Q è attivo e poi il processo-Q stesso nell’ambito dei processi attivi su tale macchina. L’Identificazione della macchina avviene, nelle reti TCP/IP, tramite un indirizzo IP, Un indirizzo IP è un numero di 32 bit assegnato alla macchina, che la identifica univocamente nell’ambito della rete. Per comodità, esiste una convenzione di scrittura degli indirizzi IP basata sulla indicazione del valore decimale dei 4 byte che costituiscono l’indirizzo, separati da un punto. Ad esempio, 131.175.16.91 è la rappresentazione esterna di indirizzo IP.Il formato esterno è supportato da una funzione inet_addr . dell’ interfaccia socket che converte un numero dal formato esterno (stringa) in un indirizzo IP. Tale funzione è .long inet_addr(indirizzo esterno) questa funzione è utilizzata tìpicamente nei programmi per acquisire un indirizzo IP nel formato esterno e convertirlo in un vero indirizzo a 32 bit. Più complessa è l’identificazione di un processo nell’ambito di una macchina taIe identificazione si basa sulla nozione di Port: un Port è un numero usato per identificare uno specifico processo nell’ ambito della maccnlna ;Come fa un processo a sapere quale è il numero di Port del processo con il quale vuole comunicare? E’ il progettista dell’applicazione distribuita che stabilisce Ia convenzione tra i diversi programmi che la costituiscono, per cui essi si , conoscono utilizzando il Port.I

mportante osservare che il Port di un processo non ha niente a che fare con il suo processo identificazione (PID), anche se ambedue svolgono·la funzione di identificare un processo nell’ ambito di una macchina.

Annunci sponsorizzati:
Condividi su Facebook Condividi su Twitter!
Pinterest