\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}%,frame=,indent=1cm ]{}
+ \begin{lstlisting}[stepnumber=0]{}%,frame=,indent=1cm ]{}
struct ipc_perm
{
key_t key; /* Key. */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct msqid_ds {
struct ipc_perm msg_perm; /* structure for operation permission */
time_t msg_stime; /* time of last msgsnd command */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct msgbuf {
long mtype; /* message type, must be > 0 */
char mtext[LENGTH]; /* message data */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct semid_ds
{
struct ipc_perm sem_perm; /* operation permission struct */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct sem {
short sempid; /* pid of last operation */
ushort semval; /* current value */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
union semun {
int val; /* value for SETVAL */
struct semid_ds *buf; /* buffer for IPC_STAT, IPC_SET */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct sembuf
{
unsigned short int sem_num; /* semaphore number */
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct shmid_ds {
struct ipc_perm shm_perm; /* operation perms */
int shm_segsz; /* size of segment (bytes) */
Benedyczak,\footnote{i patch al kernel e la relativa libreria possono essere
trovati su
\href{http://www.mat.uni.torun.pl/~wrona/posix_ipc}
-{http://www.mat.uni.torun.pl/\~{}wrona/posix\_ipc}.}.
+{http://www.mat.uni.torun.pl/\tild{}wrona/posix\_ipc}.}.
In generale, come le corrispettive del SysV IPC, le code di messaggi sono poco
usate, dato che i socket\index{socket}, nei casi in cui sono sufficienti, sono
più comodi, e che in casi più complessi la comunicazione può essere gestita
\begin{figure}[!htb]
\footnotesize \centering
\begin{minipage}[c]{15cm}
- \begin{lstlisting}[labelstep=0]{}
+ \begin{lstlisting}[stepnumber=0]{}
struct mq_attr {
long mq_flags; /* message queue flags */
long mq_maxmsg; /* maximum number of messages */