Вы находитесь на странице: 1из 6

МИНОБРНАУКИ РОССИИ

Федеральное государственное бюджетное образовательное учреждение


высшего образования
"МИРЭА - Российский технологический университет"
РТУ МИРЭА

Институт информационных технологий (ИТ)


Кафедра инструментального и прикладного программного обеспечения
(ИиППО)

ОТЧЕТ ПО ЛАБОРАТОРНОЙ РАБОТЕ № 3

по дисциплине
«Системное программное обеспечение»

Выполнил студент группы ИКБО-01-17 Ананьев Ф.А.

Принял ассистент Алпатов А.Н.

Работа выполнена «___» ________ 2020 г.

«Зачтено» «___» ________ 2020 г.

Москва 2020
Цель работы: Получение практических навыков отображения и
работы с данными в виртуальной памяти.

Задание:
1. Краткое изложение теоретических основ архитектуры ОС Windows.
2. Результаты исследования ОС с использованием Системного
монитора (Monitor из пункта Administrative Tools):
• определить количество процессов, потоков, дескрипторов в ОС,
изменить их число, запуская на выполнение новые приложения;
• определить процент работы в пользовательском режиме (% User
Time), процент работы в привилегированном режиме (% Privileged Time) и
процент времени бездействия при выполнении, связанными с интенсивными
графическими операциями (например, откройте Chrome с flash);
• включить в отчет полученные графики и привести их объяснение.

Ответы на контрольные вопросы:


1. Приведите архитектуру ОС Windows NT и принцип работы
процесса в режиме ядра и в пользовательском режиме.

Рисунок 1 – обобщенная схема архитектуры Windows NT

2
Система Windows NT поддерживает два уровня привилегий при
работе с процессором: уровень 0 (режим ядра) и уровень 3 (пользовательский
режим). В режиме ядра осуществляется полный доступ ко всей памяти и ко
всем командам процессора, а в пользовательском режим обладает
наименьшим доступом. Обычно, в режиме ядра выполняются
низкоуровневый код ОС (драйверы устройств, доступ к файлам и т.д.), а
пользовательские приложения выполняются как раз в пользовательском
режиме.
Потоки процесса, выполняющегося в пользовательском режиме,
периодически могут переключатся в режим ядра при вызове некоторых
системных API функций (и только на время работы с этими функциями),
требующий более высокого уровня привилегий.

2. Дайте характеристику дескриптору объекта.


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

3. Приведите функцию для отображения файла в виртуальное


адресное пространство.
Отображение файла в виртуальное адресное пространство происходит
с помощью функции CreateFileMapping().
Параметры функции:
 hFile – дескриптор файла, для которого создается отображение;
 lpFileMappingAttributes — SECUR1TY_ATTRIBLITES — объект
безопасности, используемый при создании файлового отображения. NULL
для использования стандартных атрибутов безопасности;
 flProtect — одна из следующих констант:

3
PAGE_READONLY: созданное файловое отображение доступно
только для чтения;
PAGE_READWRITE: файловое отображение доступно для чтения и
записи;
PAGE_WRITECQPY: разрешается копирование при записи; Также в
комбинацию могут включаться следующие константы: SЕС_СОММГГ: для
страниц секции выделяется физическое место в памяти или файле подкачки;
SEC_IMAGE: файл является исполняемым;
SEC_RESERVE: для страниц секции резервируется виртуальная
память без фактического выделения.

 dwMaximumSizeHigh — максимальный размер файлового


отображения (старшие 32 бита);
 dwMaximumSizeLow — максимальный размер файлового
отображения (младшие 32 бита); Если параметры dwMaximumSizeHigh и
dwMaximumSizeLow одновременно равны нулю, используется фактический
размер файла на диске;
 lpName — имя объекта файлового отображения. Если файловое
отображение с заданным именем уже существует, функция открывает его.
Возвращаемое значение - дескриптор созданного объекта файлового
отображения.

4. Как создается объект файлового отображения.


Объект файлового отображения создается при помощи функции
CreateFileMapping, которая возвращает дескриптор созданного объекта
файлового отображения (см. ответ на вопрос 3). С помощью функции
MapViewOfFile можно получить начальный адрес данных объекта файлового
отображения.

5. Покажите принцип работы с программой «Системный монитор».

4
С помощью программы Системный монитор можно проследить
работу какого-либо оборудования, установленного на компьютере.
Отслеживание осуществляется с помощью счетчиков производительности (к
примеру, % времени прерываний процессора, или количество потоков
определенного процесса). Результат работы счетчиков отражается в виде
графика или диаграммы в главном окне Системного монитора в реальном
времени или из журнала производительности.

Результаты исследования ОС:

Рисунок 1 – счетчик процессов, дескрипторов, потоков


На рисунке 1 представлены в виде графика результаты счетчика
процессов (синяя линяя), счетчика потоков (зеленая линия) и счетчика
дескрипторов (красная линия, около 100 000 дексрипторов). Во время
отображения данных были открыты и затем закрыты несколько процессов.

5
Рисунок 2 – счетчики производительности процессов браузера
На рисунке 2 показаны счетчики % времени работы в
пользовательском и привилегированном режиме дерева процессоров
браузера Vivaldi до и после воспроизведения видеороликов на двух вкладках
одновременно. Также на графике верхней пунктирной линией обозначен
процент времени бездействия процессора.
Вывод: в ходе выполнения лабораторной работы изучены основы
архитектуры ОС Windows NT, принципы работы с файлами и виртуальной
памятью, а также осуществлен анализ производительности системы с
помощью Системного монитора по заданным параметрам.