Диспетчер задач и внутренние параметры системы

 

Диспетчер задач является встроенным в операционную систему приложени­ем, которое позволяет просматривать и анализи­ровать работающие в данный момент в системе приложения и процессы, а также производить управление ими, независимо от того, в каком состоя­нии они находятся (рис. 1.9). Диспетчер задач позволяет:

- анализировать текущие параметры произво­дительности операционной системы и параметры, которые были в ее недавнем прошлом, что позволяет наиболее удобно и достоверно на­страивать производительность системы в соответствии с предъявляемыми требованиями;

- отображает состояние сетевых соединений и степень их загруженности, что позволит проводить наглядный мони­торинг сетевых соединений, если они присутствуют в системе, также можно обнаружить про­граммы, тайно пересылающие информацию с компьютера в сеть.

- показывает информацию о пользователях (если в системе включена опция быстрого переключения пользователей), работаю­щих с системой в данный момент времени: имя пользователя, его учетная запись, идентификатор входа, статус, имя компьютера, с которого пришел пользователь (если он использовал удаленный вход);

- позволяет проводить некоторые операции над пользователями;

- может по­мочь запустить приложение;

- может перейти в какое-то определенное окно приложения;

- может осуществить выход из системы.

 

 

Рисунок 1.9. Окно Диспетчера задач

 

Основные команды пунктов операционного меню Диспетчера задач.

Меню Файл команда Новая задача (Выполнить) запускает новое приложение.

Меню Вид содержит команды, ответственные за вывод на экран различной информации, отображаемой в окне Диспетчера задач и команды ответственные за частоту обновления информации, отображаемой приложением (рис.1.10). Если Диспетчер задач будет посто­янно обновлять информацию во всех своих окнах, прикрепленным к соот­ветствующим закладкам, то на это потратится много времени работы центрально­го процессора и производительность системы понизится. Чтобы этого не случилось, разработчики пошли на компромисс, и теперь информация в окнах данной программы обновляется через опреде­ленные промежутки времени. Таким образом, любая информация, отображаемая в окне Диспетчера задач, является, фактически, всегда той, которая была на момент обновления инфор­мации в окне, а сейчас уже стала историей. Но поскольку интервалы обновле­ния информации в окне весьма малы, то можно с большой вероятностью счи­тать, что данная информация отображает текущее состояние системы.

 

 

Рисунок 1.10. Меню Вид Диспетчера задач

 

Команда Обновить (рис.1.10) предназначена для обновления всех окон диспетчера задач, с целью показа текущего состояния системы.

Команда Скорость обновления (рис.1.10) позволяет устано­вить, как относительно часто будет обновляться информация во всех окнах Диспетчера задач, для этого установлены следующие режимы:

- режим Высокая – предназначен для максимально быстрого обновления информации;

- режим Обычная – предназначен для обнов­ления информации со скоростью, которая считается достаточной разработчиками ОС (используется по умолчанию);

- режим Низкая – предназначен для редкого обновления информации;

- режим Приостановить – предназначен для запрещения обновления информации; означает паузу, которую стоит выбирать, когда нужно обдумать значения параметров, полученных от системы (фактически будет сохраняться информационный слепок системы, который существовал на момент остановки сбора информации).

3.Команда Завершение работы позволяет перевести ком­пьютер в ждущий или спящий режимы, выключить или перезапустить его, завершить сеанс текущего пользо­вателя или переключиться на другого пользователя системы. В ждущем режиме все запущенные программы остаются в оперативной памяти, подача энергии к которой сохраняется. В случае спящего режима все про­граммы записываются на жесткий диск и система полностью обесточивает­ся. Ре­жим энергосбережения и гибернации (лат. hibernatio – спячка) будет корректно работать только тогда, когда оборудование и программное обеспечение поддерживают его и настроены соответствующим образом. При выборе пункта меню, которое перезапускает или выключает компьютер все пользователи, работающие в системе, будут от­ключены и все работающие программы остановлены.

Диспетчер задач содержит следующие закладки: Приложения, Процессы, Быстродействие, Пользователи.

 

1.3.1. Закладка Приложения

 

