ЛР.2. Posix-программирование, fork и exec.
Задание
Используя алгоритм быстрой сортировки, разработать программу, которая
сортирует содержимое переданного ей бинарного файла. Вторым и третьим
параметром могут передаваться номер начального и конечного байта в сортируемом
файле (их отсутствие означает требование отсортировать весь файл).
На первом шаге сортировки содержимое файла (части файла) разбивается на два отрезка
в соответствии с правилами быстрой сортировки. Вторая, рекурсивная часть, реализуется
одним из следующих методов, по выбору студента:
- для каждого из двух отрезков последовательно вызывается таже-самая программа с использованием fork и exec.
- для каждого из двух отрезков осуществляется параллельный вызов fork.
- для одного из двух отрезков осуществляется параллельный вызов fork, второй отрезок сортируется в родительском процессе.
Ни в какой момент времени, количество дочерних процессов
не должно превышать заранее заданного константного значения. При достижении указанного предела очередной процесс
вместо порождения дочерних должен произвести сортировку своей части файла самостоятельно.