Подсистема ввода-вывода и файловая система ОС Windows NT

Контрольная работа - Компьютеры, программирование

Другие контрольные работы по предмету Компьютеры, программирование

Министерство образования Республики Беларусь

Учреждение образования

Белорусский государственный университет информатики и радиоэлектроники

Кафедра интеллектуальных информационных технологий

 

 

 

 

 

 

 

 

Отчет

по лабораторной работе № 3

по курсу Операционные системы

на тему Подсистема ввода-вывода и файловая система ОС Windows NT

 

 

Выполнили: студенты гр. 921703

Шут А.С.

Зарембо Д.Н.

Проверил: Колб Д.Г.

 

 

 

МИНСК 2012

 

1. Описание хода проведенных экспериментов

 

Для анализа было выбрано приложение Total Commander (TotalCmd.exe).

 

Рис. 1 - Копирование и удаление файла

 

На рис. 1 представлены счетчики монитора производительности физического диска: текущая длина очереди диска (сплошная тонкая), средняя длина очереди диска (штриховая), количество обращений к диску в секунду (сплошная толстая). Первые пики соответствуют процессу копирования файла программой TotalCmd.exe: регистрируется максимальное число обращений к диску в 1 секунду, возрастает средняя и текущая длина очереди диска (максимальное значение - 4). Последний пик на графике зарегистрирован в момент удаления файла.

 

Рис. 2 - Поиск файла на диске

 

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

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

 

Рис. 3 - Скачивание файла

 

Рис. 4 - Закачивание файла

 

Рис. 5 - File Monitor: копирование файла

 

На рис. 5 изображен отчет программы Filemon.exe, в котором показаны запросы процесса TotalCmd.exe в ходе копирования файла: процесс поочередно вызывает системные функции read (чтение из файла в буфер оперативной памяти) и write (запись из буфера оперативной памяти в файл). Путь к используемому файлу отображается в столбце Path, а результат выполнения системного вызова - в столбце Result. Копирование осуществляется равными блоками, размер которых - 131 072 байт. Смещение offset указывают позицию в файле, с которой происходит чтение/запись данных.

 

Рис. 6 - TDImon: скачивание файла

файловый сетевой адаптер приложение

Рис. 7 - TDImon: закачивание файла

 

С помощью программы TDImon.exe был проведен анализ работы процесса TotalCmd.exe при скачивании и закачивании файла по локальной сети (рис. 6 и 7). В столбце Request отображается тип запроса (TDI_RECEIVE, TDI_EVENT_RECEIVE при скачивании файла, TDI_SEND при закачивании файла), в столбце Local - IP-адрес сетевого интерфейса ("0.0.0.0" - любой сетевой интерфейс) и порт, Remote - удаленный IP-адрес и порт (порт 20 для данных протокола FTP). Результат выполнения запроса отображается в столбце Result.

 

Рис. 8 - Диспетчер задач Windows

 

C помощью диспетчера задач Windows (рис. 8) и утилиты TaskInfo (рис. 9) была собрана следующая информация о приложении Total Commander:

  • процесс - Totalсmd.exe;
  • PID - 3352;
  • родительский процесс - explorer.exe;
  • PID родительского процесса - 1364;
  • количество потоков - 3;
  • используемая память - 12 352 Кб, пиковое значение - 15 364 Кб;
  • виртуальная память - 53 252 Кб, пиковое значение 56 208;
  • количество объектов USER - 86;
  • количество объектов GDI - 147.

Рис. 9 - TaskInfo

 

Утилита TaskInfo позволяет получить подробную информацию о любом из запущенных процессов: вкладка Modules - программные модули, используемые процессом; Files - файлы, открытие процессом; Handles - используемые дескрипторы; GDI - используемые процессом объекты GDI; Connections - сетевые соединения, установленные процессом; Env - информация о переменных окружения, используемых процессом; Image Info - подробная информация об образе процесса; Thread - информация о потоках процесса.

 

Выводы

 

В ходе выполнения лабораторной работы были изучены подсистема ввода-вывода и файловая система ОС семейства Windows NT. С помощью различных утилит (Монитор производительности, Filemon, TaskInfo, TDImon, Диспетчер задач Windows) было проанализировано приложение TotalCommander и его взаимодействие с файловой системой и подстистемой ввода-вывода. Монитор производительности и Filemon использовались для изучения работы приложения с физическим диском. С помощью утилиты TDImon было изучено взаимодействие TotalCommander с сетевыми адаптерами. С помощью Диспетчера задач Windows и TaskInfo были определены различные характеристики процесса TotalCmd.exe: PID, количество потоков, используемая память и др.