Перейти к основному содержанию
EDU-MMCS
  • Русский ‎(ru)‎
    Русский ‎(ru)‎ English ‎(en)‎
Вы используете гостевой доступ (Вход)

Архитектура компьютера и операционные системы

  1. В начало
  2. Курсы
  3. Осенний семестр
  4. Прикладная математика и информатика
  5. AM CA&OS
  6. Материалы лабораторных работ
  7. Лаб. Занятие 13. Обязательные задания.

Лаб. Занятие 13. Обязательные задания.

Требуемые условия завершения
Открыто с: понедельник, 2 декабря 2024, 08:00
Срок сдачи: пятница, 13 декабря 2024, 17:25

Лаб. Занятие 13. Обязательные задания для решения в классе [4 балла]

Задание 13.1

Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом N целых чисел в диапазоне от M до K и передает их серверу через именованный канал. Сервер принимает числа и подсчитывает две суммы - отдельно для четных чисел и для нечетных. Получив все переданные числа, сервер выводит полученные значения сумм на stdout. 

Задание 13.2

Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом целое число в диапазоне от M до K и передает его серверу через именованный канал. Сервер принимает число и подсчитывает количество  четных и нечетных цифр. Получив все переданные числа, сервер выводит посчитанные количества  на stdout. 

Задание 13.3

Напишите программу игры в "пинг-понг" двух процессов через два именованных канала. Первый процесс посылает по каналу fifo1 второму 1, второй первому по каналу fifo2 – 2, первый второму – 3, второй первому – 4 и т. д. Каждый из процессов выводит на стандартный поток вывода полученное число. Игра продолжается, пока  в терминале  не будет указана команда kill -9 для соответствующих процессов. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода числа в stdout. 

