В исходных кодах, приведенных в книге, используются функции-обертки, описанные в разделе 1.6, позволяющие уменьшить объем кода, обеспечивая, тем не менее, проверку возврата ошибки для любой вызываемой функции. Имена всех функций-оберток начинаются с заглавной буквы.
Стандарты IEEE Posix — Posix.1, определяющий основы интерфейса С в Unix, и Posix.2, определяющий основные команды, — это те стандарты, к которым движутся большинство производителей. Однако стандарты Posix в настоящее время быстро поглощаются (включаются в качестве части) и расширяются коммерческими стандартами, в частности The Open Group (Unix 98).
Таблица 1.5. Версии модели клиент-сервер
| Листинг | Описание |
|---|---|
| 4.1 | Два канала между родительским и порожденным процессами |
| 4.5 | Использует popen и cat |
| 4.6 | Использует два канала FIFO между родительским и порожденным процессами |
| 4.7 | Два канала FIFO между независимым сервером и неродственным клиентом |
| 4.10 | Каналы FIFO между независимым последовательным сервером и несколькими клиентами |
| 4.12 | Программный канал или FIFO: формирование записей в потоке байтов |
| 6.7 | Две очереди сообщений System V |
| 6.12 | Одна очередь сообщений System V с несколькими клиентами |
| 6.16 | Одна очередь сообщений System V для каждого клиента; клиентов несколько |
| 15.15 | Передача дескриптора через дверь |
Таблица 1.6. Версии модели производитель-потребитель
| Листинг | Описание |
|---|---|
| 7.1 | Взаимное исключение, несколько производителей, один потребитель |
| 7.5 | Взаимное исключение и условная переменная, несколько производителей, один потребитель |
| 10.8 | Именованные семафоры Posix, один производитель, один потребитель |
| 10.11 | Семафоры Posix в памяти, один производитель, один потребитель |
| 10.12 | Семафоры Posix в памяти, несколько производителей, один потребитель |
| 10.15 | Семафоры Posix в памяти, несколько производителей, несколько потребителей |
| 10.18 | Семафоры Posix в памяти, один производитель, один потребитель: несколько буферов |
Таблица 1.7. Версии программы с увеличением последовательного номера