From 46d99fe1ba3465af43877a5ce09712831246687f Mon Sep 17 00:00:00 2001 From: Simone Piccardi Date: Thu, 26 Sep 2002 17:47:08 +0000 Subject: [PATCH] Corretto un taglia e incolla esagerato --- session.tex | 45 --------------------------------------------- 1 file changed, 45 deletions(-) diff --git a/session.tex b/session.tex index 6d572a2..9e159d0 100644 --- a/session.tex +++ b/session.tex @@ -626,51 +626,6 @@ occorrer In Linux buona parte di queste azioni, possono venire eseguite invocando la funzione \func{daemon}, introdotta per la prima volta in BSD4.4; il suo prototipo è: -\begin{prototype}{unistd.h}{pid\_t getsid(pid\_t pid)} - Legge l'identificatore di sessione del processo \param{pid}. - - \bodydesc{La funzione restituisce l'identificatore (un numero positivo) in - caso di successo, e -1 in caso di errore, nel qual caso \var{errno} assumerà - i valori: - \begin{errlist} - \item[\macro{ESRCH}] Il processo selezionato non esiste. - \item[\macro{EPERM}] In alcune implementazioni viene restituito quando il - processo selezionato non fa parte della stessa sessione del processo - corrente. - \end{errlist} - } -\end{prototype} - -Entrambi gli identificatori vengono inizializzati alla creazione di ciascun -processo con lo stesso valore che hanno nel processo padre, per cui un -processo appena creato appartiene sempre allo stesso raggruppamento e alla -stessa sessione del padre. Vedremo poi come sia possibile creare più -\textit{process group} all'interno della stessa sessione, e spostare i -processi dall'uno all'altro, ma sempre all'interno di una stessa sessione. - -Ciascun raggruppamento di processi ha sempre un processo principale, il -cosiddetto \textit{process group leader}, che è identificato dall'avere un -\acr{pgid} uguale al suo \acr{pid}, in genere questo è il primo processo del -raggruppamento, che si incarica di lanciare tutti gli altri. Un nuovo -raggruppamento si crea con la funzione \func{setpgrp},\footnote{questa è la - definizione di POSIX.1, BSD definisce una funzione con lo stesso nome, che - però è identica a \func{setpgid}; nelle \acr{glibc} viene sempre usata - sempre questa definizione, a meno di non richiedere esplicitamente la - compatibilità all'indietro con BSD, definendo la macro - \macro{\_BSD\_SOURCE}.} il cui prototipo è: -\begin{prototype}{unistd.h}{int setpgrp(void)} - Modifica il \acr{pgid} al valore del \acr{pid} del processo corrente. - - \bodydesc{La funzione restituisce il valore del nuovo \textit{process - group}.} -\end{prototype} - -La funzione, assegnando al \acr{pgid} il valore del \acr{pid} processo -corrente, rende questo \textit{group leader} di un nuovo raggruppamento, tutti -i successivi processi da esso creati apparterranno (a meno di non cambiare di -nuovo il \acr{pgid}) al nuovo raggruppamento. È possibile invece spostare un -processo da un raggruppamento ad un altro con la funzione \func{setpgid}, il -cui prototipo è: \begin{prototype}{unistd.h}{int daemon(int nochdir, int noclose)} Esegue le operazioni che distaccano il processo dal terminale di controllo e lo fanno girare come demone. -- 2.30.2