Закладка Приложения отображает в системе все работающие в данный момент приложения (рис.1.9.). Внизу окна под списком активных приложений находятся кнопки, позво­ляющие завершить приложения, переключиться на прило­жение и запустить новое приложение. Кнопка Снять задачу завершит любое приложение. Если приложение не отвечает на запросы системы, когда она пытается его за­крыть, то Windows спросит, действительно ли пользователь хочет его завершить, так как есть риск потери несохраненной информации. Нажатие кнопки Завершить сейчас, расположенной в этом окне, аварийно завершит приложение. При аварийном закрытии приложений все несохраненные в них данные могут быть безвозвратно потеряны.

Если часто приходится иметь дело с зависшими задачами, последовательное нажатие на кнопку Завершить сейчас в открываемых системой окнах с вопросами о завершении выбран­ного приложения является достаточно утомительным делом. Для избежания данной процедуры можно отредактировать значение ключа HungAppTimeout в реестре по адресу:

HKEY_CURRENT_USER\Control Panel\ Desktop

Ключ определяет время в миллисекундах, через которое Windows будет считать приложение зависшим. По умолчанию это значение равно 5000 (пять секунд). Если через этот интервал времени прило­жение не будет реагировать на запросы системы, оно будет считаться завис­шим. В этой же ветви реестра содержится ключ WaitToKillApplicatioiiTimeout, который задает время перед закрытием зависшего приложения. По умолча­нию это значение равно 20000 (двадцать секунд). В итоге, после того как система в течение пяти секунд убедится, что приложение зависло, она будет ждать его завершения в течение еще двадцати секунд. Итого, сум­марное время ожидания системы, перед закрытием зависшего приложе­ния равно 25 секундам.

Для того чтобы зависшие приложения закрывались автоматически, в той же ветке реестра имеется ключ AutoEnd-Tasks. При установке его значения равное единице, система автоматически будет уничтожать зависшие приложения. Однако слишком малые значения переменных, определяющих ожидание системы, могут привести к тому, что нормально работающие, но долго думающие процессы будут считаться системой повисшими и могут быть закрыты, что приведет к нестабильной работе системы. Автоматическое уничтожение зависших процессов может оказаться полезной функцией. Если в системе существует большая загрузка приложениями и сервисами, то всегда есть достаточная вероятность появле­ния зависших по каким-то причинам программ, которые тратят системные ресурсы, включая наиболее важные из них: системную память и время работа процессора, то их закрытие может быть жизненно важным для успешного продолжения функционирования системы.

Клавиша Переключиться (рис.19.) предназначена для переключение на выбранное приложение в списке приложений. После нажатия этой кнопки оно появится на экране поверх всех других приложений.

 

1.3.2. Закладка Процессы

 

Любое приложение есть процесс, но не любой процесс есть приложение. Количе­ство процессов и приложений в системе может сильно отличаться. В закладке Процессы (рис.1.11.) под списком процессов находится опция Отображать процессы всех пользователей в случае включения которой, при наличии со­ответствующих прав системного администратора, системой будут отобра­жаться все процессы, которые запущены всеми пользователями системы в данный момент времени. С помощью кнопки Завершить процесс, можно уничтожить выбранный процесс (если достаточно прав). В информационной строке выводится общее количество процессов, текущая загрузка ими процессора системы, а также память, вы­деленная процессам и операционной системе, и ее суммарная емкость, включая файл подкачки.

 

 

Рисунок 1.11. Закладка Процессы

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

В поле Загрузка ЦП отображается информация о загруженности процессом централь­ного микропроцессора системы. В случае если в системе нет процес­сов требующих выполнения, то будет выполняться специальный процесс, называемый «Бездействие системы», принадлежащий ОС, о чем говорит строчка SYSTEM. Следующее информационное поле отображает количество памяти, потребляемой процессом.

Данные характеристики процессов, приведенные в Диспетчере задач по умолчанию, являются важнейшими. Имена исполняемых образов позволят в любой момент времени контролиро­вать исполняющиеся процессы. Несмотря на то, что существует методы скрытия имени исполняемого процесса от показа в Диспетчере задач, боль­шинство процессов в нем отображаются. Поэтому всегда можно убедиться в том, что в системе исполняются только те про­цессы, которые должны исполняться в соответствии с поставленными требования­ми.

