Курсовая работа по дисциплине "Операционные системы". Вариант 2

Цена:
120 руб.

Состав работы

material.view.file_icon
material.view.file_icon
material.view.file_icon 1.txt
material.view.file_icon 2.txt
material.view.file_icon 3.txt
material.view.file_icon 4.txt
material.view.file_icon 920999 замечания.doc
material.view.file_icon KURSRAB.EXE
material.view.file_icon KURSRAB.PAS
material.view.file_icon RUN.BAT
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
  • Программа для просмотра текстовых файлов
  • Microsoft Word

Описание

Постановка задачи

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

ЗАДАЧИ:
1. Два потока: первый читает информацию из файла (например, стихи или текст программы) в буфер, второй эту информацию из буфера выдаёт на экран. При заполнении окна вывода до конца его содержимое не должно обновляться полностью – вывод новой информации должен осуществляться в последнюю строку, а все остальные строки смещаться вверх (по материалам лаб. работы №4). Имя читаемого файла задавать как параметр командной строки. После окончания файла он начинает считываться заново.
2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включённом состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы №2).
5. Вывод заголовка работы (фамилия и имя автора, и название работы) в виде “бегущей строки” (по материалам лаб. работы №5). Место вывода (верхняя или нижняя строка экрана) задавать параметром командной строки.
7. Движущийся объект (в простейшем случае, например, летающий и отражающийся от границ окна шарик). Движение может осуществляться свободно или при управлении с клавиатуры (по материалам лаб. работы №5).

Выбор номера варианта курсовой работы осуществляется по двум последним цифрам пароля.


2. Описание входных данных программы и её результатов

В качестве параметров командной строки в программу передаётся два параметра:
a) положение вывода заголовка работы (бегущей строки) – (U – вверху (Up), D – внизу(Down));
b) имя файла, из которого будет считываться текст (целое число от 1 до 4). Расширение «.txt» добавляется автоматически.

При попытке запуска программы без параметров выводится сообщение об отсутствии параметров.
При некорректных параметрах выводится сообщение с подсказкой о возможных параметрах.

Пример запуска программы:
KursRab.exe u 2


3. Описание основных алгоритмов, используемых в программе.

Параллельная работа потоков реализована с использованием прерываний системного таймера. Потоки производитель и потребитель работают с общим буфером FIFO типа. Все операции с буфером реализованы с помощью отдельных подпрограмм. Потоку потребителю и производителю программа выделяет определённый интервал времени на работу (также есть возможность увеличить время работы потоков с помощью специальных клавиш). Поток прерывает свою работу в трёх случаях:
1) Вышло время, отведённое на работу потока.
2) Невозможно произвести операцию с буфером (для производителя это в случае, когда буфер заполнен, для потребителя – когда буфер пуст).
3) Поток остановлен нажатием специальной клавиши.
После операций добавления / извлечения элемента в / из буфер(а) производится обновление показания уровня заполненности буфера, отображаемого на экране.
Звуковое сопровождение, бегущая строка и движущийся объект в виде летающей решетки реализованы как фоновые процессы. Для каждого такого процесса есть интервал времени (задан константами MusicTR, ObjTR и выражением, вычисляемым с использованием переменной LineSpeed для соответствующих процессов), через который эти процессы производят какое-либо предусмотренное действие (сменяется частота звука, сдвигается строка, сдвигается «летающий объект»). Изменить состояние этих процессов можно с помощью специальных клавиш.
Вся информация обо всех процессах и потоках, а также клавиши управления отображаются на экране.

Дополнительная информация

