Какую информацию о памяти позволяет получить утилита tasklist

Обновлено: 07.07.2024

Команда TASKLIST используется для получения списка процессов, выполняющихся на локальном или удаленном компьютере в данный момент времени.

Формат командной строки:

Примеры использования TASKLIST.

tasklist /? - выдать краткую справку по использованию команды.

tasklist - отобразить на экране консоли список процессов выполняющихся на локальном компьютере в данный момент времени. Пример отображаемой информации

Имя образа - имя исполняемого файла данного процесса. System Idle Process - это не имя образа, а индикация режима простоя, когда ни один из процессов не выполняется.

PID - уникальный идентификатор процесса. Присваивается процессу при его создании.

№ сеанса - номер сеанса пользователя.

Память - объем используемой процессом памяти.

tasklist /FO LIST - то же, что и в предыдущем примере, но выводимые данные представлены в виде списка:

tasklist /FO CSV - отобразить список процессов в формате полей, разделяемых запятой:

tasklist /fo csv /nh - то же, что и в предыдущем примере, но строка заголовка с названием колонок не отображается ( 1-я строка ).

tasklist -S SERVER - отобразить список процессов выполняющихся на удаленном компьютере SERVER в данный момент времени.

tasklist /m wsock32.dll - отобразить список процессов, которые подгружают библиотеку wsock32.dll . Пример отображаемых результатов выполнения команды:

tasklist /m - если имя модуля не задано, то отображается весь список процессов, и по каждому процессу - весь список модулей. Пример результата выполнения команды:

tasklist /SVC - отобразить информацию о системных службах. Пример:

В колонке Службы отображается короткое имя службы, например, DcomLaunch - для Службы Терминалов

tasklist -s 192.168.0.1 -U mydomain\admin -P mypass /FI "memusage gt 10000" - отобразить список процессов, использующих более 10000кб ( 10 Мб) памяти на компьютере с IP-адресом 192.168.0.1 . При подключении к удаленному компьютеру используется имя пользователя admin в домене mydomain и пароль mypass

tasklist /fi "username ne NT AUTHORITY\Система" | more - отобразить список процессов, выполняющихся не от имени локальной системной учетной записи. Для некоторых версий Windows, вместо русского Система нужно использовать System . Команда объединена в цепочку с more для организации постраничного вывода на экран.

tasklist -s 192.168.0.110 -U mydomain\admin -P mypass /FI "sessionname eq RDP*" - отобразить список процессов на удаленном компьютере, созданных клиентами служб терминалов.

Кроме получения чисто справочной информации о выполняющихся в системе процессах, команда TASKLIST обычно используется как средство получения исходных данных для команды принудительного завершения процессов TASKKIll

а при работе с Windows возникают некоторые нюансы, например когда надо разобраться - кто кушает память!?

открываем диспетчер задач и видим, что кушает ее процесс svchost.exe, который запущен раз 15, и это есть 15 отдельных служб

выяснить что к чему, какой процесс чем является можно конечно с помощью замечательной программы "process explorer"

а как это передать в скрипт?

если есть потребность мониторить какая служба сколько ест например или типа того

при недостатке памяти выдать список процессов или служб потребляющих больше 100 МБ например

в общем нужна консольная утилита вывод которой пригоден для дальнейшей обработки, для этого есть замечательная программа tasklist, вот несколько примеров

список всех процессов svchost.exe:

tasklist /fi "imagename eq svchost.exe"

список всех служб использующих образ svchost.exe:

tasklist /svc /fi "imagename eq svchost.exe"

список всех процессов, использующих памяти больше 10000 КБ:

tasklist /fi "memusage gt 10000"

список всех процессов, использующих памяти больше 10000 КБ с указанием служб на них запущенных:

tasklist /svc /fi "memusage gt 10000"

список процессов svchost.exe пользующих памяти больше 10000 КБ:

tasklist /fi "imagename eq svchost.exe" /fi "memusage gt 10000"

список процессов svchost.exe пользующих памяти больше 10000 КБ, с указанием служб на них запущенных:

tasklist /svc /fi "imagename eq svchost.exe" /fi "memusage gt 10000"

список служб содержащих в названии слово начинающееся на "net" и занимающих более 10000 КБ памяти:

tasklist /svc /fi "services eq net*" /fi "memusage gt 10000"

Хорошие рекомендации. А есть какие-то наработки на эту же тему в линуксе? Мне, к примеру, всегда хотелось как-то реализовать мониторинг основных потребителей ресурсов сервера. К примеру, мониторится нагрузка процессора или памяти. Срабатывает триггер на 30 минут, что процессор сильно нагружен, потом проходит нагрузка. Постфактум уже невозможно проанализировать, что было на сервере. Ты на него заходишь, а там все ок.

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

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

В этой статье мы рассмотрим две утилиты командной строки, который служат для работы с процессами, а именно, утилиту tasklist и taskkill.

командная строка процессы

