Курсовая работа по дисциплине: Операционные системы. Вариант №7
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Программа для просмотра текстовых файлов
- Microsoft Word
Описание
Задание
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необ-ходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по мате-риалам лаб. работы №4.
Те потоки, которые выводят информацию на экран, должны использовать для этого каждый свое отдельное окно, обрамленное рамкой – экран визуально делится на не-сколько окон, в каждом из которых отображается один процесс.
Дополнительное информационное окно должно содержать описание управляющих клавиш и краткое сообщение о тех действиях, которые выполняются в программе: но-мер потока, его статус в текущий момент времени (активен, приостановлен, ожидает), другую информацию (указание величины выделенного потоку кванта времени, процент заполненности буфера и т.п.) в зависимости от конкретного потока.
Программа должна работать устойчиво, без “зависаний” и непредвиденных зрительных эффектов. В случае необходимости указания параметров при запуске программы необходимо предусмотреть и обработать все возможные ошибки (с выводом диагно-стики на экран).
Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя преры-вания таймера, случайным образом определяет очередной активный поток и выделяет ему кванты времени (возможно, в рамках большего кванта, выделенного всему про-цессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть возможность её изменения во время работы путем нажатия некоторых ключевых клавиш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).
Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “приос-тановлен”. В процессе работы может возникнуть, например, следующая ситуация. По-ток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и пе-рейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, который ос-вободит место в буфере для помещения новой информации. В случае приостановки производителя возникнет аналогичная ситуация, только с пустым буфером. Приоста-новка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.
Задачи 2, 4, 5, 7 должны выполняться равномерно, независимо от степени загрузки системы. Для этого каждой из них необходимо получать управление через фиксиро-ванное количество “тиков” системного таймера, во время которого они выполнят ка-кое-то свое элементарное действие (“бегущая строка” или “летающий объект” сме-стится на одну позицию, сменится нота в музыке…). При такой реализации скорость каждого потока будет определяться количеством “тиков” таймера между его запуска-ми. Для уменьшения скорости такого потока достаточно после нажатия ключевой кла-виши предоставлять ему управление реже, через большее число “тиков”, соответст-венно для ускорения такого потока – опять же после нажатия ключевой клавиши – ему предоставляется управление чаще, в пределе – на каждом “тике”. Так, “бегущая стро-ка” должна двигаться равномерно с постоянной скоростью (если она не приостановле-на ключевой клавишей) независимо от количества активных процессов в системе, му-зыка – тоже играть равномерно… Потоки этого класса задач могут иметь два статуса: “активен” и “приостановлен”.
Задания:
1. Два потока: первый читает информацию из файла (например, стихи или текст про-граммы) в буфер, второй эту информацию из буфера выдаёт на экран. При заполнении окна вывода до конца его содержимое не должно обновляться полностью – вывод но-вой информации должен осуществляться в последнюю строку, а все остальные строки смещаться вверх (по материалам лаб. работы №4). Имя читаемого файла задавать как параметр командной строки. После окончания файла он начинает считываться заново.
3. Два потока: один выполняет поиск всех последовательных простых чисел и заносит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. ра-боты №4).
4. Вывод заголовка работы (фамилия и имя автора и название работы) постоянно ме-няющегося цвета. Место вывода (верхняя или нижняя строка экрана) задавать в каче-стве параметра командной строки.
7. Движущийся объект (в простейшем случае, например, летающий и отражающийся от границ окна шарик). Движение может осуществляться свободно или при управлении с клавиатуры (по материалам лаб. работы №5).
Параметры командной строки
Описание основных алгоритмов, используемых в программе
Описание основных переменных, констант и типов
Описание подпрограмм
Копия экрана программы (при запуске “kurs.exe b text.txt”)
Исходный текст программы
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необ-ходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по мате-риалам лаб. работы №4.
Те потоки, которые выводят информацию на экран, должны использовать для этого каждый свое отдельное окно, обрамленное рамкой – экран визуально делится на не-сколько окон, в каждом из которых отображается один процесс.
Дополнительное информационное окно должно содержать описание управляющих клавиш и краткое сообщение о тех действиях, которые выполняются в программе: но-мер потока, его статус в текущий момент времени (активен, приостановлен, ожидает), другую информацию (указание величины выделенного потоку кванта времени, процент заполненности буфера и т.п.) в зависимости от конкретного потока.
Программа должна работать устойчиво, без “зависаний” и непредвиденных зрительных эффектов. В случае необходимости указания параметров при запуске программы необходимо предусмотреть и обработать все возможные ошибки (с выводом диагно-стики на экран).
Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя преры-вания таймера, случайным образом определяет очередной активный поток и выделяет ему кванты времени (возможно, в рамках большего кванта, выделенного всему про-цессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть возможность её изменения во время работы путем нажатия некоторых ключевых клавиш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).
Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “приос-тановлен”. В процессе работы может возникнуть, например, следующая ситуация. По-ток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и пе-рейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, который ос-вободит место в буфере для помещения новой информации. В случае приостановки производителя возникнет аналогичная ситуация, только с пустым буфером. Приоста-новка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.
Задачи 2, 4, 5, 7 должны выполняться равномерно, независимо от степени загрузки системы. Для этого каждой из них необходимо получать управление через фиксиро-ванное количество “тиков” системного таймера, во время которого они выполнят ка-кое-то свое элементарное действие (“бегущая строка” или “летающий объект” сме-стится на одну позицию, сменится нота в музыке…). При такой реализации скорость каждого потока будет определяться количеством “тиков” таймера между его запуска-ми. Для уменьшения скорости такого потока достаточно после нажатия ключевой кла-виши предоставлять ему управление реже, через большее число “тиков”, соответст-венно для ускорения такого потока – опять же после нажатия ключевой клавиши – ему предоставляется управление чаще, в пределе – на каждом “тике”. Так, “бегущая стро-ка” должна двигаться равномерно с постоянной скоростью (если она не приостановле-на ключевой клавишей) независимо от количества активных процессов в системе, му-зыка – тоже играть равномерно… Потоки этого класса задач могут иметь два статуса: “активен” и “приостановлен”.
Задания:
1. Два потока: первый читает информацию из файла (например, стихи или текст про-граммы) в буфер, второй эту информацию из буфера выдаёт на экран. При заполнении окна вывода до конца его содержимое не должно обновляться полностью – вывод но-вой информации должен осуществляться в последнюю строку, а все остальные строки смещаться вверх (по материалам лаб. работы №4). Имя читаемого файла задавать как параметр командной строки. После окончания файла он начинает считываться заново.
3. Два потока: один выполняет поиск всех последовательных простых чисел и заносит их в буфер, второй осуществляет их вывод из буфера на экран (по материалам лаб. ра-боты №4).
4. Вывод заголовка работы (фамилия и имя автора и название работы) постоянно ме-няющегося цвета. Место вывода (верхняя или нижняя строка экрана) задавать в каче-стве параметра командной строки.
7. Движущийся объект (в простейшем случае, например, летающий и отражающийся от границ окна шарик). Движение может осуществляться свободно или при управлении с клавиатуры (по материалам лаб. работы №5).
Параметры командной строки
Описание основных алгоритмов, используемых в программе
Описание основных переменных, констант и типов
Описание подпрограмм
Копия экрана программы (при запуске “kurs.exe b text.txt”)
Исходный текст программы
Дополнительная информация
Оценка - отлично!
В архиве отчет + программа.
Преподаватель: Бах О.А.
ПОВТиАС
В архиве отчет + программа.
Преподаватель: Бах О.А.
ПОВТиАС
Похожие материалы
Курсовая работа по дисциплине: Операционные системы. Вариант №7.
holm4enko87
: 7 января 2025
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоко
350 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №7.
teacher-sib
: 27 ноября 2016
Задание.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке вс
400 руб.
КУРСОВАЯ РАБОТА. По дисциплине: Операционные системы.
fominovich
: 19 июня 2016
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
КУРСОВАЯ РАБОТА по дисциплине «Операционные системы»
mike_vorn
: 30 сентября 2014
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей
750 руб.
КУРСОВАЯ РАБОТА по дисциплине «Операционные системы». Вариант №09
holm4enko87
: 9 ноября 2024
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех потоко
170 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №11
IT-STUDHELP
: 10 ноября 2023
Вариант №11
Задание.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при пр
600 руб.
Курсовая работа по дисциплине: Операционные системы. Вариант №4
IT-STUDHELP
: 10 ноября 2023
Вариант №4
Задание.
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).
Окончание работы программы должно происходить при при
600 руб.
Курсовая работа по дисциплине: Операционные системы вариант 18
NecoArcFan
: 20 июня 2023
Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или не-скольких потоков. Любой из потоков, работающих в составе этих процес-сов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажа-тия клавиш обрабатывать с помощью прерывания от клавиатуры (по ма-териалам лаб. работы №1).
Окончание работы программы должно происходить при приостановке всех пот
30 руб.
Другие работы
Экзамен по схемотехнике. Билет №23
marucya
: 12 декабря 2013
Билет № 23
Дисциплина «Основы схемотехники».
1. Схемы подачи смещения с температурной компенсацией
выходного тока покоя биполярного транзистора.
2. Собственные шумы усилителя.
Источники шумов пассивных и активных элементов.
Коэффициент шума.
Отношение сигнал/шум. Способы уменьшения уровня шума.
3. Схема активного фильтра нижних частот (интегратора) на базе операционного усилителя.
90 руб.
ТК – 7. Задание. Задачи.
studypro3
: 13 июля 2021
Задание к теме №5.
Задача 1.
АО «Стройнефтегаз» в установленном порядке купило у Тюменского приборостроительного комбината пансионат. После этого АО обратилось в Ейскую районную администрацию Краснодарского края (по месту нахождения пансионата) с ходатайством об оформлении права пользования земельным участком.
АО было отказано, т.к. стороны до заключения договора купли-продажи пансионата должны были согласовать с администрацией вопрос о пользовании земельным участком.
К какой категории земель от
300 руб.
Лабораторная работа № 1по дисциплине: Волоконно-оптические системы передачи. Тема: «Излучатели ВОСП». Вариант 4.
Fiorent87
: 10 июня 2012
Цель лабораторной работы: изучение конструкций, знакомство с принципом действия и исследование характеристик излучателей ВОСП.
Задание 1
Ознакомиться и записать характеристики излучателей ВОСП.
Задание No 2
Зарисовать схему измерения характеристик излучения источников излучения ВОСП.
Задание No 3
Записать таблицы измерения ватт-амперной характеристики Pe(Ii) при t0Ñ=200 .
Построить графики Pe(Ii) . По графику определить пороговый ток лазера.
Задание No 4
Записать таблицы измерения ватт-ампер
110 руб.
Смирнов В.Л., Прохоров Ю.С., Костенков В.В., Боюр В.С. Автомобили ВАЗ-2104, 2105, 2106, 2107: Трудоемкости работ (услуг) по техническому обслуживанию и ремонту
Aronitue9
: 22 января 2012
Тольятти, ОАО НВП "ИТЦ АВТО", 2001 г., 125 с.
В сборнике приведены данные по трудоемкостям операций технического обслуживания, диагностики и ремонта автомобилей ВАЗ-2104, 2105, 2106, 2107 и их модификаций.
Сборник предназначен для предприятий и лиц, занятых предпродажной подготовкой, техническим обслуживанием и ремонтом автомобилей ВАЗ, а также автоэкспертам.
5 руб.