Операционные системы. Курсовая работа. 14 вариант. Turbo Pascal. СибГУТИ

Цена:
600 руб.

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

material.view.file_icon
material.view.file_icon
material.view.file_icon 43296.doc
material.view.file_icon KR.PAS
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
  • Microsoft Word

Описание

Необходимо написать программу, реализующую параллельную работу нескольких процессов. Каждый процесс может состоять из одного или нескольких потоков. Любой из потоков, работающих в составе этих процессов, может быть приостановлен и вновь запущен некоторой определенной клавишей (можно использовать буквенные или цифровые клавиши). Нажатия клавиш обрабатывать с помощью прерывания от клавиатуры (по материалам лаб. работы №1).

Окончание работы программы должно происходить при приостановке всех потоков их ключевыми клавишами либо при нажатии клавиши ESC. При окончании работы необходимо выполнить корректное завершение, т.е. “дочитать” всю информацию из буфера каждого процесса (при его наличии), закрыть все открытые файлы и т.п. – по материалам лаб. работы №4.

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

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

Программа должна работать устойчиво, без “зависаний” и непредвиденных зрительных эффектов. В случае необходимости указания параметров при запуске программы необходимо предусмотреть и обработать все возможные ошибки (с выводом диагностики на экран).

Задачи 1, 3, 6 предполагают наличие управляющего блока, который, используя прерывания таймера, случайным образом определяет очередной активный поток и выделяет ему кванты времени (возможно, в рамках большего кванта, выделенного всему процессу). Кванты времени – как для процесса в целом, так и для его потоков – изначально задавать некоторой фиксированной величины, но предусмотреть возможность её изменения во время работы путем нажатия некоторых ключевых клавиш (для каждого из потоков предусмотреть свою клавишу) – т.е. можно, например, увеличить или уменьшить квант только потока-пpоизводителя. При этом допустимы разные варианты реализации – “общий” квант может либо меняться, либо оставаться постоянным (тогда при ускорении одного потока другой автоматически замедлится, т.к. величина его кванта уменьшится).

Потоки этого класса задач могут иметь три статуса: “активен”, “ожидает” или “приостановлен”. В процессе работы может возникнуть, например, следующая ситуация. Поток-потребитель приостановлен своей ключевой клавишей, следовательно, буфер не освобождается. Поток-производитель активен, он заполнит буфер информацией и перейдёт в состояние ожидания. Из этого состояния он сможет выйти только после того, как будет возобновлена (нажатием клавиши) работа потока-потребителя, который освободит место в буфере для помещения новой информации. В случае приостановки производителя возникнет аналогичная ситуация, только с пустым буфером. Приостановка/возобновление потока возможны в любом его состоянии – как в активном, так и в состоянии ожидания.

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

ЗАДАЧИ для 4 варианта (2, 5, 6, 7):

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

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

6. Два потока: один генерирует случайные числа и выбирает в буфер те, которые являются полным квадратом, второй выводит их из буфера на экран (по материалам лаб. раб. №4).

7. Движущийся объект (в простейшем случае, например, летающий и отражающийся от границ окна шарик). Движение может осуществляться свободно или при управлении с клавиатуры (по материалам лаб. работы №5).

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

В архиве: DOC (отчет 23 стр), PAS (1 шт)
Оценка: Отлично


