Лабораторные работы №1,2,3 по дисциплине: Операционные системы. Без вариантов.
Состав работы
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Лабораторная работа No1 Обработка прерываний клавиатуры
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константами в программе. Когда будет получена устойчивая работа программы, изменить её таким образом, чтобы длительность звукового сигнала и его частота задавались в качестве параметров при запуске программы.
Необходимо предоставить пользователю возможность “выключать” и “включать” заново звуковое сопровождение работы клавиш. Использовать для “выключения/включения” звука нестандартную комбинацию клавиш: сочетание нажатой клавиши <Shift> с какой-либо ещё, например, <Shift>+<Esc> ...
Контрольные вопросы
1. Как поведёт себя Ваша программа, если в качестве параметров командной строки вместо требуемых по заданию длительности и частоты будут заданы неверные значения, например, символы, строки символов, отрицательные или дробные числа?
2. Как будет работать программа, если задавать величину длительности звукового сигнала очень большой? Почему?
3. Как можно определить скан-коды требуемых клавиш?
4. В каком случае при нажатии и отпускании клавиши может раздаваться “двойной” сигнал?
5. Проверьте, что произойдет, если нажать клавишу и удерживать её в нажатом состоянии? Варианты – раздаётся многократно повторяемый звуковой сигнал, сигнал прозвучал один раз. Что нужно изменить в программе, чтобы она изменила свой вариант поведения на альтернативный?
6. Видоизменить программу для того, чтобы при нажатии любой клавиши раздавался звук, соответствующий заданной в качестве параметра частоте сигнала, а отпускание клавиши сопровождал звук более высокий (выше на 50% от заданной частоты).
7. Для некоторых специальных клавиш установить длительность звукового сигнала большей в 2–3 раза (например, для <Esc>, <Shift> или <Enter>) – сделать в программе соответствующие изменения.
Лабораторная работа No2
Управление таймером – операции в реальном времени
(программа “будильник”)
Написать резидентную программу, которая будет работать, как “будильник” – через заданный интервал времени издавать короткий звуковой сигнал – “тикать” (например, через 1–2 секунды). По завершении более длительного интервала времени (от нескольких секунд до нескольких минут или часов) должен раздаваться более продолжительный мелодичный звуковой сигнал, имитирующий звонок будильника.
Длительность звукового сигнала – “тиканья” – не должна быть слишком большой. Её следует задавать в программе в пределах от 1/10 до 1⁄2 доли секунды.
По окончании “звонка будильника” “тиканье” должно продолжаться. “Звонок” должен раздаваться только один раз .
В то время, когда звучит “звонок”, не должно быть слышно “тиканья” (звонок может длиться в течение нескольких секунд, и в этот интервал времени теоретически могут попасть звуки “тиканья”).
Для получения эффекта “мелодичного звонка” следует использовать несколько звуковых частот с различной продолжительностью звучания каждой из них.
Временной интервал, через который должно происходить “тиканье” (в секундах – целое число секунд), задавать с клавиатуры в качестве параметра; время, через которое должен прозвонить будильник (в минутах – их число может быть дробным), тоже задавать в качестве параметра. Отсчёт времени для “звонка” вести с момента запуска программы.
Контрольные вопросы
1. Как будет вести себя Ваша программа, если в качестве параметров командной строки ошибочно ввести символы вместо чисел? Или отрицательное число? Или в случае неверного количества параметров – например, если он будет всего один, или, наоборот, их окажется большее количество, чем нужно?
2. Возможно ли задавать время продолжительности звонка с точностью до полуминуты?
3. Какие изменения потребуется сделать в программе, чтобы сделать “звонок будильника” звучащим многократно, каждый раз снова через такой же интервал времени, который был задан вначале?
4. Каким образом можно изменять длительность звукового сигнала (например, “тиканья”) в обработчике прерываний таймера? Какой параметр программы отвечает за продолжительность сигнала?
5. Добавьте третий параметр для задания продолжительности “звонка” с клавиатуры .
Лабораторная работа No3
Эмуляция работы параллельных процессов на примере
схемы “производитель–потребитель”
Написать программу, которая будет эмулировать параллельную работу некоторых потоков. Потоки должны работать циклически. В качестве модели использовать схему “производитель – потребитель”. Один поток (производитель) может помещать случайные (или какие-то определенные – например, только четные числа или квадраты целых чисел и т.п.) числа в буфер (массив заданного размера), для наглядности поток-производитель должен эти числа выводить на экран. Другой поток (потребитель) забирает числа из этого буфера. Для контроля также выполнять вывод на экран чисел, взятых потоком-потребителем из буфера. Вывод разными потоками выполнять в разные строки и/или разным цветом; дополнительно выводить на экран индикатор того, какой именно поток работает в настоящий момент, а также содержимое буфера и текущий процент его заполненности .
Контрольные вопросы
1. Как поведет себя программа, если первым будет выбираться на выполнение поток-потребитель?
2. Каким образом можно создать приоритет тому или другому потоку? Используя только датчик случайных чисел? Добавьте возможность задания приоритета в форме параметра командной строки.
3. Возможно ли добавление в ту же программу новых потоков? Измените программу таким образом, чтобы можно было при ее запуске указывать требуемое количество потоков. При этом функции каждого потока определяются случайным образом. Т.е. может получиться несколько потребителей и один производитель, или наоборот... В крайней ситуации – все производители или все потребители. Как поведёт себя программа в подобном случае?
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константами в программе. Когда будет получена устойчивая работа программы, изменить её таким образом, чтобы длительность звукового сигнала и его частота задавались в качестве параметров при запуске программы.
Необходимо предоставить пользователю возможность “выключать” и “включать” заново звуковое сопровождение работы клавиш. Использовать для “выключения/включения” звука нестандартную комбинацию клавиш: сочетание нажатой клавиши <Shift> с какой-либо ещё, например, <Shift>+<Esc> ...
Контрольные вопросы
1. Как поведёт себя Ваша программа, если в качестве параметров командной строки вместо требуемых по заданию длительности и частоты будут заданы неверные значения, например, символы, строки символов, отрицательные или дробные числа?
2. Как будет работать программа, если задавать величину длительности звукового сигнала очень большой? Почему?
3. Как можно определить скан-коды требуемых клавиш?
4. В каком случае при нажатии и отпускании клавиши может раздаваться “двойной” сигнал?
5. Проверьте, что произойдет, если нажать клавишу и удерживать её в нажатом состоянии? Варианты – раздаётся многократно повторяемый звуковой сигнал, сигнал прозвучал один раз. Что нужно изменить в программе, чтобы она изменила свой вариант поведения на альтернативный?
6. Видоизменить программу для того, чтобы при нажатии любой клавиши раздавался звук, соответствующий заданной в качестве параметра частоте сигнала, а отпускание клавиши сопровождал звук более высокий (выше на 50% от заданной частоты).
7. Для некоторых специальных клавиш установить длительность звукового сигнала большей в 2–3 раза (например, для <Esc>, <Shift> или <Enter>) – сделать в программе соответствующие изменения.
Лабораторная работа No2
Управление таймером – операции в реальном времени
(программа “будильник”)
Написать резидентную программу, которая будет работать, как “будильник” – через заданный интервал времени издавать короткий звуковой сигнал – “тикать” (например, через 1–2 секунды). По завершении более длительного интервала времени (от нескольких секунд до нескольких минут или часов) должен раздаваться более продолжительный мелодичный звуковой сигнал, имитирующий звонок будильника.
Длительность звукового сигнала – “тиканья” – не должна быть слишком большой. Её следует задавать в программе в пределах от 1/10 до 1⁄2 доли секунды.
По окончании “звонка будильника” “тиканье” должно продолжаться. “Звонок” должен раздаваться только один раз .
В то время, когда звучит “звонок”, не должно быть слышно “тиканья” (звонок может длиться в течение нескольких секунд, и в этот интервал времени теоретически могут попасть звуки “тиканья”).
Для получения эффекта “мелодичного звонка” следует использовать несколько звуковых частот с различной продолжительностью звучания каждой из них.
Временной интервал, через который должно происходить “тиканье” (в секундах – целое число секунд), задавать с клавиатуры в качестве параметра; время, через которое должен прозвонить будильник (в минутах – их число может быть дробным), тоже задавать в качестве параметра. Отсчёт времени для “звонка” вести с момента запуска программы.
Контрольные вопросы
1. Как будет вести себя Ваша программа, если в качестве параметров командной строки ошибочно ввести символы вместо чисел? Или отрицательное число? Или в случае неверного количества параметров – например, если он будет всего один, или, наоборот, их окажется большее количество, чем нужно?
2. Возможно ли задавать время продолжительности звонка с точностью до полуминуты?
3. Какие изменения потребуется сделать в программе, чтобы сделать “звонок будильника” звучащим многократно, каждый раз снова через такой же интервал времени, который был задан вначале?
4. Каким образом можно изменять длительность звукового сигнала (например, “тиканья”) в обработчике прерываний таймера? Какой параметр программы отвечает за продолжительность сигнала?
5. Добавьте третий параметр для задания продолжительности “звонка” с клавиатуры .
Лабораторная работа No3
Эмуляция работы параллельных процессов на примере
схемы “производитель–потребитель”
Написать программу, которая будет эмулировать параллельную работу некоторых потоков. Потоки должны работать циклически. В качестве модели использовать схему “производитель – потребитель”. Один поток (производитель) может помещать случайные (или какие-то определенные – например, только четные числа или квадраты целых чисел и т.п.) числа в буфер (массив заданного размера), для наглядности поток-производитель должен эти числа выводить на экран. Другой поток (потребитель) забирает числа из этого буфера. Для контроля также выполнять вывод на экран чисел, взятых потоком-потребителем из буфера. Вывод разными потоками выполнять в разные строки и/или разным цветом; дополнительно выводить на экран индикатор того, какой именно поток работает в настоящий момент, а также содержимое буфера и текущий процент его заполненности .
Контрольные вопросы
1. Как поведет себя программа, если первым будет выбираться на выполнение поток-потребитель?
2. Каким образом можно создать приоритет тому или другому потоку? Используя только датчик случайных чисел? Добавьте возможность задания приоритета в форме параметра командной строки.
3. Возможно ли добавление в ту же программу новых потоков? Измените программу таким образом, чтобы можно было при ее запуске указывать требуемое количество потоков. При этом функции каждого потока определяются случайным образом. Т.е. может получиться несколько потребителей и один производитель, или наоборот... В крайней ситуации – все производители или все потребители. Как поведёт себя программа в подобном случае?
Дополнительная информация
Вид работы: Лабораторная работа 1-3
Оценка: Зачет
Дата оценки: 21.06.2024
Бах Ольга Анатольевна
Оценка: Зачет
Дата оценки: 21.06.2024
Бах Ольга Анатольевна
Похожие материалы
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №3
IT-STUDHELP
: 19 декабря 2022
Лабораторная работа 1
Задание:
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константами
1200 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №7
Andatra6699
: 14 января 2026
Лабораторная работа No1
Знакомство с операционной системой LINUX
Способы хранения информации.
Команды управления данными
Цель работы: получить базовые навыки по работе с операционной системой (ОС) Linux, ее командной оболочкой. Изучить понятия дерева каталогов, файла и типы файлов. Изучить основные команды по управлению и манипуляции данными.
Задание для лабораторной работы
Работа с файловой системой LINUX
Цель работы: Изучить команды управления каталогами и файлами.
Порядок вы
600 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №5
holm4enko87
: 11 ноября 2024
Лабораторная работа 1
Задание:
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константами в
800 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №16
IT-STUDHELP
: 2 июня 2023
Лабораторная работа No1
Задание
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константам
1200 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №11
IT-STUDHELP
: 2 июня 2023
Курсовая работа
Вариант: 11
Задания:
1. Два потока: первый читает информацию из файла (например, стихи или текст программы) в буфер, второй эту информацию из буфера выдаёт на экран. При заполнении окна вывода до конца его содержимое не должно обновляться полностью – вывод новой информации должен осуществляться в последнюю строку, а все остальные строки смещаться вверх (по материалам лаб. работы No3). Имя читаемого файла задавать как параметр командной строки. После окончания файла он начинает с
1450 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №16
IT-STUDHELP
: 2 июня 2023
Курсовая работа
Вариант: 16
Задания:
2. Музыкальное сопровождение – как минимум несколько нот различной длительности, образующие мелодию. Во включенном состоянии мелодия должна играть в фоновом режиме (по материалам лаб. работы No2).
5. Вывод заголовка работы (фамилия и имя автора и название работы) в виде “бегущей строки”. Место вывода (верхняя или нижняя строка экрана) задавать параметром командной строки.
6. Два потока: один генерирует случайные числа и выбирает в буфер те, которые являютс
1450 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №11
IT-STUDHELP
: 2 июня 2023
Лабораторная работа No1
Задание
Написать программу, которая должна “озвучивать” клавиатуру, т.е. после запуска этой программы нажатие любой клавиши на клавиатуре будет сопровождаться звуковым сигналом. Клавиатура при этом должна оставаться работоспособной, т.е. продолжать выполнять свои основные функции в нормальном темпе.
Программа должна быть резидентной, т.е. оставаться в памяти после своего завершения.
В качестве пробного варианта длительность звукового сигнала и частоту задать константам
1200 руб.
Лабораторные работы 1-3 по дисциплине: Операционные системы. Вариант №05
IT-STUDHELP
: 27 декабря 2022
Лабораторная работа 1
Знакомство с операционной системой LINUX
Способы хранения информации.
Команды управления данными
Цель работы: получить базовые навыки по работе с операционной системой (ОС) Linux, ее командной оболочкой. Изучить понятия дерева каталогов, файла и типы файлов. Изучить основные команды по управлению и манипуляции данными.
Задание для лабораторной работы
Работа с файловой системой LINUX
Цель работы: Изучить команды управления каталогами и файлами.
Порядок выполнения рабо
1200 руб.
Другие работы
Линейная алгебра. Контрольная работа №1, Вариант №9
Mixhot
: 13 декабря 2015
Задача 1. Дана система трех линейных уравнений. Найти решение ее двумя способами: методом Крамера и методом Гаусса.
Задача 2. Даны координаты вершин пирамиды А1А2А3А4. Найти:
1.длину ребра А1А2;
2.угол между ребрами А1А2 и А1А4;
3.площадь грани А1А2А3;
4.уравнение плоскости А1А2А3.
5.объём пирамиды А1А2А3А4.
2.9. А1 ( 1; 8; 2), А2 ( 5; 2; 6), А3 ( 5; 7; 4), А4 ( 4; 10; 9).
150 руб.
Лабораторные работы по дисциплине: Основы схемотехники. Вариант № 10
Jack
: 16 сентября 2013
Лабораторная работа № 1
“Исследование резисторного каскада предварительного усиления на биполярном транзисторе”
Цель работы:
Исследовать влияние параметров элементов схемы каскада с эмиттерной стабилизацией на его показатели (коэффициент усиления, частотные и переходные характеристики).
Лабораторная работа №2
“Исследование резисторного каскада широкополосного усилителя на полевом транзисторе”
Цель работы:
Исследовать влияние элементов схемы каскада широкополосного усилителя на полевом транзис
750 руб.
Теоретическая механика РГАЗУ Задача 1 Рисунок 3 Вариант 9
Z24
: 18 ноября 2025
Определение реакций опор твёрдого тела
Определить реакции опор А и В плоской балки, если на нее действуют сосредоточенные силы Р1 и Р2, алгебраический момент пары сил М и равномерно распределенная нагрузка интенсивностью q.
Схемы нагружения десяти типов даны на рисунках под номерами от 1 до 10, а числовые данные для расчета приведены в таблице 6.
200 руб.
Механика жидкости и газа СПбГАСУ 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 руб.