Операционная система QNX 4.Архитектура системы

       

Программные каналы


Программный канал (pipe) - это неименованный файл, который служит каналом ввода/вывода между двумя или несколькими взаимодействующими процессами: один процесс выполняет запись в канал, другой - чтение из канала. Администратор файловой системы таким образом обеспечивает буферизацию данных. Размер буфера определяется как {PIPE_BUF} в файле . Канал удаляется, как только он закрывается с двух сторон.

Обычно программные каналы используются при параллельном выполнении двух процессов с однонаправленной передачей данных от одного процесса к другому. (Если требуется двунаправленный обмен данными, то вместо канала следует использовать сообщения.)

Типичное применение программного канала - это соединение выхода одной программы со входом другой. Такое соединение часто выполняется интерпретатором Shell. Например,

ls | move

направляет стандартный выход от утилиты ls через канал на стандартный вход утилиты more.

Если вы хотите Используйте
Создать канал из интерпретатора Shell символ канала ("|")
Создать канал из программы функции Си pipe() или popen()

На рабочих станциях, не имеющих дисков, можно вместо Администратора файловой системы запускать Администратор программных каналов в том случае, если требуется использование только каналов. Администратор каналов оптимизирует канальный ввод/вывод и может обеспечить более эффективное использование каналов, чем Администратор файловой системы.



Содержание раздела