Процессы в ОС Linux (II)

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

Процессы в ОС Linux (II)

Цель работы: знакомство с системными вызовами для управления процессами; исследование совместного доступа к файлам из разных процессов; изучение распределения виртуальной памяти процесса в ОС Linux.

 

I. Управление процессами

Завершение процесса

- системным вызовом exit; - возвратом из функции main. Процесс также может завершиться в ответ на сигнал. Сигналы - это механизм для взаимодействия процессов и управления…

Ожидание завершения процесса

Функция wait. pid_t wait (int *status) Блокирует вызывающий процесс до тех пор, пока не завершится один из его дочерних процессов. Если к моменту выдачи wait…

II. Совместный доступ к файлам

Родительский процесс открывает существующий текстовый файл 1 для чтения; затем создает дочерний процесс. После этого родительский процесс создает… Одновременно с этим дочерний процесс создает новый файл 3 для записи и… После завершения копирования оба процесса завершаются. Программа должна запускаться с тремя параметрами:

III. Распределение виртуальной памяти

  Задание 6.

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

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

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

 

Требования

1. При подготовке к лабораторной работе (дома) напишите в отчете тексты программ pr2, pr3,pr4 и pr5с комментариями.

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

Вопросы

2. Как в родительском процессе можно узнать о завершении дочернего процесса, не прерывая основной работы? 3. Каково назначение директивы #define в программе procmemory.c? 4. Каков смысл переменных etext, edata и end в программе procmenory.c? Почему эти переменные объявлены с атрибутом…