Командная строка процессы, утилита tasklist

Утилита командной строки tasklist служит для вывода списка процессов Windows (пример использования: "Получение списка процессов средствами командной строки и сервера Windows Script Host")

tasklist[.exe] [/s <система>] [/u [<домен>\]<пользователь> [/p <пароль>]] [/fo ] [/nh] [/fi фильтр [/fi фильтр2 [ . ]]] [/m <модуль> | /svc | /v]

/s <система> - данный ключ позволяет задать имя или же IP-адрес удаленной системы. При отсутствии ключа, информация извлекается для текущей системы.

/u [<домен>\]<пользователь> - позволяет задать имя домена/пользователя, под разрешением учетной записи которого должна выполниться команда. При отсутствии, принимаются права текущего пользователя, того, что запустил утилиту.

/p <пароль> - данный ключ актуален лишь в том случае, если прису

тствует параметр /u . Ключ задает пароль учетной записи.

/fo – тут мы можем задать формат выходных данных: TABLE – таблица, LIST – список и CSV – таблица в формате csv файла. При отсутствии ключа, данные выводятся в формате TABLE. Командная строка и процессы.

/nh – отключение вывода заголовка для столбца, ключ актуален лишь тогда, когда для параметр /fo установлены значения TABLE или CSV

/fi – данный ключ позволяет задать фильтры, по которым будет отсеиваться список выводимых процессов в командной строке. Фильтры можно указывать через запятую, в кавычках прописываем имя фильтра, оператор и значение.

  • STATUS (состояние) – eq, ne - RUNNING | NOT RESPONDING
  • IMAGENAME (имя образа) – eq, ne – имя процесса
  • PID (ID процесса) - eq, ne, gt, lt, ge, le – значение идентификатора процесса PID
  • SESSION (сеанс) - eq, ne, gt, lt, ge, le – номер сессии
  • SESSIONNAME (имя сеанса) - eq, ne – имя сессии
  • CPUTIME (неизвестно. ) - eq, ne, gt, lt, ge, le – время ЦП в формате hh (часы):mm (минуты):ss (секунды).
  • MEMUSAGE (память) - eq, ne, gt, lt, ge, le – потребляемое значение памяти в КБ
  • USERNAME (пользователь) - eq, ne – задает имя пользователя в формате [<домен>\<пользователь>]
  • SERVICES(службы) - eq, ne – имя службы
  • WINDOWTITLE - eq, ne – название окна

  • eq – определяет равенство заданному значению
  • ne - определяет неравенство заданному значению
  • gt - Больше указанного числа
  • lt - Меньше указанного числа
  • ge - Больше или равно указанному числу
  • le - Меньше или равно указанному числу

Обратите внимание, что при указании имени фильтра, я указал рядом в круглых скобках его русское значение (при возможности). Так как в русской сборке Windows умудрились сделать перевод, и при вызове фильтра на английском, возникает ошибка CMD “ Фильтр поиска не опознан ”.

/m <модуль> - присутствие данного ключа включает отображение всех процессов в командной строке, использующих заданную библиотеку (фильтр MODULES ). Не используется совместно с параметрами /svc и /v

/svc – определяет отображение служб для каждого процесса, актуален, если параметр /fo имеет значение TABLE . Не используется совместно с параметрами /m и /v

/v – включает отображение подробной информации. Не используется совместно с параметрами /svc и /m .

Командная строка процессы, утилита tasklist

Утилита taskkill позволяет завершить работу заданного процесса или группы, завершение может осуществляется по имени процесса или по его идентификатору

Фактически, значение параметров те же, что и для утилиты tasklist, кроме:

/F – задает принудительное завершение заданного процесса

/PID <процесс> - тут мы можем указать идентификатор того процесса, который нужно убить.

/IM <образ> - задаем имя образа, для определения всех процессов, можно прописать символ подстановки '*'.

/T – если данный ключ включен, то произойдет завершение заданного процесса в командной строке и всех его дочерних.

Я не силен в командной строке, поэтому на просторах интернета нашел следующий пример:

Сохраните данный текст в файле с расширением bat и запустите, в итоге вы получите в текущем каталоге два текстовых файла, один с крякозябрами, а другой в кодировке 1251.

Спасибо за внимание. Автор блога Владимир Баталий

1)Перечислите основные статистические параметры, характеризующие физическую память вычислительной системы. Что означает каждая такая характеристика? Какие утилиты позволяют получить значения этих характеристик?
2)Какие параметры характеризуют использование памяти аппаратными компонентами компьютера? Что означает каждый такой параметр? Какие утилиты позволяют получить информацию об этих параметрах?
3)Какую информацию об использовании и организации памяти позволяет получить утилита TaskList?
4)Что такое виртуальная память? Перечислите варианты ее организации.
5)Что такое файл подкачки? Для чего он используется?
6)Как выбрать оптимальный размер файла подкачки?
7)Почему фрагментация файла подкачки снижает производительность вычислительной системы? Как устранить фрагментацию файла подкачки?
8)В каких случаях эффективнее размещать файл подкачки на одном жестком диске, а в каких – на нескольких?
9)Какие счетчики позволяют провести анализ нехватки памяти?
10)Каких счетчики позволяют выполнить анализ влияния избыточной подкачки на активность дисков?

