X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=thread.tex;h=a42e2cccaf010a614b42b94f63623a240d527809;hp=88d25ac7070ac505cb61af3f5ef87511aaf8d145;hb=a48e8dfeb4b05b57eab2336c7d2e0aaf6b9bd572;hpb=fc2954a94ffab07871f49e2432d5223f55840fbf diff --git a/thread.tex b/thread.tex index 88d25ac..a42e2cc 100644 --- a/thread.tex +++ b/thread.tex @@ -14,7 +14,7 @@ Tratteremo in questo capitolo un modello di programmazione multitasking, quello dei \textit{thread}, alternativo al modello classico dei processi, -tipico di Unix. Ne esaminiremo le caratteristiche, vantaggi e svantaggi, e le +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 riferimento all'interfaccia standardizzata da POSIX.1e. @@ -25,7 +25,7 @@ riferimento all'interfaccia standardizzata da POSIX.1e. Questa prima sezione costituisce una introduzione ai \textit{thread} e tratterà i concetti principali del relativo modello di programmazione, -esamineremo anche queli modelli sono disponibili per Linux, dando una breve +esamineremo anche quali modelli sono disponibili per Linux, dando una breve panoramica sulle implementazioni alternative. @@ -37,10 +37,32 @@ panoramica sulle implementazioni alternative. % http://math.arizona.edu/~swig/documentation/pthreads/ % 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 +separazione fra i diversi processi, in modo che questi non possano disturbarsi +a vicenda. + +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 +dei processi: +\begin{itemize} +\item +\item +\end{itemize} + + + \subsection{I \textit{thread} e Linux} \label{sec:linux_thread} + + + + \subsection{Implementazioni alternative} \label{sec:thread_other} @@ -79,7 +101,11 @@ delle \acr{glibc}. +% LocalWords: thread multitasking POSIX sez Posix Library kernel glibc mutex + + %%% Local Variables: %%% mode: latex %%% TeX-master: "gapil" %%% End: +