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

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

  1. В начало
  2. Курсы
  3. Осенний семестр
  4. Фундаментальная информатика и ИТ
  5. CS221 CA&OS
  6. Материалы лабораторных работ
  7. Лабораторная №11: Разделяемая память

Лабораторная №11: Разделяемая память

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

Лабораторная №11: разделяемая память  [5 баллов]

  1. [task-1client.c, task-1server.c] [2,5 балла] Напишите программы для реализации следующей задачи. Программа клиент записывает в разделяемую память последовательность символов. Сервер принимает эту последовательность и находит в ней наиболее длинную последовательность из подряд идущих одинаковых символов. После чего выводит индекс её начала, длину и символ на stdout.
  2. [task-2client.c, task-2server.c] [2,5 балла] Реализовать программу, которая дожидается запуска заданного количества экземпляров другого процесса, которым назначаются последовательные номера. Дальше первая программа(первый процесс) генерирует массив случайных чисел, которые передаёт следующему процессу. Второй процесс увеличивает каждое получаемое число на 1 и передаёт дальше. Последний процесс после увеличения числа выводит его на печать. Передачу значений можно организовать при помощи массива, передаваемого через разделяемую память. Количество процессов и размер массива передаются через командную строку.
    В разделяемую память удобно кроме самого массива записать еще дополнительную информацию, по которой первая программа будет определять сколько процессов создалось, а каждый последующий будет знать когда ему начинать работать. Каждый процесс нужно запускать в отдельном терминале.

Дополнительное задание [1 балл]

Реализовать второе задания используя WinAPI.

◄ Лабораторная №10. Многопоточность
Лабораторная №12. Работа с каналами ►
Пропустить Навигация
Навигация
  • В начало

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

      • Мои курсы

      • Теги

    • Мои курсы

    • Курсы

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

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

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

          • Probability Theory and Mathematical Statistics

          • Научные Вычислительные Пакеты

          • DataSc101

          • NLP (7 семестр)

          • Compiler Development

          • CMVSM

          • АЗПК

          • Frontend

          • ТеорЯП

          • Ruby Eng

          • EngCA&OS

          • CS221 CA&OS

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

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

              • СтраницаПодготовка №1. Установка ПО.

              • ЗаданиеЛабораторная №1. Введение. Арифметика. Циклы LOOP ...

              • СтраницаПодготовка №2. Массивы. Условные и безусловные пер...

              • ЗаданиеЛабораторная №2. Массивы. Условные и безусловные п...

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

              • ЗаданиеЛабораторная №3. Интерфейс системных вызовов. Прос...

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

              • ЗаданиеЛабораторная №4. Подпрограммы.

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

              • ЗаданиеЛабораторная №5. Работа с файлами

              • СтраницаПодготовка №6. Микропрограммирование

              • ФайлIJVM Assembly Language Specification

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

              • ЗаданиеЛабораторная №6. Микропрограммирование

              • ЗаданиеЛабораторная №7. Микропрограммирование (продолжение)

              • СтраницаПодготовка №8. Основы работы в UNIX-подобных ОС

              • ЗаданиеЛабораторная №8. Утилиты POSIX

              • СтраницаПодготовка №9. Написание сценариев

              • ЗаданиеЛабораторная №9. Написание сценариев

              • СтраницаПодготовка №10. Многопоточность

              • ЗаданиеЛабораторная №10. Многопоточность

              • СтраницаПодготовка №11. Разделяемая память

              • ЗаданиеЛабораторная №11: Разделяемая память

              • СтраницаПодготовка №12. Работа с каналами

              • ЗаданиеЛабораторная №12. Работа с каналами

              • ЗаданиеБонусные задания

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

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

            • Доборы

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

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

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

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

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

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

        • Другое

        • Экзамен ИКТ

        • Тест-ИИ

        • Информатика-Осень-ПМИ-2

        • Информатика-осень-ПМИ-1

        • ИММвс

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

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

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

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

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

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

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

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

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

        • Другое

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

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

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

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

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

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

        • Архив

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

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

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

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

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

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

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

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

        • ВМШ

          • ВМШ -2025

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

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

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

      • Олимпиады

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

      • Разное

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

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

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