--------------------------------------------------
Имеются все работы по всем дисциплинам 4(14) варианта за все курсы обучения!!!
Операционные системы. Лабораторная работа № 3. Работа с экраном (“часы”). Turbo Pascal. СибГУТИ
Задание для выполнения лаб. работы №3 Написать программу “часы”, которая будет однократно перехватывать показания системных часов и от них вести отсчет времени, используя собственный счетчик прерываний таймера (в качестве основы может быть использован обработчик прерываний таймера из предыдущей работы). Показания времени – часы, минуты, секунды – следует выводить в заданном месте экрана. Формат вывода: xx:xx:xx. Обновление показаний времени выполнять дискретно, через заданное количество секунд.
User РешуВашуРаботу : 27 апреля 2018
450 руб.
Операционные системы. Лабораторная работа №1. Обработка прерываний клавиатуры. Turbo Pascal. СибГУТИ
Задание для выполнения лаб. работы №1 Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе. Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения. В качестве пробного варианта длительность звукового сигнала и частоту задать конс
User РешуВашуРаботу : 27 апреля 2018
400 руб.
Операционные системы. Лабораторная работа № 5. Работа с видеопамятью («экран»). Turbo Pascal. СибГУТИ
Задание для выполнения лаб. работы №5 Написать программу, которая будет работать с видеопамятью. Можно выполнить любое из приведенных ниже заданий. Независимо от конкретного задания программа должна работать резидентно. Текст, присутствовавший на экране до запуска программы, не должен портиться никаким образом. В программе следует использовать два обработчика прерываний – прерываний таймера и прерываний клавиатуры. Прерывания таймера регламентируют скорость перемещения объекта, причем параметр
User РешуВашуРаботу : 27 апреля 2018
350 руб.
Объектно-ориентированное программирование. Курсовая работа. 14-й вариант. Turbo Pascal. СибГУТИ
Задание: Написать программу, используя объектно-ориентированный подход, которая двигает по экрану изображение заданного графического объекта. Допускается: замена некоторых элементов графического объекта, изменение его цветовой гаммы. Реализовать два вида движения: случайное и по нажатию на клавиши со стрелками. Предусмотреть для пользователя возможность выбора одного из двух режимов движения. Описание классов необходимо оформить в виде отдельного модуля. Иерархия классов должна включать мини
User РешуВашуРаботу : 27 апреля 2018
450 руб.
Объектно-ориентированное программирование. Курсовая работа. 14-й вариант. Turbo Pascal. СибГУТИ
Программирование на языках высокого уровня. Зачет. 4 (14) вариант. Turbo Pascal СибГУТИ
Требования к оформлению работы Необходимо представить следующее: 1. Текст задания своего варианта; 2. Ход решения ; 3. Ответ. 4. Варианты зачетного задания 0. Определить значение переменной x после работы следующего фрагмента программы: a = –5; b = –4 * a – 10; x = 0; y = b / 2 + 2; if ( a + b > 0 ) and ( a < y – b ) then begin x = y + 3; y = x / 2 end; if ( a + y > x ) or ( 2 * y > a ) ) then begin x = 2; y = –5 end;
User РешуВашуРаботу : 26 апреля 2018
350 руб.
Программирование на языках высокого уровня.Лабораторная работа № 2. 4(14) вариант Turbo Pascal СибГУТИ
Операторы циклов с условиями: While и Repeat (в лекциях см. п. 3.6, 3.7) Задание: Написать программу для вычисления заданного выражения и вывода на экран полученного значения, используя заданный циклический оператор (см. вариант по таблице 1); Таблица 1. Номер варианта 4 Выражение 0,8 - 0,10 + 0,12 -...- 0,26 Оператор цикла While
User РешуВашуРаботу : 26 апреля 2018
400 руб.
Программирование на языках высокого уровня.Лабораторная работа № 2. 4(14) вариант Turbo Pascal СибГУТИ
Программирование на языках высокого уровня.Лабораторная работа № 1. 4(14) вариант Turbo Pascal СибГУТИ
Тема 1: Стандартные функции. Арифметические выражения. Тема 2: Логические выражения. Условный оператор. Задание: Разработать программу для вычисления: 1) значения заданного арифметического выражения (см. вариант по таблице 1); 2) значения заданной функции (см. вариант по таблице 2); и вывода на экран полученных результатов. Значения исходных данных выбираются произвольно. Ввод исходных данных организовать любым известным вам способом (использовать не менее двух способов).
User РешуВашуРаботу : 26 апреля 2018
400 руб.
Программирование на языках высокого уровня.Лабораторная работа № 1. 4(14) вариант Turbo Pascal СибГУТИ
Операционные системы. Лабораторная работа № 2. Управление таймером – операции в реальном времени (программа “будильник”). Turbo Pascal. СибГУТИ
Задание для выполнения лаб. работы No2 Написать резидентную программу, которая будет работать, как “будильник” – через заданный интервал времени издавать короткий звуковой сигнал – “тикать” (например, через 1–2 секунды). По завершении более длительного интервала времени (от нескольких секунд до нескольких минут или часов) должен раздаваться более продолжительный мелодичный звуковой сигнал, имитирующий звонок будильника. Длительность звукового сигнала – “тиканья” – не должна быть слишком большо
User РешуВашуРаботу : 27 апреля 2018
250 руб.
Корпус - Вариант 9. Задание 66
С.К. Боголюбов. Индивидуальные задания по курсу черчения. Задание 66. Вариант 9. Корпус. По приведенным изображениям детали построить вид сверху и выполнить необходимые разрезы. В состав работы входит: Чертеж; 3D модель. Выполнено в программе Компас + чертеж в PDF.
User .Инженер. : 3 сентября 2025
100 руб.
Корпус - Вариант 9. Задание 66 promo
Задание 12. Вариант 6 - Точки
Возможные программы для открытия данных файлов: WinRAR (для распаковки архива *.zip или *.rar) КОМПАС 3D не ниже 16 версии для открытия файлов *.cdw, *.m3d Любая программа для ПДФ файлов. Боголюбов С.К. Индивидуальные задания по курсу черчения, 1989/1994/2007. Задание 12. Вариант 6 - Точки Построить наглядное изображение и комплексный чертеж точек А и В. Определить положение точек относительно плоскостей проекций. В состав выполненной работы входят 2 файла: 1. Чертеж формата А4, выполненный
50 руб.
Задание 12. Вариант 6 - Точки
Основи розвитку регіону. Видатки місцевих органів влади
Вступ 1. Основи розвитку регіону 2. Видатки місцевих органів влади Висновки Список використаних джерел Вступ За умов переходу економіки України до ринкових відносин багато проблем економічного життя суспільства слід оцінювати й вирішувати по-новому. Мало того, виникають проблеми, розв'язувати які доводиться вперше. Сьогодні, на початку нового сторіччя (десятиліття, тисячоліття), у країні лише створюються передумови для регульованого ринкового господарства. . Становлення ринкових (договірних,
User alfFRED : 26 октября 2013
10 руб.
Контрольная работа №1 по физике. Вариант №1
Вариант 1 111. При горизонтальном полете со скоростью v = 250 м/с снаряд массой m = 8 кг разорвался на две части. Большая часть массой m1 = 6 кг получила скорость u1 = 400 м/с в направлении полета снаряда. Определить модуль и направление скорости u2 меньшей части снаряда. 121. В деревянный шар массой m1 = 8 кг, подвешенный на нити длиной l = 1,8 м, попадает горизонтально летящая пуля массой m2 = 4 г. С какой скоростью летела пуля, если нить с шаром и застрявшей в нем пулей отклонилась от вер
User zus139 : 10 февраля 2013
50 руб.
up Наверх