Лабораторная работа №2
Тема: Взаимодействие процессов в ОС Linux
Варианты
1. Написать программу, которая:
-
создаёт pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <ФИО>,
-
процесс-потомок принимает строку и печатает её.
2. Написать программу, которая:
-
создаёт pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <имя программы.с>, то есть, имя файла с исходным текстом некоторой программы,
-
процесс-потомок принимает строку, открывает файл и выводит его на экран.
3. Написать программу, которая:
-
создаёт pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <имя программы.txt>,
-
процесс-потомок принимает строку, создаёт файл с именем <имя программы>.txt и пишет в него исходный текст программы; в конце, с новой строки - «Автор — ФИО».
4. Написать программу, которая:
-
создаёт два pipe для двусторонней связи,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процессы передают друг другу сообщения «ФИО: свой_PID»,
-
процессы принимают сообщения и печатают их.
5. Написать программу, которая:
-
определяет размер pipe (дистрибутив AltLinux 4.0 или 4.1),
-
печатает сообщение о размере pipe.
6. Написать программу, которая:
-
создаёт именованный pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <ФИО>,
-
процесс-потомок принимает строку и печатает её.
7. Написать программу, которая:
-
создаёт именованный pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <имя программы.с>, то есть, имя файла с исходным текстом некоторой программы,
-
процесс-потомок принимает строку, открывает файл и выводит его на экран.
8. Написать программу, которая:
-
создаёт именованный pipe,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процесс-родитель передаёт в процесс-потомок строку <имя программы.txt>,
-
процесс-потомок принимает строку, создаёт файл с именем <имя программы>.txt и пишет в него исходный текст программы; в конце, с новой строки - «Автор — ФИО».
9. Написать программу, которая:
-
создаёт именованный pipe для двусторонней связи,
-
порождает подпроцесс,
-
процессы идентифицируют себя, печатая сообщения и свой PID,
-
процессы передают друг другу сообщения «ФИО: свой_PID»,
-
процессы принимают сообщения и печатают их.
10. Написать две программы, которые:
-
создают именованный pipe,
-
процессы идентифицируют себя, печатая сообщения (своё имя) и свой PID,
-
первый процесс передаёт во второй процесс строку <ФИО>,
-
второй процесс принимает строку и печатает её.
11. Написать две программы, которые:
-
создают именованный pipe,
-
процессы идентифицируют себя, печатая сообщения (своё имя) и свой PID,
-
первый процесс передаёт во второй процесс строку <имя_программы_первого_процесса.с>, то есть, имя файла с исходным текстом первой программы,
-
второй процесс принимает строку, открывает файл и выводит его на экран, указывая, что это исходник первой программы.
12. Написать две программы, которые:
-
создают именованный pipe,
-
процессы идентифицируют себя, печатая сообщения (своё имя) и свой PID,
-
первый процесс передаёт во второй процесс строку <имя программы.txt>,
-
второй процесс принимает строку, создаёт файл с именем <имя программы>.txt и пишет в него свой исходный текст; в конце, с новой строки - «Автор — ФИО».
13. Написать две программы, которые:
-
создают именованный pipe для двусторонней связи,
-
процессы идентифицируют себя, печатая сообщения (своё имя) и свой PID,
-
процессы передают друг другу сообщения «ФИО: свой_PID»,
-
процессы принимают сообщения и печатают их.