Note sulla lunghezza della lista degli argomenti.
authorSimone Piccardi <piccardi@gnulinux.it>
Thu, 12 Jan 2012 23:06:30 +0000 (23:06 +0000)
committerSimone Piccardi <piccardi@gnulinux.it>
Thu, 12 Jan 2012 23:06:30 +0000 (23:06 +0000)
prochand.tex
system.tex

index 933a828953f83680f93e3dc970ea7877f106e4af..e8591046ef9464af5fb08190a2c3e9d61404e98f 100644 (file)
@@ -1419,7 +1419,10 @@ da \param{argv} e come ambiente la lista di stringhe indicata
 da \param{envp}. Entrambe le liste devono essere terminate da un puntatore
 nullo. I vettori degli argomenti e dell'ambiente possono essere acceduti dal
 nuovo programma quando la sua funzione \func{main} è dichiarata nella forma
-\code{main(int argc, char *argv[], char *envp[])}.
+\code{main(int argc, char *argv[], char *envp[])}. Si tenga presente per il
+passaggio degli argomenti e dell'ambiente esistono comunque dei limiti, su cui
+torneremo in sez.~\ref{sec:sys_res_limits}).
+% TODO aggiungere la parte sul numero massimo di argomenti, da man execve
 
 In caso di successo la funzione non ritorna, in quanto al posto del programma
 chiamante viene eseguito il nuovo programma indicato da \param{filename}. Se
@@ -1427,8 +1430,6 @@ il processo corrente è tracciato con \func{ptrace} (vedi
 sez.~\ref{sec:process_ptrace}) in caso di successo viene emesso il segnale
 \signal{SIGTRAP}.
 
-% TODO aggiungere la parte sul numero massimo di argomenti, da man execve
-
 Le altre funzioni della famiglia (\funcd{execl}, \funcd{execv},
 \funcd{execle}, \funcd{execlp}, \funcd{execvp}) servono per fornire all'utente
 una serie di possibili diverse interfacce nelle modalità di passaggio degli
@@ -1500,9 +1501,8 @@ che deve essere terminata da un puntatore nullo.  In entrambi i casi vale la
 convenzione che il primo argomento (\var{arg0} o \var{argv[0]}) viene usato
 per indicare il nome del file che contiene il programma che verrà eseguito.
 
-
 \begin{figure}[!htb]
-  \centering \includegraphics[width=12cm]{img/exec_rel}
+  \centering \includegraphics[width=10cm]{img/exec_rel}
   \caption{La interrelazione fra le sei funzioni della famiglia \func{exec}.}
   \label{fig:proc_exec_relat}
 \end{figure}
index 2786f61d23524f75a4c3a4b8bb91b00afcd29d8d..9330f4f56317ce6d4e7abd236b25d9a8b54f113d 100644 (file)
@@ -1221,6 +1221,8 @@ essere aumentato dal processo stesso durante l'esecuzione, ciò può però esser
 fatto solo fino al valore del secondo, che per questo viene detto \textit{hard
   limit}.
 
+%TODO: tabella troppo grossa, trasformare in lista
+
 \begin{table}[htb]
   \footnotesize
   \centering
@@ -1317,6 +1319,14 @@ fatto solo fino al valore del secondo, che per questo viene detto \textit{hard
                               limite è solo una indicazione per il kernel,
                               qualora ci fosse un surplus di memoria questa
                               verrebbe assegnata.\\ 
+% TODO: aggiungere a \const{RLIMIT\_STACK} i dati di execve:
+% Questi fino al kernel 2.6.23 erano fissi e costituiti da
+% 32 pagine di memoria (corrispondenti per la gran parte delle architetture a
+% 128kb di dati). Dal 2.6.23 su molte architettire il limite viene stabilito in
+% base al valore della risorsa \const{RLIMIT\_STACK} (vedi
+% sez.~\ref{sec:sys_resource_limit}), ad un quarto dello spazio da essa
+% indicato). Dal 2.6.25 viene comunque garantito uno spazio base di 32 pagine.
+
 % TODO integrare con la roba di madvise
 % TODO integrare con le ultime aggiunte, vedi pagina di manuale
     \hline