Понятие о pipe. Системный вызов pipe()
Важное отличие pip’a от файла заключается в том, что прочитанная информация немедленно удаляется из него и не может быть прочитана повторно.
Pipe можно представить себе в виде трубы ограниченной емкости, расположенной внутри адресного пространства операционной системы, доступ к входному и выходному отверстию которой осуществляется с помощью системных вызовов. В действительности pipe представляет собой область памяти, недоступную пользовательским процессам напрямую, зачастую организованную в виде кольцевого буфера (хотя существуют и другие виды организации). По буферу при операциях чтения и записи перемещаются два указателя, соответствующие входному и выходному потокам. При этом выходной указатель никогда не может перегнать входной и наоборот. Для создания нового экземпляра такого кольцевого буфера внутри операционной системы используется системный вызов pipe ().
В процессе работы системный вызов организует выделение области памяти под буфер и указатели и заносит информацию, соответствующую входному и выходному потокам данных, в два элемента таблицы открытых файлов, связывая тем самым с каждым pip’oM два файловых дескриптора. Для одного из них разрешена только операция чтения из pip’a, а для другого — только операция записи в pipe.
Для выполнения этих операций мы можем использовать те же самые системные вызовы read () и write (), что и при работе с файлами. Естественно, по окончании использования входного или/и выходного потока данных, нужно закрыть соответствующий поток с помощью системного вызова close () для освобождения системных ресурсов. Необходимо отметить, что, когда все процессы, использующие pipe, закрывают все ассоциированные с ним файловые дескрипторы, операционная система ликвидирует pipe. Таким образом, время существования pip’a в системе не может превышать время жизни процессов, работающих с ним.
Еще по теме Понятие о pipe. Системный вызов pipe():
- 1.2. Основные понятия системного анализа
- 32. Системный подход: общие положения. Системологические понятия
- I. 1. СИСТЕМНЫЙ ПОДХОД КАК ИНСТРУМЕНТ ДЛЯ ПОСТРОЕНИЯ СИСТЕМНЫХ ОПИСАНИЙ
- I. СИСТЕМНЫЕ ОПИСАНИЯ - ГЛАВНЫЙ РЕЗУЛЬТАТ СИСТЕМНОГО ПОДХОДА В ПСИХОЛОГИИ
- Психология личности целостна, системна (принцип целостности, системности).
- § 55 Общие понятия о поклаже. – Поклажа свободная и необходи- мая, по русскому закону. – Кто может вступать в договор о поклаже. – Доказательство поклажи. – Сохранная расписка. – Когда не требуется письменное доказательство. – Обязанности приемщика. – Поклажа в запертом помещении. – Растрата. – Ответственность приемщика. – Возвращение поклажи при несостоятельности. – Вызов наследников приемщика и отдатчика. – Поклажа в гостиницах.
- ВЫЗОВ ВРАЧА
- СПТ откликается на вызов обстоятельств
- Быстрый вызов желаемого
- Бросьте себе вызов
- Самоубийство как вызов обществу
- § 14 Условное соглашение. – Предложение и вызов. – Договор посредством публичного торга или состязания. – Одностороннее обещание.
- Тема 1. Основные принципы системного анализа
- § 46 Принятие наследства. – Значение вызова кредиторов и некоторых публикаций. – Отзыв о принятии и действия, служащие признаком принятия.
- ПРИНЦИП СИСТЕМНОСТИ