- •Содержание
- •1 Лабораторная работа. Операционная система Windows. Режим командной строки
- •1.1.1 Состав внутренних команд Windows
- •1.1.2 Команды справочной системы
- •1.1.3 Команды файловой системы
- •1.1.4 Команды управления работой операционной системы
- •1.1.5 Команды пакетных (командных) файлов
- •1.2 Задания к лабораторной работе
- •1.3 Требования к отчету
- •1.4 Контрольные вопросы
- •2 Лабораторная работа. Операционная система Windows. Основы разработки командных (пакетных) файлов
- •If условие команда
- •2.2 Задания к лабораторной работе
- •2.3 Требования к отчету
- •2.4 Контрольные вопросы
- •3 Лабораторная работа. Вычислительные процессы и ресурсы. Компоненты вычислительного процесса
- •3.1 Общие сведения
- •3.2 Задания к лабораторной работе
- •3.3 Требования к отчету
- •3.4 Контрольные вопросы
- •4 Лабораторная работа. Ресурсы и их распределение между процессами.
- •4.1 Общие сведения
- •4.2 Задания к лабораторной работе
- •4.3 Требования к отчету
- •4.4 Контрольные вопросы
- •5 Лабораторная работа. Взаимные блокировки потоков и их обнаружение
- •5.1 Общие сведения
- •5.2 Задания к лабораторной работе
- •5.3 Требования к отчету
- •5.4 Контрольные вопросы
- •6 Лабораторная работа. Способы распределения процессорного времени в операционных системах
- •6.1 Общие сведения
- •6.2 Задания к лабораторной работе
- •6.3 Требования к отчету
- •6.4 Контрольные вопросы
- •7 Лабораторная работа. Исследование возможностей операционной системы при работе с памятью
- •7.1 Общие сведения
- •7.2 Задания к лабораторной работе
- •7.3 Требования к отчету
- •7.4 Контрольные вопросы
- •8 Лабораторная работа. Исследование механизмов работы с памятью
- •8.1 Общие сведения
- •8.2 Задания к лабораторной работе
- •8.3 Требования к отчету
- •8.4 Контрольные вопросы
- •Список литературы
5.2 Задания к лабораторной работе
5.2.1 Обнаружение взаимоблокировок при наличии неразделяемых ресурсов. Рассматривается простой вариант для случая, когда в системе существует только один ресурс каждого типа.
Пусть система состоит из семи процессов – A, B, C, D, E, F, G и шести ресурсов - R, S, T, V, W, U. В некоторый момент времени система соответствует следующему списку:
а) процесс А занимает ресурс R и хочет получить ресурс S;
б) процесс В ничего не использует, но хочет получить ресурс Т;
в) процесс С ничего не использует, но хочет получить ресурс S;
г) процесс D занимает ресурс U и хочет получить ресурсы S и T;
д) процесс Е занимает ресурс Т и хочет получить ресурс V;
е) процесс F занимает ресурс W и хочет получить ресурс S;
ж) процесс G занимает ресурс V и хочет получить ресурс U.
Требуется:
1) определить заблокирована ли эта система и если да, то какие процессы в этом участвуют;
2) составить алгоритм и использовать его для решения задач обнаружения тупиковых ситуаций и заблокированных процессов в системе с единичными ресурсами;
3) распределить ресурсы по процессам в соответствии с приведенным списком;
4) построить граф ресурсов и процессов, позволяющий установить процессы, которые попали в тупиковую ситуацию.
5.2.2 В системе есть 5 процессов (A, B, C, D, E) и 4 ресурса (p1, p2, p3, p4), которые можно предоставить процессам. Текущее распределение ресурсов и максимальное их количество, необходимое процессам, приводится в таблице 5.1. Заполнить столбцы «требуется» и «доступно». Определить оптимальный вариант распределения существующих ресурсов. Возможно ли возникновение в системе тупиковой ситуации?
Таблица 5.1 – Распределение ресурсов и их количество
процесс |
Предоставлено р1, р2, р3, р4 |
Максимальные требования |
Требуется р1, р2, р3, р4 |
Доступно р1, р2, р3, р4 |
А |
0 0 1 3 |
1 0 1 5 |
|
1 1 0 2 |
В |
1 3 0 0 |
2 6 5 0 |
|
|
С |
0 0 3 1 |
2 6 5 6 |
|
|
D |
2 3 4 1 |
4 3 5 6 |
|
|
Е |
0 3 3 1 |
0 5 5 1 |
|
|
5.2.3 Требуется сравнить считывание файла через однопоточный и многопоточный файловые серверы. Получение запроса, его диспетчеризация и обработка занимают 15 миллисекунд при условии наличия данных в блочном кэше. В каждом третьем случае требуется обращение к диску, занимающее 75 миллисекунд, в течение которых поток находится в состоянии ожидания. Сколько запросов в секунду обработает однопоточный сервер? А многопоточный?
5.2.4 Запуска ожидают пять задач. Предполагаемое время их выполнения составляет 9, 6, 3, 5 и х мс. В каком порядке их следует запустить, что минимизировать среднее время отклика? (Ответ должен зависеть от х).
5.2.5 В гибкую систему реального времени поступают четыре периодических сигнала в периодами 50, 100, 200 и 250 мс. На обработку каждого сигнала требуется 35, 20, 10 и х мс времени центрального процессора. Требуется определить максимальное значение х, при котором система остается поддающейся планированию.
5.2.6 Пользовательский процесс формирует строку из 70 символов для вывода на принтер, затрачивая на это 5 мс. Объем буфера равен одной строке. Страница текста содержит 50 строк. Принтер способен печатать 10 страниц в минуту. Будет ли приостанавливаться пользовательский процесс? Если да, то насколько? Улучшит ли ситуацию двойная буферизация?
5.2.7 Информация от модема поступает со скоростью 50 Кбит/с, размещаясь в двух переключаемых системных буферах, каждый из которых имеет емкость в 1 Кбайт. Перемещение данных из буфера в пользовательский процесс занимает 7 мс. Пользовательский процесс затрачивает 50 мс на обработку одного блока данных. Возможны ли при этих условиях потери данных, поступающих от модема?
5.2.8 Известно, что программа А выполняется в монопольном режиме за 10 минут, а программа В – за 20 минут, то есть при последовательном выполнении они требуют 30 мин. Если Т – время выполнения обеих этих задач в режиме мультипрограммирования, то какое из неравенств справедливо? Поясните ответ схемой.
а) Т < 10;
б) 10<T<20;
в) 20<T<30;
г) T>30.