Задание 6 (межпроцессное взаимодействие)

Указание

  • Попробовать учесть возможность обслуживания сервером нескольких клиентов.

  1. Приложение-клиент запрашивает у пользователя два целых числа n и k и передаёт их приложению-серверу, которое вычисляет значение биномиального коэффициента Cnk. Далее сервер передаёт клиенту полученное значение, которое тот печатает в консоли. Реализовать взаимодействие клиента с сервером при помощи именованных каналов POSIX.

  2. Приложение-клиент запрашивает у пользователя два целых числа n и k и передаёт их приложению-серверу, которое вычисляет значение биномиального коэффициента Cnk. Далее сервер передаёт клиенту полученное значение, которое тот печатает в консоли. Реализовать взаимодействие клиента с сервером при помощи разделяемой памяти и барьеров POSIX.

  3. Приложение-клиент передаёт серверу целое число, которое сохраняется им в очереди фиксированного размера (если очередь переполнена, клиент ждёт её освобождения). Приложение-сервер раз в минуту печатает все полученные им числа после предыдущей печати. Реализовать взаимодействие клиента с сервером при помощи разделяемой памяти, мьютекса и условных переменных POSIX.

  4. Приложение-клиент передаёт серверу целое число, которое сохраняется им в очереди фиксированного размера (если очередь переполнена, клиент ждёт её освобождения). Приложение-сервер раз в минуту печатает все полученные им числа после предыдущей печати. Реализовать взаимодействие клиента с сервером при помощи разделяемой памяти, мьютекса и условных переменных Windows API.

  5. Родительский процесс вычисляет заданное количество первых чисел последовательности Фибоначчи и передаёт их дочернему процессу. Дочерний процесс выводит числа на печать и находит их сумму. Реализовать взаимодействие родительского и дочернего процессов ри помощи неименованных каналов Windows API.

  6. Родительский процесс вычисляет заданное количество первых чисел последовательности Фибоначчи и передаёт их дочернему процессу. Дочерний процесс выводит числа на печать и находит их сумму. Реализовать взаимодействие родительского и дочернего процессов ри помощи неименованных каналов POSIX.