Задание 13.4

    Напишите программу игры в "пинг-понг" двух процессов через один именованный канал. Первый процесс посылает по каналу fifo1 второму 1, второй первому по этому же каналу  – 2, первый второму – 3, второй первому – 4 и т. д. Каждый из процессов выводит на стандартный поток вывода полученное число. Игра продолжается, пока  в терминале  не будет указана команда kill -9 для соответствующих процессов. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода числа в stdout. 

    Задание 13.5

    Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом N целых чисел в диапазоне от M до K и передает их серверу через именованный канал. Сервер принимает числа, возводит их в квадрат и выводит в стандартный поток вывода.  

    Задание 13.6

    Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом N целых чисел в диапазоне от M до K и передает их серверу через именованный канал. Сервер принимает числа и подсчитывает количество чисел, лежащих в диапазоне [M, (K-M)/2-1] и в диапазоне [(K-M)/2, K]. Получив все переданные числа, сервер выводит посчитанные количества  на stdout.  

    Задание 13.7

    Напишите программу взаимодействия  двух процессов через один именованный канал. Первый процесс в бесконечном цикле посылает по каналу fifo1 второму процессу сообщение длины N, второй процесс получает исходное сообщение и  по этому же каналу  возвращает первому процессу "зашифрованное" сообщение. Алгоритм "шифрования" может быть любым.  Каждый из процессов выводит на стандартный поток вывода полученное сообщение. Оба процесса работают бесконечно, пока  в терминале  не будет указана команда kill -9 для них. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода сообщения в stdout. 

    Задание 13.8

    Напишите программу взаимодействия  двух процессов через один именованный канал. Первый процесс в бесконечном цикле посылает по каналу fifo1 второму процессу сгенерированные сообщения длины N, второй процесс получает исходное сообщение и выдает его в стандартный поток вывода.   Оба процесса работают бесконечно, пока  в терминале  не будет указана команда kill -9 для них.  Рекомендация - поставьте небольшую задержку после вывода сообщения в stdout. 

    Задание 13.9

    Напишите программу взаимодействия двух процессов через два именованных канала. Первый процесс посылает по каналу fifo1 второму сгенерированное сообщение длины N символов, второй процесс первому по каналу fifo2 – отправляет инвертированное полученное сообщение, т. е. символы сообщения идут в противоположном порядке от последнего к первому. Каждый из процессов выводит на стандартный поток вывода полученное сообщение. Взаимодействие продолжается, пока  в терминале  не будет указана команда kill -9 для соответствующих процессов. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода числа в stdout. 

    Задание 13.a  

    Напишите программу взаимодействия  двух процессов через один именованный канал. Первый процесс в бесконечном цикле посылает по каналу fifo1 второму процессу сгенерированное число, второй процесс получает исходное сообщение и  по этому же каналу  возвращает первому процессу число, противоположное по знаку.  Каждый из процессов выводит на стандартный поток вывода полученное сообщение. Оба процесса работают бесконечно, пока  в терминале  не будет указана команда kill -9 для них. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода сообщения в stdout. 

    Задание 13.b

    Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом N целых чисел в диапазоне от M до K и передает их серверу через именованный канал. Сервер принимает числа и подсчитывает сумму чисел, лежащих в диапазоне [M, (K-M)/2-1] и в диапазоне [(K-M)/2, K]. Получив все переданные числа, сервер выводит посчитанные суммы на stdout.  

    Задание 13.c  

    Напишите программу взаимодействия  двух процессов через один именованный канал. Первый процесс в бесконечном цикле посылает по каналу fifo1 второму процессу сгенерированное число, второй процесс получает исходное сообщение и  по этому же каналу  возвращает первому процессу целую часть от деления на 2 полученного числа.  Каждый из процессов выводит на стандартный поток вывода полученное сообщение. Оба процесса работают бесконечно, пока  в терминале  не будет указана команда kill -9 для них. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода сообщения в stdout. 

    Задание 13.d

    Напишите программы для реализации следующей задачи. Программа клиент генерирует случайным образом N целых чисел в диапазоне от M до K и передает их серверу через именованный канал. Сервер принимает числа и вычисляет среднее арифметическое чисел. Получив все переданные числа, сервер выводит посчитанное значение на stdout.  

    Задание 13.e

    Напишите программу взаимодействия  двух процессов через один именованный канал. Первый процесс  случайным образом генерирует число, далее в бесконечном цикле посылает по каналу fifo1 второму процессу сумму полученную из "своего" числа и числа пришедшего по каналу, второй процесс получает исходное сообщение, суммирует со своим случайным числом и по этому же каналу  возвращает первому процессу сумму.  Каждый из процессов выводит на стандартный поток вывода полученное сообщение. Оба процесса работают бесконечно, пока  в терминале  не будет указана команда kill -9 для них. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода сообщения в stdout. 

    Задание 13.f  

    Напишите программу "общения" двух процессов через два именованных канала. Первый процесс посылает по каналу fifo1 второму некоторое сообщение_1, второй первому по каналу fifo2 – сообщение_2 , первый второму – сообщение_2, второй первому – сообщение_1 и т. д. Каждый из процессов выводит на стандартный поток вывода полученное сообщение. "Общение" продолжается, пока  в терминале  не будет указана команда kill -9 для соответствующих процессов. Обратите внимание на наличие критической секции. Рекомендация - поставьте небольшую задержку после вывода числа в stdout. 


    ◄ Лаб. Занятие 12. Обязательные задания.
    Лаб. Занятие 14. Обязательные задания. ►
    Пропустить Навигация
    Навигация
    • В начало

      • Страницы сайта

        • Мои курсы

        • Теги

      • Мои курсы

      • Курсы

        • Осенний семестр

          • Прикладная математика и информатика

            • P2K

            • GraphAlgo(BI)

            • ИИ (4 курс)

            • ЧМ-2022 (ПМИ-3 4 и 5)

            • GrAlg

            • МО (бак)

            • ANSYS

            • Численные методы -1,3

            • МСС 2022

            • УМФ III (1-2)

            • VPD

            • AM CA&OS

              • Общая информация

              • Материалы лекций

              • Материалы лабораторных работ

                • ЗаданиеЛаб. Занятие 1. Подготовка и обязательные задания....

                • ЗаданиеПодготовка к лаб.2. Массивы. Условные и безусловны...

                • ЗаданиеЛаб. Занятие 2. Обязательные задания.

                • ЗаданиеПодготовка к лаб.3. Интерфейс системных вызовов. П...

                • ЗаданиеЛаб. Занятие 3. Обязательные задания.

                • ЗаданиеПодготовка к лаб.4. Подпрограммы (продолжение)

                • ЗаданиеЛаб. Занятие 4. Обязательные задания

                • ЗаданиеПодготовка к лаб.5. Работа с файлами

                • ЗаданиеЛаб. Занятие 5. Обязательные задания

                • ЗаданиеПодготовка к лаб.6. Микропрограммирование

                • ФайлIJVM Assembly Language Specification

                • ФайлСправочник ассемблерных инструкций Java-машины

                • ЗаданиеЛаб. Занятие 6. Обязательные задания

                • ЗаданиеЛаб. Занятие 7. Обязательные задания

                • ЗаданиеПодготовка к лабораторной №8: утилиты POSIX

                • ЗаданиеЛаб. Занятие 8. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №9: написание сценариев

                • ЗаданиеЛаб. Занятие 9. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №10: создание процессов

                • ЗаданиеЛаб. Занятие 10. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №11: создание потоков

                • ЗаданиеЛаб. Занятие 11. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №12: разделяемая память

                • ЗаданиеЛаб. Занятие 12. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №13: работа с каналами

                • ЗаданиеЛаб. Занятие 13. Обязательные задания.

                • ЗаданиеПодготовка к лабораторной №14: синхронизация потоков

                • ЗаданиеЛаб. Занятие 14. Обязательные задания.

              • Тестирование

              • Контрольные работы

              • Доборы

              • Дистрибутивы и справочная информация

          • Фундаментальная информатика и ИТ

          • Математика, механика

          • Педагогическое образование

          • Магистратура

            • Разработка мобильных приложений и компьютерных игр

          • Аспирантура

          • Вечернее отделение

          • Другое

        • Весенний семестр

          • Прикладная математика и информатика

          • Фундаментальная информатика и ИТ

          • Математика, механика

          • Педагогическое образование

          • Магистратура

            • Разработка мобильных приложений и компьютерных игр

          • Аспирантура

          • Вечернее отделение

          • Другое

        • Воскресная компьютерная школа

          • Пользователь компьютера плюс

          • Пользователь прикладных программ

          • Программирование I ступень

          • Программирование II ступень

          • Программирование III ступень

          • Архив

        • Воскресная математическая школа

          • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2025

          • Олимпиадная математическая школа

          • Повышение квалификации

          • Доступная математика

          • Лаборатория математического онлайн-образования мех...

          • Осенняя универсиада

          • Научно-практическая конференция

          • ВМШ

            • ВМШ - 24

          • Летняя олимпиадная математическая школа РНОМЦ и ме...

        • Государственная итоговая аттестация

        • Дополнительное образование

        • Олимпиады

        • Видеолекции

        • Разное

        • Архив курсов

        • Заочная школа мехмата ЮФУ

    Служба поддержки сайта
    Вы используете гостевой доступ (Вход)
    AM CA&OS
    • Русский ‎(ru)‎
      • Русский ‎(ru)‎
      • English ‎(en)‎
    Сводка хранения данных
    Скачать мобильное приложение Яндекс.Метрика