Страницу Назад
Поискать другие аналоги этой работы

600

Контрольная работа по дисциплине: Операционные системы. Вариант №1

ID: 231644
Дата закачки: 19 Декабря 2022
Продавец: IT-STUDHELP (Напишите, если есть вопросы)
    Посмотреть другие работы этого продавца

Тип работы: Работа Контрольная
Форматы файлов: Microsoft Word
Сдано в учебном заведении: СибГУТИ

Описание:
Контрольная работа
По дисциплине: Операционные системы

Вариант: 1

Задания:!!!!!!!!
!!!1. Два потока: первый читает информацию из файла (например, стихи или текст про-граммы) в буфер, второй эту информацию из буфера выдаёт на экран. При заполне-нии окна вывода до конца его содержимое не должно обновляться полностью – вы-вод новой информации должен осуществляться в последнюю строку, а все осталь-ные строки смещаться вверх (по материалам лаб. работы №3). Имя читаемого файла задавать как параметр командной строки. После окончания файла он начинает счи-тываться заново.

!!!2. Музыкальное сопровождение – как минимум несколько нот различной длительно-сти, образующие мелодию. Во включённом состоянии мелодия должна играть в фо-новом режиме (по материалам лаб. работы №2).

!!!3. Два потока: один выполняет поиск всех последовательных простых чисел и зано-сит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. работы №3).

!!!5. Вывод заголовка работы (фамилия и имя автора и название работы) в виде “бегу-щей строки”. Место вывода (верхняя или нижняя строка экрана) задавать парамет-ром командной строки.

------------------------------------------------------------------------------

Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Лю-бой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по материалам лаб. работы №3.
Те потоки, которые выводят информацию на экран, должны использовать для этого каждый свое отдельное окно, обрамленное рамкой – экран визуально делится на не-сколько окон, в каждом из которых отображается один процесс.
Дополнительное информационное окно должно содержать описание управляющих клавиш и краткое сообщение о тех действиях, которые выполняются в программе: номер потока, его статус в текущий момент времени (активен, приостановлен, ожи-дает), другую информацию (указание величины выделенного потоку кванта време-ни, процент заполненности буфера и т.п.) в зависимости от конкретного потока.
Программа должна работать устойчиво, без “зависаний” и непредвиденных зритель-ных эффектов. В случае необходимости указания параметров при запуске програм-мы необходимо предусмотреть и обработать все возможные ошибки (с выводом диа-гностики на экран).
Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя пре-рывания таймера, случайным образом определяет очередной активный поток и вы-деляет ему кванты времени (возможно, в рамках большего кванта, выделенного все-му процессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть воз-можность её изменения во время работы путем нажатия некоторых ключевых кла-виш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).
Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “при-остановлен”. В процессе работы может возникнуть, например, следующая ситуация. Поток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и перейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, кото-рый освободит место в буфере для помещения новой информации. В случае при-остановки производителя возникнет аналогичная ситуация, только с пустым буфе-ром. Приостановка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.
Задачи 2, 4, 5, 7 должны выполняться равномерно, независимо от степени загрузки системы. Для этого каждой из них необходимо получать управление через фиксиро-ванное количество “тиков” системного таймера, во время которого они выполнят какое-то свое элементарное действие (“бегущая строка” или “летающий объект” сместится на одну позицию, сменится нота в музыке…). При такой реализации ско-рость каждого потока будет определяться количеством “тиков” таймера между его запусками. Для уменьшения скорости такого потока достаточно после нажатия клю-чевой клавиши предоставлять ему управление реже, через большее число “тиков”, соответственно для ускорения такого потока – опять же после нажатия ключевой клавиши – ему предоставляется управление чаще, в пределе – на каждом “тике”. Так, “бегущая строка” должна двигаться равномерно с постоянной скоростью (если она не приостановлена ключевой клавишей) независимо от количества активных про-цессов в системе, музыка – тоже играть равномерно… Потоки этого класса задач мо-гут иметь два статуса: “активен” и “приостановлен”.

=============================================


Комментарии: Проверил(а): Бах Ольга Анатольевна
Оценка: Отлично
Дата оценки: 19.12.2022г.

Помогу с вашим вариантом, другой дисциплиной, онлайн-тестом, либо сессией под ключ.
E-mail: sneroy20@gmail.com
E-mail: ego178@mail.ru


Размер файла: 86,6 Кбайт
Фаил: Упакованные файлы (.rar)
-------------------
Обратите внимание, что преподаватели часто переставляют варианты и меняют исходные данные!
Если вы хотите, чтобы работа точно соответствовала, смотрите исходные данные. Если их нет, обратитесь к продавцу или к нам в тех. поддержку.
Имейте ввиду, что согласно гарантии возврата средств, мы не возвращаем деньги если вариант окажется не тот.
-------------------

   Скачать

   Добавить в корзину


        Коментариев: 0


Не можешь найти то что нужно? Мы можем помочь сделать! 

От 350 руб. за реферат, низкие цены. Просто заполни форму и всё.

Спеши, предложение ограничено !



Что бы написать комментарий, вам надо войти в аккаунт, либо зарегистрироваться.

Страницу Назад

  Cодержание / Операционные системы / Контрольная работа по дисциплине: Операционные системы. Вариант №1
Вход в аккаунт:
Войти

Забыли ваш пароль?

Вы еще не зарегистрированы?

Создать новый Аккаунт


Способы оплаты:
UnionPay СБР Ю-Money qiwi Payeer Крипто-валюты Крипто-валюты


И еще более 50 способов оплаты...
Гарантии возврата денег

Как скачать и покупать?

Как скачивать и покупать в картинках


Сайт помощи студентам, без посредников!