%% errors.tex
%%
-%% Copyright (C) 2000-2007 Simone Piccardi. Permission is granted to
+%% Copyright (C) 2000-2009 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",
\end{description}
-
\section{Gli errori dei processi}
\label{sec:err_proc_errors}
troppa memoria, non può mai accadere in GNU/Linux.
\item \errcode{ECHILD} \textit{There are no child processes}. Non esistono
processi figli di cui attendere la terminazione. Viene rilevato dalle
- funzioni \func{wait} e \func{waitpid}.
-%\item \errcode{EPROCLIM} \textit{}. Il limite dell'utente per nuovi processi
-% sarà ecceduto alla prossima \func{fork}. (non credo esista in Linux)
-% TODO verificare EPROCLIM
+ funzioni \func{wait} e \func{waitpid} (vedi sez.~\ref{sec:proc_wait}).
+\item \errcode{EPROCLIM} \textit{Too many processes}. Il limite dell'utente
+ per nuovi processi (vedi sez.~\ref{sec:sys_resource_limit}) sarà ecceduto
+ alla prossima \func{fork}; è un codice di errore di BSD, che non viene
+ utilizzato al momento su Linux.
\end{description}
avrebbe il blocco.
\item \errcode{EFAULT} \textit{Bad address}. Una stringa passata come
argomento è fuori dello spazio di indirizzi del processo, in genere questa
- situazione provoca direttamente l'emissione di un segnale di \textit{segment
- violation} (\const{SIGSEGV}).
+ situazione provoca direttamente l'emissione di un segnale di
+ \itindex{segment~violation} \textit{segment violation} (\const{SIGSEGV}).
\item \errcode{EINVAL} \textit{Invalid argument}. Errore utilizzato per
segnalare vari tipi di problemi dovuti all'aver passato un argomento
sbagliato ad una funzione di libreria.
\item \errcode{ENODATA} \textit{No data available}. Viene indicato da POSIX
come restituito da una \func{read} eseguita su un file descriptor in
- modalità non bloccante quando non ci sono dati. In realtà in questo caso
- viene utilizzato \errcode{EAGAIN}. In Linux viene utilizzato dalle funzioni
- per la gestione degli attributi estesi dei file quando il nome
- dell'attributo richiesto non viene trovato.
+ modalità non bloccante quando non ci sono dati. In realtà in questo caso su
+ Linux viene utilizzato \errcode{EAGAIN}. Lo stesso valore valore però viene
+ usato come sinonimo di \errcode{ENOATTR}.
-% TODO referenziare la trattazione degli attributi estesi dei file
+\item \errcode{ENOATTR} \textit{No such attribute}. È un codice di errore
+ specifico di Linux utilizzato dalle funzioni per la gestione degli attributi
+ estesi dei file (vedi sez.~\ref{sec:file_xattr}) quando il nome
+ dell'attributo richiesto non viene trovato.
\item \errcode{ENOLINK} \textit{Link has been severed}. È un errore il cui
valore è indicato come \textsl{riservato} nelle \textit{Single Unix
% LocalWords: SysV EMULTIHOP Multihop attempted ENODATA ENOLINK been severed
% LocalWords: ENOMSG desired ENOSR streams resources ENOSTR stream EOVERFLOW
% LocalWords: Value large defined STAT EPROTO ETIME Timer expired group wait
-% LocalWords: waitpid Specification cap USB did respond
+% LocalWords: waitpid Specification cap USB did respond Stale
%%% Local Variables: