Операционные системы. КУРСОВАЯ РАБОТА. Вариант №18
Состав работы
|
|
|
|
|
|
|
|
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по материалам лаб. работы №4.
Те потоки, которые выводят информацию на экран, должны использовать для этого каждый свое отдельное окно, обрамленное рамкой – экран визуально делится на несколько окон, в каждом из которых отображается один процесс.
Дополнительное информационное окно должно содержать описание управляющих клавиш и краткое сообщение о тех действиях, которые выполняются в программе: номер потока, его статус в текущий момент времени (активен, приостановлен, ожидает), другую информацию (указание величины выделенного потоку кванта времени, процент заполненности буфера и т.п.) в зависимости от конкретного потока.
Программа должна работать устойчиво, без “зависаний” и непредвиденных зрительных эффектов. В случае необходимости указания параметров при запуске программы необходимо предусмотреть и обработать все возможные ошибки (с выводом диагностики на экран).
Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя прерывания таймера, случайным образом определяет очередной активный поток и выделяет ему кванты времени (возможно, в рамках большего кванта, выделенного всему процессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть возможность её изменения во время работы путем нажатия некоторых ключевых клавиш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).
Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “приостановлен”. В процессе работы может возникнуть, например, следующая ситуация. Поток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и перейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, который освободит место в буфере для помещения новой информации. В случае приостановки производителя возникнет аналогичная ситуация, только с пустым буфером. Приостановка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.
Задачи 2, 4, 5, 7 должны выполняться равномерно, независимо от степени загрузки системы. Для этого каждой из них необходимо получать управление через фиксированное количество “тиков” системного таймера, во время которого они выполнят какое-то свое элементарное действие (“бегущая строка” или “летающий объект” сместится на одну позицию, сменится нота в музыке…). При такой реализации скорость каждого потока будет определяться количеством “тиков” таймера между его запусками. Для уменьшения скорости такого потока достаточно после нажатия ключевой клавиши предоставлять ему управление реже, через большее число “тиков”, соответственно для ускорения такого потока – опять же после нажатия ключевой клавиши – ему предоставляется управление чаще, в пределе – на каждом “тике”. Так, “бегущая строка” должна двигаться равномерно с постоянной скоростью (если она не приостановлена ключевой клавишей) независимо от количества активных процессов в системе, музыка – тоже играть равномерно… Потоки этого класса задач могут иметь два статуса: “активен” и “приостановлен”.
Задания
2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включённом состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы №2).
3. Два потока: один выполняет поиск всех последовательных простых чисел и заносит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. работы №4).
4. Вывод заголовка работы (фамилия и имя автора и название работы) постоянно меняющегося цвета. Место вывода (верхняя или нижняя строка экрана) задавать в качестве параметра командной строки.
6. Два потока: один генерирует случайные числа и выбирает в буфер те, которые являются полным квадратом, второй выводит их из буфера на экран (по материалам лаб. раб. №4).
Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по материалам лаб. работы №4.
Те потоки, которые выводят информацию на экран, должны использовать для этого каждый свое отдельное окно, обрамленное рамкой – экран визуально делится на несколько окон, в каждом из которых отображается один процесс.
Дополнительное информационное окно должно содержать описание управляющих клавиш и краткое сообщение о тех действиях, которые выполняются в программе: номер потока, его статус в текущий момент времени (активен, приостановлен, ожидает), другую информацию (указание величины выделенного потоку кванта времени, процент заполненности буфера и т.п.) в зависимости от конкретного потока.
Программа должна работать устойчиво, без “зависаний” и непредвиденных зрительных эффектов. В случае необходимости указания параметров при запуске программы необходимо предусмотреть и обработать все возможные ошибки (с выводом диагностики на экран).
Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя прерывания таймера, случайным образом определяет очередной активный поток и выделяет ему кванты времени (возможно, в рамках большего кванта, выделенного всему процессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть возможность её изменения во время работы путем нажатия некоторых ключевых клавиш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).
Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “приостановлен”. В процессе работы может возникнуть, например, следующая ситуация. Поток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и перейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, который освободит место в буфере для помещения новой информации. В случае приостановки производителя возникнет аналогичная ситуация, только с пустым буфером. Приостановка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.
Задачи 2, 4, 5, 7 должны выполняться равномерно, независимо от степени загрузки системы. Для этого каждой из них необходимо получать управление через фиксированное количество “тиков” системного таймера, во время которого они выполнят какое-то свое элементарное действие (“бегущая строка” или “летающий объект” сместится на одну позицию, сменится нота в музыке…). При такой реализации скорость каждого потока будет определяться количеством “тиков” таймера между его запусками. Для уменьшения скорости такого потока достаточно после нажатия ключевой клавиши предоставлять ему управление реже, через большее число “тиков”, соответственно для ускорения такого потока – опять же после нажатия ключевой клавиши – ему предоставляется управление чаще, в пределе – на каждом “тике”. Так, “бегущая строка” должна двигаться равномерно с постоянной скоростью (если она не приостановлена ключевой клавишей) независимо от количества активных процессов в системе, музыка – тоже играть равномерно… Потоки этого класса задач могут иметь два статуса: “активен” и “приостановлен”.
Задания
2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включённом состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы №2).
3. Два потока: один выполняет поиск всех последовательных простых чисел и заносит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. работы №4).
4. Вывод заголовка работы (фамилия и имя автора и название работы) постоянно меняющегося цвета. Место вывода (верхняя или нижняя строка экрана) задавать в качестве параметра командной строки.
6. Два потока: один генерирует случайные числа и выбирает в буфер те, которые являются полным квадратом, второй выводит их из буфера на экран (по материалам лаб. раб. №4).
Дополнительная информация
Работа была зачтена на "отлично"
Преподаватель: Бах О.А.
Преподаватель: Бах О.А.
Похожие материалы
Курсовая работа по дисциплине: Операционные системы вариант 18
NecoArcFan
: 20 июня 2023
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или не-скольких потоков. Любой из потоков, работающих в составе этих процес-сов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажа-тия клавиш обрабатывать с помощью прерывания от клавиатуры (по ма-териалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех пот
30 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №18 (2,3,4,6)
IT-STUDHELP
: 2 ноября 2019
Задание.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостанов-лен и вновь запущен некоторой определенной клавишей (можно использовать бук-венные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью преры-вания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановк
240 руб.
Операционные системы. Вариант 18.
studypro3
: 22 июля 2020
1) Основные характеристики и особенности систем пакетной обработки, систем разделения времени и систем реального времени. Критерии эффективности.
2) Сегментное преобразование памяти – достоинства и недо-статки. Дескриптор сегмента. Сравнить с дескриптором страниц – об-щее и различия.
3) Привести пример программной реализации семафорных примитивов. Использовать семафоры для синхронизации процессов, один из которых в процессе своей работы посылает другому сообще-ние, а тот, в свою очередь, для про
300 руб.
Операционные Системы. Курсовая Работа
djigorfan
: 6 октября 2012
1. ЗАДАНИЕ НА КУРСОВУЮ РАБОТУ
Разработать и отладить программу расчета выражения вида:
для значений Х от Xmin до Xmax с шагом 1.
Оформить вывод фамилии и инициалов автора, уникального идентификационного номера, а также текущей даты.
Результаты вычислений вывести в виде таблицы значений X и Y на экране дисплея.
300 руб.
Курсовая работа "Операционные системы"
olyly7
: 7 февраля 2011
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоко
10 руб.
Контрольная работа по дисциплине: Операционные системы. Вариант №18
IT-STUDHELP
: 19 декабря 2022
Контрольная работа
По дисциплине: Операционные системы
Вариант: 18
Задания:
!!!2. Музыкальное сопровождение – как минимум несколько нот различной длительно-сти, образующие мелодию. Во включённом состоянии мелодия должна играть в фо-новом режиме (по материалам лаб. работы №2).
!!!3. Два потока: один выполняет поиск всех последовательных простых чисел и зано-сит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. работы №3).
!!!4. Вывод заголовка работы (фамилия и и
600 руб.
КУРСОВАЯ РАБОТА. По дисциплине: Операционные системы.
fominovich
: 19 июня 2016
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
КУРСОВАЯ РАБОТА по дисциплине «Операционные системы»
mike_vorn
: 30 сентября 2014
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей
750 руб.
Другие работы
История развития ЭВМ, операционных систем, процессоров
evelin
: 21 июля 2015
Содержание
Введение
История развития компьютеров, операционных систем, процессоров
Первое поколение (1945-1955): электронные лампы и коммутационные панели
В поколение (1955-1965): транзисторы и системы пакетной обработ-ки
Третье поколение (1965-1980): интегральные схемы и многозадачность
Четвёртое поколение (с 1980 года по наши дни): персональные компьютеры
Сравнительная характеристика поколений компьютеров
Эволюция использования компьютеров: проект ЭВМ пятого поколения
Заключение
Список исполь
75 руб.
Пневмоклапан редукционный 54.000
bublegum
: 21 мая 2020
Пневмоклапан редукционный 54.000 сборочный чертеж
Пневмоклапан редукционный 54.000 спецификация
Пневмоклапан редукционный 54.000 3d модель
Корпус 54.001
Цилиндр корпуса 54.002
Шток клапана 54.004
Седло выпускного клапана 54.005
Гайка колпачковая 54.008
Пружина 54.009
Пробка 54.012
Кожух 54.015
Редукционный пневмоклапан шарикового типа автомобилей ЗИЛ-130 автоматически поддерживает давление сжатого воздуха в пневмосистеме путем впуска воздуха в разгрузочное устройство компрессора или выпуска из
600 руб.
Налог на имущество предприятий
Elfa254
: 3 сентября 2013
Содержание
Исторические аспекты возникновения налоговой системы Российской Федерации 3
Сущность налогов и принципы налогообложения 7
Функции налогов 9
Налог на имущество предприятий 10
Список использованной литературы 24
Исторические аспекты возникновения налоговой системы РФ.
Налоги представляют собой обязательные сборы, взимаемые государством с хозяйствующих субъектов и с граждан по ставке, установленной в законном порядке. Налоги являются необходимым звеном экономических отношений в об
45 руб.
Механика жидкости и газа СПбГАСУ 2014 Задача 2 Вариант 94
Z24
: 29 декабря 2026
Поворотный клапан закрывает выход из бензохранилища в трубу квадратного сечения. Глубина бензина слева h = (0,3 + 0,05·y) м, глубина бензина справа H = (0,85 + 0,05·z) м, угол наклона клапана к горизонту α = (45 + 0,2·y) °, ρб = 686 кг/м³, избыточное давление паров бензина в резервуаре рм = (0,6 + 0,01·y) = 0,64 кПа.
Определить, какую силу T необходимо приложить к тросу для открытия клапана (рис. 2).
200 руб.