Поле Имя пользователя позволит определить от учетной записи какого пользователя запущен соответствующий процесс, что удобно для выяснения его механизма запуска. Если процесс запущен под правами какого-либо пользователя, то за его запуск ответственен прямо или косвенно этот пользователь. Если процесс работает от имени системы или администратора, то, если это вирус или шпионская программа, она уже доста­точно глубоко проникла в систему и ее автозапуск нужно искать под учетной записью администратора системы в автозапуске или среди программ или в соответствующих местах в реестре, ответственных за автозапуск программ.

Уровень использования микропроцессора процессом определяет то, как много он «думает». Если процесс практически не потребляет процессорно­го времени, то он, вероятно, находится в состоянии ожидание. Если процесс грузит процессор работой, то он находится в состоянии исполнение или, возможно, завис.

Количество потребляемой оперативной памяти определяет степень ее использования процессом. Если процесс потребляет слишком много памяти под свои нужды, например, до половины всей доступной памяти, то это может негативно сказаться на работоспособности системы и привести к ее пере­загрузке или остановке. Также существуют атаки взломщиков, основанные на потреблении всей доступной оперативной памяти системы с целью ее оста­новки или нарушения нормального функционирования. Поэтому если в системе странно себя ведет процесс, который не был запущен пользователями системы, то следует его исследовать, предварительно найдя исполняемый образ этого процесса.

Наряду с отображаемыми по умолчанию параметрами процесса (рис. 1.11.) Диспетчер задач может по требованию пользователя показывать и другие параметры, задаваемые в пункте меню Вид режимом Выбрать столбцы. При выборе этого режима появится окно Выбор столбцов (рис. 1.12.).

 

 

Рисунок 1.12. Окно пункта меню Вид режима Выбрать столбцы

 

Помимо параметров Загрузка ЦП, Имя пользователя и Память (используемых по умолчанию) интересны параметры Идентиф. процесса (PID), Время ЦП, Объем виртуальной памяти, Базовый приоритет, Счетчик дескрипторов и Счетчик потоков. Данные параметры вызывают отображение в Диспетчере задач, соответственно, идентификатора процесса (PID, Process ID), времени работы на централь­ном процессоре, размера используемой виртуальной памяти, количества используемых процессом дескрипторов, а также числа нитей у процесса. После выхода из Диспетчера задач все его параметры настройки будут сохранены и при его повторном вызове будут учтены системой. Описание параметров.

1.Поле Идентификатора процесса (PID, Process ID) является важней­шим параметром, по которому можно найти нужный про­цесс в системе и продолжить его исследование дру­гими методами, например, специальными отладчиками или сохранив на диске интерактивными дизассемблерами.

2.Поле Время ЦП определяет степень использования процессом центрального про­цессора, чем выше его загруженность, тем активнее работает соответствующее приложение. Если же загруженность процессора приложением незначительна или равна нулю, то это приложение большую часть времени проводит в состоянии покоя. Данное поле дает информацию о том, что происходит внутри системы и какие приложе­ния проявляют ту или иную активность.

Многие вирусы и троянские про­граммы могут проводить большую часть времени своей жизни, находясь в состоянии ожидания, минимально используя время работы микропроцес­сора. Если какой-то неизвестный процесс производит значи­тельную активность в системе, то это также является предупреди­тельным сигналом. Поэтому при необходимости всегда можно определить когда, кем и как был запущен процесс, что даст возможность предотвратить его повторный запуск.

3.Поле Объем виртуальной памяти определяет степень использования виртуальной памяти про­цессом. Большие запросы к виртуальной памяти могу означать также и ошибки в процессе или его нацеливание на разрушение системы путем захвата всей дос­тупной виртуальной памяти.

4.Поле Базовый приоритет определяет значение приоритета, под которым запущен дан­ный процесс. Уровень приоритета Средний имеет подавляющее большинство процессов пользователя; некоторые процессы, требующие больших вычислительных ресурсов компьюте­ра, могут иметь приоритеты Выше среднего или Высокий. Сущест­вуют и другие значения приоритетов про­цессов, но они используются редко.

