Passaggio a UTF-8 dei sorgenti
[gapil.git] / thread.tex
index 87ed4d07fb4bd952da887b3a82297238442c6072..8cc4facf0c65e0f0896284e964558fae976e8fe5 100644 (file)
@@ -1,6 +1,6 @@
 %% thread.tex
 %%
 %% thread.tex
 %%
-%% Copyright (C) 2007 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2007-2011 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Un preambolo",
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Un preambolo",
@@ -19,7 +19,7 @@ Tratteremo in questo capitolo un modello di programmazione multitasking,
 quello dei \textit{thread}, alternativo al modello classico dei processi,
 tipico di Unix. Ne esamineremo le caratteristiche, vantaggi e svantaggi, e le
 diverse realizzazioni che sono disponibili per Linux; nella seconda parte
 quello dei \textit{thread}, alternativo al modello classico dei processi,
 tipico di Unix. Ne esamineremo le caratteristiche, vantaggi e svantaggi, e le
 diverse realizzazioni che sono disponibili per Linux; nella seconda parte
-tratteremo in dettaglio quella che è l'implementazione principale, che fa
+tratteremo in dettaglio quella che è l'implementazione principale, che fa
 riferimento all'interfaccia standardizzata da POSIX.1e.
 
 
 riferimento all'interfaccia standardizzata da POSIX.1e.
 
 
@@ -27,7 +27,7 @@ riferimento all'interfaccia standardizzata da POSIX.1e.
 \label{sec:thread_intro}
 
 Questa prima sezione costituisce una introduzione ai \textit{thread} e
 \label{sec:thread_intro}
 
 Questa prima sezione costituisce una introduzione ai \textit{thread} e
-tratterà i concetti principali del relativo modello di programmazione,
+tratterà i concetti principali del relativo modello di programmazione,
 esamineremo anche quali modelli sono disponibili per Linux, dando una breve
 panoramica sulle implementazioni alternative.
 
 esamineremo anche quali modelli sono disponibili per Linux, dando una breve
 panoramica sulle implementazioni alternative.
 
@@ -41,12 +41,12 @@ panoramica sulle implementazioni alternative.
 % http://www.humanfactor.com/pthreads/
 
 Il modello classico dell'esecuzione dei programmi nei sistemi Unix, illustrato
 % http://www.humanfactor.com/pthreads/
 
 Il modello classico dell'esecuzione dei programmi nei sistemi Unix, illustrato
-in sez.~\ref{cha:process_interface}, è fondato sui processi. Il modello nasce
-per assicurare la massima stabilità al sistema e prevede una rigida
+in sez.~\ref{cha:process_interface}, è fondato sui processi. Il modello nasce
+per assicurare la massima stabilità al sistema e prevede una rigida
 separazione fra i diversi processi, in modo che questi non possano disturbarsi
 a vicenda. 
 
 separazione fra i diversi processi, in modo che questi non possano disturbarsi
 a vicenda. 
 
-Le applicazioni moderne però sono altamente concorrenti, e necessitano quindi
+Le applicazioni moderne però sono altamente concorrenti, e necessitano quindi
 di un gran numero di processi; questo ha portato a scontrarsi con alcuni
 limiti dell'architettura precedente. In genere i fautori del modello di
 programmazione a \texttt{thread} sottolineano due problemi connessi all'uso
 di un gran numero di processi; questo ha portato a scontrarsi con alcuni
 limiti dell'architettura precedente. In genere i fautori del modello di
 programmazione a \texttt{thread} sottolineano due problemi connessi all'uso
@@ -57,12 +57,12 @@ dei processi:
 \end{itemize}
 
 
 \end{itemize}
 
 
-
-
 \subsection{I \textit{thread} e Linux}
 \label{sec:linux_thread}
 
 
 \subsection{I \textit{thread} e Linux}
 \label{sec:linux_thread}
 
 
+\subsection{La system call \func{clone}}
+\label{sec:process_clone}
 
 
 
 
 
 
@@ -80,9 +80,9 @@ dei processi:
 
 
 Tratteremo in questa sezione l'interfaccia di programmazione con i
 
 
 Tratteremo in questa sezione l'interfaccia di programmazione con i
-\textit{thread} standardizzata dallo standard POSIX 1.c, che è quella che è
+\textit{thread} standardizzata dallo standard POSIX 1.c, che è quella che è
 stata seguita anche dalle varie implementazioni dei \textit{thread} realizzate
 stata seguita anche dalle varie implementazioni dei \textit{thread} realizzate
-su Linux, ed in particolare dalla \textit{Native Thread Posix Library} che è
+su Linux, ed in particolare dalla \textit{Native Thread Posix Library} che è
 stata integrata con i kernel della serie 2.6 e che fa parte a pieno titolo
 delle \acr{glibc}.
 
 stata integrata con i kernel della serie 2.6 e che fa parte a pieno titolo
 delle \acr{glibc}.
 
@@ -107,6 +107,14 @@ delle \acr{glibc}.
 
 
 
 
 
 
+% TODO troppe cose, ma segue list di notizie correlate
+% aggiunta rt_tgsigqueueinfo con il kernel 2.6.31
+
+
+% TODO trattare tkill e tgkill per l'invio di segnali a thread, fare un
+% capitolo apposito su thread e segnali
+
+
 % LocalWords:  thread multitasking POSIX sez Posix Library kernel glibc mutex
 
 
 % LocalWords:  thread multitasking POSIX sez Posix Library kernel glibc mutex