Межпроцессное взаимодействие в ОС Linux

Лабораторная работа по курсу "Операционные системы"

Межпроцессное взаимодействие в ОС Linux

  I. Каналы (unnamed pipes)  

Ls -l /home/student | sort

   

Ls -l /home/student | sort

execlp ("ls", "ls", "-l", "/home/student", 0); несколькими системными вызовами write(), которые запишут в канал… Примечание. Для этой модификации оператор dup2(fd[1],1); НЕ НУЖЕН, его следует убрать.

Mkfifo fifo1

Убедитесь, что в текущем каталоге появился именованный канал. Выпишите в отчет его параметры. Затем выполните команду

Cat < fifo1

Запустите второй экземпляр оболочки. Перейдите во втором окне в каталог данной лабораторной работы. Расположите оба окна так, чтобы они были видны одновременно. Во втором окне введите команду

Cat > fifo1

В программе именованный канал создается при помощи системного вызова mknod() или библиотечной функции mkfifo(), которая, в свою очередь, использует… В этой части лабораторной работы необходимо создать и проверить несколько… Задание3.

Порядок выполнения лабораторной работы

1. Выполните задания 1 - 3.

2. Занесите в отчет результаты выполнения заданий с ответами на все заданные в них вопросы.

 

Требования

1. При подготовке к лабораторной работе (дома) занесите в отчет тексты программ из заданий 1 (pipework1, pipework2, pipework3, pipework4) и 3 (server2, client2, server3, client3). Тексты программ должны быть прокомментированы.

2. Студент должен знать ответы на следующие вопросы:

 

Вопросы к части I

2. Объясните параметры системного вызова pipe(). 3. Что такое входной и выходной конец канала? 4. Как в программе соединить концы созданного канала со стандартным входным и выходным устройствами?

Вопросы к части II

2. Как создать в программе именованный канал? 3. Каково действие режима O_NONBLOCK, указываемого при открытии именованного… 4. Пусть некоторый процесс пытается писать в именованный канал, в то время как нет процесса, читающего из него. Что…

Источники информации

2. Митчел М., Оулдем Дж., Самьюэл А. Программирование для Linux. Профессиональный подход. - М.: Издательский дом "Вильямс", 2003. (Глава… 3. Конспект лекций.