ПетрушенковЛаб1. Лабораторная работа 1 Исследование процессов и потоков в операционной системе Windows по дисциплине Операционные системы
Скачать 19.34 Kb.
|
Санкт-Петербургский политехнический университет Петра Великого Институт компьютерных наук и технологий Кафедра «Компьютерные интеллектуальные технологии» Лабораторная работа №1 Исследование процессов и потоков в операционной системе Windows по дисциплине «Операционные системы» Выполнил студент гр. з3530903/00002 Г.М.Петрушенков <подпись> Руководитель доцент, к.т.н. А.В. Сергеев <подпись> «___» __________ 2022 г. Санкт-Петербург 2022 Выполнение лабораторной работы. 1. Запустите диспетчер задач, откройте вкладку «Производительность» («Быстродействие»). Запишите сколько в системе запущено процессов и потоков. Процессы – 127 Потоки - 1181 2. Запустите программу «Process Viewer» pviewer.exe и запишите требуемую информацию. процесса надо определять исходя из приоритетов потоков, входящих в него. Определите, запущен ли процесс Idle? - Запущен 2) Сколько времени процесс Idle проводит в режиме ядра, а сколько в пользовательском режиме? Объясните, чем пользовательский режим отличается от режима ядра? - 100% времени в режиме ядра и 0% в пользовательском режиме, в режиме ядра, в отличие от пользовательского, доступны привилегированные операции (настройки виртуальной памяти, обращение к периферийным устройствам и т.д.). 3) Запишите численное значение уровня привилегий у процесса Idle? - Численное значение уровня привилегий в Idle – 0 4) Сколько потоков у процесса Idle? Почему у этого процесса именно такое количество потоков? - В данном случае у процесса Idle - 1, так как лаборатарная работа выполняется на устройстве с одним процессором 5) Какой динамический приоритет у потоков процесса Idle. - Динамический приоритет доступа у процесса Idle – 0 6) Какой класс динамического приоритета у процесса Idle - Класс динамического приоритета у процесса Idle - Idle 7) Есть ли процессы, в которых запущено больше чем два потока. Приведите примеры таких процессов. - У процесса explorer 80 потоков, у pviever – 2 потока 3. Запустите программу «Блокнот» (Notepad). Нажмите кнопку Refresh в программе «Process Viewer». 1) Найдите процесс, относящийся к программе «Блокнот» (Notepad). Сколько потоков у этого процесса? - У процесса notepad 5 потоков 2) Сколько времени процесс проводит в режиме ядра, а сколько в пользовательском режиме? - 100% времени в режиме ядра и 0% в пользовательском 3) Определите, какой поток в процессе notepad является потоком управления (базовым потоком)? - Базовым потоком процесса notepad является нулевой поток 4) Введите в программе «Блокнот» какой-нибудь текст. Сохраните документ в файл. Нажмите кнопку Refresh в программе «Process Viewer». 5) Сколько потоков стало у процесса Notepad? Заполните следующую таблицу: -После сохранения файла количество потоков увеличилось до 10;
6) Объясните, почему увеличилось количество потоков? -Количество потоков выполнения увеличилось в связи с выполненными процессами сохранения, набора и т.п. Появились новые потоки, которые обработали введенный текст и сохранили его. 7) Поясните, каким образом один поток может работать в режиме пользователя и в привилегированном режиме? -Переход из режима пользователя в режим ядра осуществляется за счет использования специальной инструкции процессора, которая заставляет процессор переключиться в режим ядра и обратно. Таким образом, операционная система защищает саму себя и свои данные от прочтения и модификации со стороны пользовательских процессов. 4. Запустите «Диспетчер задач» (Task Manager). 1) Какие приложения запущены? - Notepad, Processciever, Task Manager, Windows Explorer 2) Перейдите на вкладку Службы. Есть ли связь между полем идентификатор процесса и числом в скобках в pviewer? - В Службах ИП записан в десятеричной системе исчисления, а в pviewer в шестнадцатеричной, связи нет; 3) Сколько служб запущено в системе? - Запущено 34 служб 5. Исследование динамического изменения приоритета потока. Для дальнейших исследований понадобятся программы Process Explorer (procexp.exe) и badapp32.exe. 1) Запустите программу badapp32.exe. 2) Запустите программу procexp.exe 3) Выберите процесс badapp32.exe. Сколько потоков входит в этот процесс? Определите, какой поток является потоком управления? - В этот процесс входит один поток, поток управления – 2440 4) Запишите состояние потока управления (State). Запишите значения базового и динамического приоритетов потока управления. Поясните, что значит базовый и динамический приоритеты потока. Почему динамический приоритет больше базового? - State: Wait:WrUserRequest Базовый приоритет – 8 Динамический приоритет – 10 Базовый приоритет процесса определяет, сколь сильно могут различаться приоритеты потоков процесса и как они соотносятся с приоритетами потоков других процессов. Нижней границей динамического приоритета потока является базовый приоритет потока, а верхняя – зависит от вида работ, исполняемых потоком. 5) Сделайте окно badapp32 активным и проследите, как меняется приоритет потока управления. Как меняется приоритет потока управления при переводе окна в фон? Объясните получившиеся результаты. - При развертывании окна динамический приоритет возрастает на 2 до 12, в фоне снижается до 8. Если поток обрабатывает пользовательский ввод, то диспетчер задач поднимает его динамический приоритет; если же он выполняет вычисления, то диспетчер постепенно снижает его приоритет до базового. 6. Определение численных значений приоритетов выполнения процессов. 1) Для дальнейшей работы необходимо программу badapp32, используя меню, перевести в состоянии зависания (Hang). Используя Process Explorer, определите базовый и динамические приоритеты потока управления. - При зависании динамический приоритет снизился до базового - 8 2) Откройте Диспетчер задач, выберите вкладку «Подробности» («Службы») и найдите процесс badapp32.exe. Меняйте приоритет процесса утилитой «Диспетчер задач» и установите численные значения динамических приоритетов процесса Realtime, High, AboveNormal, Normal, BelowNormal, Idle. Для установки приоритета в Realtime необходимо обладать правами администратора. Запишите в отчёт численные значения, соответствующие перечисленным приоритетам.
|