Найдите исполнителя для вашего проекта прямо сейчас!
Разместите заказ на фриланс-бирже и предложения поступят уже через несколько минут.

Необходимо сделать 3 лабораторные работы. Текст задания ниже, методички - в прикрепленных файлах. Везде по 2 задания, но нужно делать ТОЛЬКО задания под номером 2.

Приветствуется максимально простой и понятный код.

1) Напишите три программы, выполняющиеся параллельно и читающие один и тот же файл. Программа, которая хочет прочитать файл, должна передать другим программам запрос на разрешение операции и ожидать их ответа. Эти запросы программы передают через одну очередь сообщений. В запросе указываются: номер программы, которой посылается запрос, идентификатор локальной очереди, куда надо передать ответ и время посылки запроса. Начать выполнять операцию чтения файла программе разрешается только при условии получения ответов от двух других программ. Каждая программа перед отображением файла на экране должна вывести следующую информацию: номер программы и времена ответов, полученных от других программ.Программа, которая получила запрос от другой программы, должна реагировать следующим образом:

  • если программа прочитала файл, то сразу передается ответ, он должен содержать номер отвечающей программы и время ответа;
  • если файл не читался, то ответ передается только при условии, что время посылки запроса в сообщении меньше, чем время запроса на чтение у данной программы;Запросы, на которые ответы не были переданы, должны быть запомнены и после чтения файла обслужены.(лаб 8, задание 2. Задание 1 делать НЕ НУЖНО.)

    2) Напишите две программы, которые работают параллельно и обмениваются массивом целых чисел через две общие разделяемые области. Через первую область первая программа передает массив второй программе. Через вторую область вторая программа возвращает первой программе массив, каждый элемент которого уменьшен на 1. Обе программы должна вывести получаемую последовательность чисел. Синхронизация работы программ должна осуществляться с помощью общих переменных, размещенных в разделяемой памяти.(лаб 9, задание 2. Задание 1 делать НЕ НУЖНО).

    3) Напишите две программы, экземпляры которых запускаются параллельно и с разной частотой обращаются к общему файлу. Каждый процесс из первой группы (Писатель) пополняет файл определенной строкой символов и выводит ее на экран вместе с именем программы. Процессы второй группы (Читатели) считывают строки из файла и выводят их на экран при условии отсутствия ожидающих запись Писателей. Пока один Писатель записывает строку в файл, другим Писателям и всем Читателям запрещено обращение к файлу. Если Писатели не пишут в файл, то разрешается одновременная работа всех Читателей.Писатели должны ожидать, пока не закончат работу запущенные Читатели. Писатель заканчивает работу после того как выполнит N-кратную запись строки в файл. Работа Читателя завершается, когда он прочитал весь текущий файл. Синхронизация процессов должна выполняться с помощью семафоров.(лаб 10, задание 2. Задание 1 делать НЕ НУЖНО.)

2 года назад
guest_16715379787895
2 года в сервисе
Был
2 года назад

Заявки фрилансеров

Александр
 
23 года
2 года в сервисе
Был
2 года назад
2 года назад
Павел
 
23 года
2 года в сервисе
Был
2 года назад
2 года назад
Арсланбек
 
23 года
3 года в сервисе
Был
2 года назад
2 года назад
Марк
 
30 лет
2 года в сервисе
Был
год назад
2 года назад
Олександр
 
35 лет
2 года в сервисе
Был
2 года назад
2 года назад
  • Похожие заказы

  • Требуется разработать программное решение для Windows, позволяющее работать с несколькими аккаунтами VK через отдельные прокси. Программа должна отправлять оповещения по API из VK и дублировать их в Telegram. Укажите стек технологий и готовые решения, которые планируете использовать. Техническое задание будет предоставлено потенциальным исполнителям.

    Закрыт
    2 года назад
  • $160

    Задача заключается в реализации функции assign в C++. Необходимо строго следовать спецификации типов ключа и значения, обеспечить корректность работы interval_map и учитывать валидность итераторов. Оптимизация времени выполнения является критически важной, поэтому избегайте ненужных операций с K и V. При реализации учитывайте каноничность представления m_map.

    Закрыт
    2 года назад
  • Разработать bash скрипт, который позволяет пользователю выбрать способ заполнения массива: с клавиатуры, из программы или из файла. Скрипт должен вычислять произведение отрицательных элементов массива и сумму положительных элементов, расположенных до максимального элемента. Укажите, как пользователь будет вводить данные для решения задач.

    Прикладное ПО1 исполнитель
    Завершен
    2 года назад
  • Необходимо доработать Telegram-бота с помощью telebot на Python. Требуется создать инлайн меню с 4 кнопками, добавить возможность пользователю оставить отзыв и реализовать поиск по введенным словам с предложением текста и кнопок. Важно учитывать группы слов для обработки запросов. Возможны альтернативные решения с согласия заказчика.

    Закрыт
    2 года назад
  • Требуется помощь в настройке формул в Excel. В таблице не все формулы работают корректно, нужна донастройка для правильного функционирования. Ищем специалиста для решения проблемы.

    Закрыт
    2 года назад
  • Требуется решить кейс по численным методам в области фотоники, связанный с анализом деформации зеркала. Дедлайн выполнения задачи — до 10:00 по московскому времени завтра. Инструкция по выполнению задачи прилагается.

    Прикладное ПОнет заявок
    Закрыт
    2 года назад
  • Необходимо реализовать многопоточный доступ к базе данных для нескольких скриптов на Python, чтобы они могли одновременно извлекать уникальные номера без конфликтов. Текущая реализация на SQLite с блокировками не подходит. Ищутся конкретные решения, исключая предложения от посредников.

    Закрыт
    2 года назад
  • $100

    Требуется разработать программу для системы бронирования на языке C, используя linked list и описанные структуры. Задание предназначено для лабораторной работы в университете. Дедлайн – 19 декабря, оплата около 100 долларов.

    Прикладное ПО1 исполнитель
    Закрыт
    2 года назад
  • В проект по созданию социальной сети требуется Vue.js разработчик (vue3). Имеется шаблонная кодовая база и API на 90%. Основные технологии: Vue3, Node.js + Express, JWT авторизация. Укажите в заявке свои контакты и почасовую ставку.

    Закрыт
    2 года назад
  • $2500

    Ищется фрилансер для переноса визовых данных в Excel. Задача включает создание листа для расчетов. Выполнение работы в срок обеспечит дальнейшее сотрудничество.

    Закрыт
    2 года назад