Исключением является процесс Idle.exe, который не учитывается системой как процесс, требующий выполнения и поэтому не имеет приоритета. Он выполняется лишь в слу­чае, когда в текущий момент времени в системе нет других процес­сов, которые необходимо было бы выполнять на процессоре. В среднем процессы, имеющие больший приоритет, выполняются в операционной системе быстрее, так как им для их выполнения операци­онной системой предоставляется больше времени работы микропроцессора.

Большое количество пользовательских процессов с приоритетами вы­ше Средний могут сильно тормозить работу системы, сделать ее нестабильной, или привести к перезагрузке. Поэтому если неизвестный процесс имеет приоритет выше приоритета Средний, то следует определить, что это за процесс и откуда он взялся в системе.

5.Поле Счетчик дескрипторов определяет количество используемых процессом дескрипторов – идентификаторов, которые определяют используемые процессом системные ресурсы, например, файлы. Чем больше дескрип­торов использует процесс, тем большей активностью он обладает.

Данная ситуация может служить косвенной информацией о внутренней деятельности процесса. Например, если неизвестный процесс, занимающий сравнитель­но мало оперативной памяти и ресурсов центрального процессора, имеет чис­ло дескрипторов за тысячу, то это повод задуматься над тем, зачем все они ему нужны. Вероятно, что он пытается тайно анализи­ровать содержимое файлов системы, заразить или разрушить их содержи­мое. Существует и другой вариант: многие сетевые атаки на систему основы­ваются на построении к ней избыточного количества запросов, которые она не может обслужить и, как следствие, прекращает нормальное функционирование. Наличие большого количества дескрипторов или постоянное увеличение их числа у процесса, говорит в пользу такого предположения и требует немедленного вмешательства. Если неизвестный процесс имеет очень мало открытых дескрипторов, то он так же является кандидатом на исследование или уничтожение.

6.Поле Счетчик потоков определяет число нитей у процесса. Нитями называются, процессы, которые выполняются в рамках одного процесса, являющимся для них материнским. Многие процессы имеют несколько нитей, это значительно упрощает их разработку для про­граммиста. Однако большое число потоков у одного процесса (более сотни) является подозрительным и может указывать на применение про­тив системы атаки отказа в обслуживании (как в случае с числом дескрипторов у процесса). В атаке отказа в обслуживании про­цесс, который перегружает систему запросами на ресурсы, может являться обычной программой, но другая программа или взломщик удаленно по сети делают так, что она начинает все больше и больше запрашивать у системы вычисли­тельных ресурсов.

Единственной возможностью предотвратить такие атаки является периодическое обновление версий используемого программного обеспече­ния. В целях профилактики или поиска причин возникновения таких атак следует периодически проводить проверку работающих процессов операци­онной системы посредством Диспетчера задач, Far Manager или других средств.

Рекомендуется соблюдать следующее правило: если в Диспетчере задач находится неизвестный процесс и его поведение является странным, хотя бы по одному из выше приведенных параметров, то, если нет других идей, следует его завершить с помощью кнопки Завершить процесс или сообщить о процессе системному администратору (если недостаточно прав).

 

1.3.3. Закладка Быстродействие

 

Закладка Быстродействие отображает параметры производительности сис­темы (рис.1.13.).

 

 

Рисунок 1.13. Вкладка Быстродействие

На индикаторах Загрузка ЦП и Хронология загрузки ЦП выводится инфор­мация, соответственно, о текущей загруженности микропроцессора и о его использовании в прошлом. В идеале, в случае бездействия системы, загруженность должна быть в диапазоне от нуля до одного или двух процентов. Это не ис­ключает периодические резкие повышения нагрузки на процессор, вплоть до ста процентов, например, в случае операций с внешними устройствами (жестким диском или принтером).

Если же средняя загрузка системы составляет более пяти процентов, то это значит, что в ней постоянно выполняется какой-то процесс, имеющий сравнительно большую нагрузку на систему. Для выяснения этого процесса следует обратиться к закладке Процессы или к закладке Сеть, чтобы убедиться в том, что этот процесс ничего не делает в локальной сети или Интернете. Многие сетевые вирусы и черви имеют тенденцию находиться постоянно в сис­теме, выполняя некоторую внутреннюю работу, периодически работая с сетью. И если это так, постоянная небольшая загрузка системы и использование дос­таточно большого количества памяти, а также сетевой трафик будут их дема­скировать.