Сдано 2012г.
КУРСОВАЯ РАБОТА. По дисциплине: Операционные системы.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
User fominovich : 19 июня 2016
КУРСОВАЯ РАБОТА по дисциплине «Операционные системы»
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей
User mike_vorn : 30 сентября 2014
750 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №7.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1). Окончание работы программы должно происходить при приостановке всех потоко
User holm4enko87 : 7 января 2025
350 руб.
promo
КУРСОВАЯ РАБОТА по дисциплине «Операционные системы». Вариант №09
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1). Окончание работы программы должно происходить при приостановке всех потоко
User holm4enko87 : 9 ноября 2024
170 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №11
Вариант №11 Задание. Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1). Окончание работы программы должно происходить при пр
User IT-STUDHELP : 10 ноября 2023
600 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №11 promo
Курсовая работа по дисциплине: Операционные системы. Вариант №4
Вариант №4 Задание. Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1). Окончание работы программы должно происходить при при
User IT-STUDHELP : 10 ноября 2023
600 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №4 promo
Курсовая работа по дисциплине: Операционные системы вариант 18
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или не-скольких потоков. Любой из потоков, работающих в составе этих процес-сов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажа-тия клавиш обрабатывать с помощью прерывания от клавиатуры (по ма-териалам лаб. работы №1). Окончание работы программы должно происходить при приостановке всех пот
User NecoArcFan : 20 июня 2023
30 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №16
Курсовая работа Вариант: 16 Задания: 2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включенном состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы №2). 5. Вывод заголовка работы (фамилия и имя автора и название работы) в виде “бегущей строки”. Место вывода (верхняя или нижняя строка экрана) задавать параметром командной строки. 6. Два потока: один генерирует случайные числа и выбирает в буфер те, которые являются
User IT-STUDHELP : 2 июня 2023
600 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №16 promo
Термодинамика ПетрГУ 2009 Задача 2 Вариант 02
Рассчитать смешанный цикл двигателя внутреннего сгорания, т.е. найти параметры p, V и T для характерных точек цикла, изменение внутренней энергии, энтальпии, энтропии, а также работу в отдельных процессах и цикле. Определить также степень предварительного расширения, степень повышения давления и термический КПД цикла. Параметры выбрать из таблицы 1. Дополнительные данные для расчета: начальный объем — V1=0,001 м³; количество теплоты, подводимой в изобарном процессе — Qp=1,05 кДж; количество т
User Z24 : 12 декабря 2025
650 руб.
Термодинамика ПетрГУ 2009 Задача 2 Вариант 02
Анализ известных технических решений:Устройство для очистки скважины от песчаны пробок(патент № 1232778), Устройство для обработки стенок скважины (патент № 1044770), Устройство для ремонта скважины (патент № 1406337), Насадка для удаления песчаных пробок
Анализ известных технических решений:Устройство для очистки скважины от песчаны пробок(патент № 1232778), Устройство для обработки стенок скважины (патент № 1044770), Устройство для ремонта скважины (патент № 1406337), Насадка для удаления песчаных пробок-(Формат Компас-CDW, Autocad-DWG, Adobe-PDF, Picture-Jpeg)-Чертеж-Оборудование для капитального ремонта, обработки пласта, бурения и цементирования нефтяных и газовых скважин-Курсовая работа-Дипломная работа
500 руб.
Анализ известных технических решений:Устройство для очистки скважины от песчаны пробок(патент № 1232778), Устройство для обработки стенок скважины (патент № 1044770), Устройство для ремонта скважины (патент № 1406337), Насадка для удаления песчаных пробок
Политическая реальность в современной социальной науке
Введение Многопартийность в современной России – это состоявшийся факт. Однако особенность российской многопартийности заключается в том, что партии в нашей стране до сих пор так и не смогли стать полноценными субъектами политики, а результаты опросов общественного мнения свидетельствуют о девальвации института политических партий в сознании россиян. Большинство граждан не воспринимает политические партии как действенные рычаги для влияния на высшую власть, не говоря уже о смене власти. В настоя
User alfFRED : 8 сентября 2013
10 руб.
Стенд для ремонта ДВС
3 Конструкторская часть 3.1 Обзор существующих конструкций 3.2 Описание назначения и область применения проектируемого стенда 3.3 Технологические требования, предъявляемые к процессу и стенду 3.4 Описание и обоснование проектируемого стенда 3.5 Прочностной расчет стенда 3.6 Основные требования к изготовлению, сборке, настройке и эксплуатации
User proekt-sto : 14 января 2021
600 руб.
Стенд для ремонта ДВС
up Наверх