Возможно уже поздно и информация не совсем верная, но думаю другим пригодится. Предупреждаю, что могу ошибаться.
1. Раздел Выделение памяти содержит три статистических параметра виртуальной памяти:
Всего - общий объем виртуальной памяти, используемой как приложениями, так и операционной системой.
Предел - объем доступной виртуальной памяти.
Пик - наибольший объем памяти, использованный в течение сессии с момента последней загрузки.
Для получения общей информации об использовании памяти операционная система Windows имеет следующие встроенные утилиты: Диспетчер задач, утилита TaskList (в Windows XP), Сведения о системе.
2. «Память \ Доступно байт» - показывает текущий объем памяти в байтах, доступный для использования процессами.
«Память \ Обмен страниц в сек» - показывает число страниц, полученных с диска из-за необходимости обращения к этим страницам или записанных на диск для освобождения свободной памяти в рабочем множестве.
«Память\Байт в невыгружаемом страничном пуле», «Память\Распределений в невыгружаемом страничном пуле», «Процесс (имя_процесса) \Байт в невыгружаемом страничном пуле», если предполагается, что нехватка памяти вызвана процессом ядра.
Диспетчер задач, утилита TaskList (в Windows XP), Сведения о системе.
3. Утилита TaskList предоставляет более обширную информацию по сравнению с Диспетчером задач. Запускается утилита из окна командной строки. Утилита выдает информацию о процессах в виде таблицы с колонками: Имя образа, PID, Имя сессии, № сеанса, Память. Запуск утилиты с параметрами позволяет получить дополнительную информацию. Получить информацию о параметрах утилиты можно обычным образом, запустив ее с ключом /?.
4. Виртуальная память – это метод управления памятью компьютера, позволяющий выполнять программы, требующие больше оперативной памяти, чем имеется в компьютере, путём автоматического перемещения частей программы между основной памятью и вторичным хранилищем.
Варианты организации виртуальной памяти:
Оверлеи – возможность расположить модули в памяти таким образом, чтобы один из них постоянно находился там, а остальные – попеременно загружались в ходе выполнения программы в одну и ту же область, сменяя и перекрывая друг друга.
Свопинг или обычная подкачка – разрешение системе вводить в память и выводить из нее задания целиком.
Поблочное отображение – возможность группировать элементы информации в блоки.
5. Файл подкачки - это скрытый системный файл под названием pagefile.sys, расположенный на жёстком диске компьютера и используемый операционной системой Windows по принципу оперативной памяти.
Данный системный файл необходим операционной системе в первую очередь для разгрузки именно оперативной памяти компьютера при повышенных нагрузках.
6. Минимальное значение должно быть в полтора раза больше, чем оперативной памяти в компьютере. Другими словами, если ОЗУ 8 ГБ, то файл подкачки должен иметь минимум 12 гигабайт.

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

Мальвина Малинина Знаток (349) Для защиты файла подкачки от фрагментации выполните дефрагментацию диска перед созданием файла подкачки и сделайте одинаковыми максимальный и минимальный размеры файла подкачки. Это заставит операционную систему выделить пространство для файла подкачки за один проход. При этом файл подкачки не будет менять размер и будет не подвержен фрагментации. Удостоверьтесь, что для файла подкачки выделено достаточно дискового пространства. Если планируется поддержка Terminal Services, выделите для файла подкачки размер, в два раза больший объема оперативной памяти, но не более 4 Гбайт.

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

9. Наблюдение за ситуациями, порождающими недостаток памяти, рекомендуется начинать со следующих счетчиков:
«Память \ Доступно байт» - показывает текущий объем памяти в байтах, доступный для использования процессами.
«Память \ Обмен страниц в сек» - показывает число страниц, полученных с диска из-за необходимости обращения к этим страницам или записанных на диск для освобождения свободной памяти в рабочем множестве.
Низкие значения счетчика «Доступно байт» указывают на общий недостаток памяти на компьютере или на то, что какая-либо программа не освобождает память. Большое значение счетчика «Обмен страниц в сек» может указывать на недостаток памяти, или быть результатом работы программы, использующей файл, отображенный в память.

10. Так как избыточная подкачка влечет сильную загрузку жесткого диска, в результате избыточной подкачки страниц, кроме недостатка памяти, возможно также возникновение узкого места в дисковой системе. Поэтому если при определении причины избыточной подкачки страниц недостаток памяти не прослеживается явно, наряду со счетчиками памяти следует наблюдать за следующими счетчиками использования диска: Логический диск\% активности диска; Физический диск\Средняя длина очереди диска.

Читайте также: