Correzioni varie piu una serie di precisazioni sull'uso di recvfrom
authorSimone Piccardi <piccardi@gnulinux.it>
Mon, 23 Mar 2009 21:38:33 +0000 (21:38 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Mon, 23 Mar 2009 21:38:33 +0000 (21:38 +0000)
secondo quanto suggerito da Fabiano Lever

fileadv.tex
othersock.tex
pref.tex
prochand.tex

index 84d51c551aa3e2eb0dafb6b7d68a8dc545b15d0e..8b9e0b4f02c4c2d6cf2959ae044f0b995d501284 100644 (file)
@@ -3563,8 +3563,8 @@ saranno incrementate di conseguenza. Dopo aver eseguito con successo la
 funzione è garantito che una scrittura nella regione indicata non fallirà per
 mancanza di spazio disco.
 
+% TODO controllare la trattazione della nuova funzionalità di preallocazione 
 
 % TODO documentare \func{posix\_fadvise}
 % vedi http://insights.oetiker.ch/linux/fadvise.html
 % questo tread? http://www.ussg.iu.edu/hypermail/linux/kernel/0703.1/0032.html
index f181a4ce3d5e807c5dfa53513be6f34aadc9799c..5837baee92c5261cd959b5e441ab00eb7a743187 100644 (file)
@@ -264,9 +264,20 @@ comunque il numero di byte letti.
 
 I due argomenti \param{from} e \param{fromlen} sono utilizzati per ottenere
 l'indirizzo del mittente del pacchetto che è stato ricevuto, e devono essere
-opportunamente inizializzati con i puntatori alle variabili dove la struttura
-contenente quest'ultimo e la relativa lunghezza saranno scritti (si noti che
-\param{fromlen} è un valore intero ottenuto come
+opportunamente inizializzati; il primo deve contenere il puntatore alla
+struttura (di tipo \ctyp{sockaddr}) che conterrà l'indirizzo e il secondo il
+puntatore alla variabile con la dimensione di detta struttura. Si tenga
+presente che mentre il contenuto della struttura \ctyp{sockaddr} cui punta
+\param{from} può essere qualunque, la variabile puntata da \param{fromlen}
+deve essere opportunamente inizializzata a \code{sizeof(sockaddr)},
+assicurandosi che la dimensione sia sufficiente a contenere tutti i dati
+dell'indirizzo.\footnote{si ricordi che \ctyp{sockaddr} è un tipo generico che
+  serve ad indicare la struttura corrispondente allo specifico tipo di
+  indirizzo richiesto, il valore di \param{fromlen} pone un limite alla
+  quantità di dati che verranno scritti sulla struttura puntata da
+  \param{from} e se è insufficiente l'indirizzo risulterà corrotto.}  Al
+ritorno della funzione si otterranno i dati dell'indirizzo e la sua effettiva
+lunghezza, (si noti che \param{fromlen} è un valore intero ottenuto come
 \itindex{value~result~argument} \textit{value result argument}).  Se non si è
 interessati a questa informazione, entrambi gli argomenti devono essere
 inizializzati al valore \const{NULL}.
index a9f40d171ed291af85a46907175b29c303e668d2..1b56b1358d5a862796564d8be9a64a3b332bef0f 100644 (file)
--- a/pref.tex
+++ b/pref.tex
@@ -19,7 +19,9 @@ la programmazione in ambito di sistemi Unix generici, ma resta una attenzione
 specifica alle caratteristiche peculiari del kernel Linux e delle versioni
 delle librerie del C in uso con esso; in particolare si darà ampio spazio alla
 versione realizzata dal progetto GNU, le cosiddette \textit{GNU C Library} o
-\textsl{glibc}, che ormai sono usate nella stragrande maggioranza dei casi.
+\textsl{glibc}, che ormai sono usate nella stragrande maggioranza dei casi,
+senza tralasciare, là dove note, le differenze con altre implementazioni come
+le \textsl{libc5} o le \textsl{uclib}.
 
 L'obiettivo finale di questo progetto è quello di riuscire a ottenere un testo
 utilizzabile per apprendere i concetti fondamentali della programmazione di
index 911dbe2e5a052a14b0f7de2391f643a611c91960..fc07b7d81f36ea974408938411f9f1e835ad8cbc 100644 (file)
@@ -144,6 +144,9 @@ fig.~\ref{fig:proc_task_struct}.
   \label{fig:proc_task_struct}
 \end{figure}
 
+% TODO la task_struct è cambiata per qualche dettaglio vedi anche
+% http://www.ibm.com/developerworks/linux/library/l-linux-process-management/
+
 Come accennato in sez.~\ref{sec:intro_unix_struct} è lo \itindex{scheduler}
 \textit{scheduler} che decide quale processo mettere in esecuzione; esso viene
 eseguito ad ogni system call ed ad ogni interrupt,\footnote{più in una serie