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

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

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

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

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

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

Задание 12.1

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


Задание 12.2

Реализовать программу, которая дожидается запуска заданного количества экземпляров своего процесса, которым назначаются последовательные номера. Дальше первый процесс генерирует случайное число, которое передаёт второму процессу. Второй процесс увеличивает число на 1 и передаёт дальше. Последний процесс после увеличения числа передаёт его первому процессу, который после его увеличения выводит на печать. Передачу значений можно организовать при помощи массива размером, равным количеству процессов.


Задание 12.3

Реализовать две программы, одна из которых генерирует последовательность целых чисел:

xi = [A sin (ω i)]        ∀ i = 0, 1, ..., T

для заданных A, ω и T. (Здесь квадратные скобки обозначают операцию округления). После генерирования очередной порции данных программа записывает их в буфер ограниченного размера и дожидается, пока другая программа не прочитает их оттуда. Вторая программа после получения очередной порции данных должна выводить их на печать.

 

Задание 12.4

Реализовать две программы, первая из которых, будучи запущенной в нескольких экземплярах процесса, получает свой порядковый номер и записывает его заданное количество раз в буфер ограниченного размера. Другая программа должна  забрать эти данные из буфера и вывести на печать.


Задание 12.5

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


Задание 12.6

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


Задание 12.7

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


Задание 12.8

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


Задание 12.9

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


Задание 12.a

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


Задание 12.b

Напишите программы для реализации следующей задачи. Программа клиент записывает в разделяемую память последовательность символов. Сервер принимает эту последовательность и заменяет все строчные латинские символы на заглавные. После чего выводит последовательность на stdout.


Задание 12.c

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


Задание 12.d

Напишите программы для реализации следующей задачи. Программа клиент записывает в разделяемую память последовательность символов. Сервер принимает эту последовательность производит "циклический сдвиг" содержимого на заданное количество байт влево: сначала записать содержимое последовательности с заданной позиции до конца, затем дописать начало последовательности до заданной позиции. 



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

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

      • Мои курсы

      • Теги

    • Мои курсы

    • Курсы

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

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

          • 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)‎
Сводка хранения данных
Скачать мобильное приложение Яндекс.Метрика