|
477 | 477 | return (0); |
478 | 478 | } |
479 | 479 |
|
480 | | -$ ./a.out |
| 480 | +$ ./a.out |
481 | 481 | ^C |
482 | 482 | \end{verbatim} |
483 | 483 | \item \texttt{fcntl()} checks for deadlock and returns \texttt{EDEADLK}. |
|
488 | 488 |
|
489 | 489 | %%%%% |
490 | 490 |
|
491 | | -\pdfbookmark[1]{IPC}{sysvipc} |
| 491 | +\pdfbookmark[1]{IPC}{ipc} |
492 | 492 |
|
493 | 493 | \begin{slide} |
494 | 494 | \sltitle{IPC} |
|
509 | 509 | \begin{itemize} |
510 | 510 | \item IPC resources continue to exist even after the process that created them |
511 | 511 | is no longer around. To destroy them it is necessary to explicitly request this. |
512 | | -From the shell the list of IPS resources can be acquired using |
| 512 | +\item There are two types of standard IPC interfaces: System~V and POSIX. |
| 513 | +In general System~V IPC has more complex albeit in some cases more capable API. |
| 514 | +For more information about System~V IPC mechanisms, see \texttt{svipc(7)} man |
| 515 | +page on any Linux distribution. |
| 516 | +\item POSIX IPC API is much simpler and better designed than the System~V IPC |
| 517 | +API. However, it is also much younger so you may see the System~V API used a |
| 518 | +lot in existing code. For System~V semaphore API and examples, see page |
| 519 | +\pageref{SYSVSEM}. |
| 520 | +\item The POSIX API for IPC came in with extension 1003.1b (aka POSIX.4), see |
| 521 | +page \pageref{POSIX4}. |
| 522 | +\item From the shell the list of System~V IPS resources can be acquired using |
513 | 523 | the \texttt{ipcs} command. They can be deleted using the \texttt{ipcrm} command. |
514 | 524 | The state and contents of existing IPS resources is unchanged even if no process |
515 | 525 | works with them at the moment. |
516 | | -\item For more information, see \texttt{svipc(7)} man page on any Linux |
517 | | -distribution. |
518 | 526 | \end{itemize} |
519 | 527 |
|
520 | 528 | %%%%% |
|
679 | 687 | \end{slide} |
680 | 688 |
|
681 | 689 | \begin{itemize} |
682 | | -\item POSIX IPC API is much simpler and better designed than the System~V IPC |
683 | | -API. However, it is also much younger so you may see the System~V API used a |
684 | | -lot in existing code. For System~V semaphore API and examples, see page |
685 | | -\pageref{SYSVSEM}. |
686 | | -\item The POSIX API for IPC came in with extension 1003.1b (aka POSIX.4), see |
687 | | -page \pageref{POSIX4}. |
688 | 690 | \item Sockets were accepted by other Unix systems as well and have been a part |
689 | 691 | of the UNIX specification since version 2. |
690 | 692 | \item There are other more system specific facilities. For example, |
|
0 commit comments