Если в системе имеется более одного микропроцессора, то для каж­дого из этих процессоров на Диспетчере задач появятся свои индикаторы Загрузка ЦП и Хронология загрузки ЦП.

С помощью пункта меню Вид \ Вывод времени ядра (рис.1.13.) можно конкретизировать какая именно производительность отражается на индикаторах Диспетчера задач: суммарная загрузка системы или отдельная информация по загрузке микропроцессора операционной системой и пользовательскими программами. Этот режим позволяет получить дополнительную информацию о том, где именно происходит повышенная загрузка микропроцессора.

Индикаторы Файл подкачки и Хронология использования файла подкачки показывают, соответст­венно, текущее использование файла подкачки и его использование системой в прошлом. Это очень важный показатель. Если файл подкачки используется больше чем на половину при условии, что не были запущены большие программы (тек­стовые или графические редакторы, компиляторы, плееры и пр.), то это верный признак того, что в системе что-то наладится. Это может быть ошибка в программном обеспечении или атака типа отказа в обслуживании. Для выяснений причин происходящего следует обратиться к закладке Процессы, обращая особое внимание на то, как процессы используют память. Также стоит обратить внимание на закладку Сеть, чтобы убедиться в том, что процессы ничего не делают в локальной сети или Интернете.

Параметры системы Всего отображают общее число де­скрипторов (в строке Дескрипторов), нитей (в строке Потоков) и процес­сов (в строке Процессов). Если количество деск­рипторов, потоков и процессов будет слишком большим, то возможно, что кто-то против системы использует сетевую или локальную атаку отказа в обслуживании. Система может стать нестабильной или перестанет функциониро­вать нормально, а вся информация, содержащаяся в пользовательских про­граммах, будет утеряна. Следует срочно найти процесс, который использует большое количество ресурсов и его закрыть. После чего произвести поиск локальной или удаленной причины, вызвавшей данную атаку.

В группе параметров производительности сис­темы Физическая память (КБ) отражается суммарный объем оперативной памяти (строка Всего), доступной памяти (строка Доступно) и объем памяти, занятой под кэш (строка Системный кэш). Все объемы приведены в кило­байтах. Если обнаружено, что в системе без запуска каких-либо программ слишком мало доступной памяти (меньше сотни мегабайт), то следует установить дополнительную оперативную память или разобраться с процессами, которые ее потребляют.

Группа параметров Выделение памяти (КБ) определяет использование памяти приложениями в системе:

- строка Всего описывается текущее использование памяти;

- строка Предел показывает максимальную емкость памяти, кото­рая может быть использована приложениями (сумма емкостей файла подкачки и оперативной памяти);

- стро­ка Пик показывает максимальный объем памяти, который использовался приложениями в системе.

Если значение Пик или Всего приближается к значению Предел, то при условии, что в системе не загружены большие приложения, возможно происходит локальная или удаленная атака.

Группа параметров Память ядра (КБ) по­казывает объем памяти, используемой ядром операционной системы Windows XP:

- строка Всего показывает суммарный объем памяти, доступный ядру;

- строка Выгружаемая показывает размер памяти, который может быть вытеснен в файл подкачки специальными средствами ОС;

- строка Невыгружаемая показывает размер памяти, используемой ядром системы, которая не может быть вытеснена в файл подкачки и находится постоянно в оперативной памяти.

В зависимости от текущей ситуации в работе операци­онной системы, эти значения могут меняться в ту или иную сторону. Если эти значения меняются резко, например, в два раза, то это признак того, что в системе что-то не так. Поэтому следует выяснить причину вызывающую такие колебания в памяти, ис­пользуемой ядром операционной системы. Рекомендуется перезагрузить систему т.к. в некоторых случаях это объясняется ошибками в операционной системе, которые исчезнут после пере­загрузки.

Для диагностики системы можно использовать внешние антивирусные программы, внешние программы проверки системы или встроенные средства ОС. Например, для проверки идентичности файлов можно ис­пользовать программу установки Windows XP с соответствующим ключом. Справку о ключах можно получить, запустив файл WinNT32.exe с ключом "/?", который находится в дистрибутиве операци­онной системы, в папке 1386.