Конкурс хаков: запускаем процессы с заранее заданным приоритетом. О интересных вещах из мира IT, инструкции и рецензии Высокий приоритет процесса

Давайте поговорим о приоритетах Windows процессов . В большинстве случаев «играться» с настройкой приоритетов нет необходимости, но, иногда, грамотный системный администратор может помочь системе более правильно распределить процессорное время между запущенными задачами. Единого рецепта нет, но путем «подбора и перебора» это вполне реализуемо. Где это может понадобиться? Например, в связке 1С-SQL можно дать больше процессорного времени 1С и SQL, как наиболее критичным к ресурсам процессам.

В общем случае, посмотреть и изменить приоритет запущенного процесса можно через Task Manager

Windows NT/2000/ 7 /2008

В Windows 2012 это “закопали» чуть глубже

Как видно из приведенных примеров, вам доступно всего 6 приоритетов (как выяснится позже, это классы приоритетов ). Достаточно? Microsoft считает, что да. Но давайте вспомним «легендарную» фразу Билла Гейста, который сказал, что «640 KB of RAM will be enough for everybody”. Но время показало, что это далеко не так. :)

А теперь давайте разберемся, как это есть на самом деле.

На самом деле в Windows существует 32 уровня приоритета, от 0 до 31.

Они группируются так:

  • 31 — 16 уровни реального времени;
  • 15 — 1 динамические уровни;
  • 0 — системный уровень, зарезервированный для потока обнуления страниц (zero-page thread).

При создании процесса, ему назначается один из шести классов приоритетов :

  1. Real time class (значение 24),
  2. High class (значение 13),
  3. Above normal class (значение 10),
  4. Normal class (значение 8),
  5. Below normal class (значение 6),
  6. или Idle class (значение 4).

Посмотреть приоритет процесса, как писалось выше, можно, используя Task Manager.

Примечание : Приоритеты Above normal и Below normal появились, начиная с Windows 2000.

Приоритет каждого потока (базовый приоритет потока ) складывается из приоритета его процесса и относительного приоритета самого потока. Есть семь относительных приоритетов потоков:

  1. Normal : такой же как и у процесса;
  2. Above normal : +1 к приоритету процесса;
  3. Below normal : -1;
  4. Highest : +2;
  5. Lowest : -2;
  6. Time critical : устанавливает базовый приоритет потока для Real time класса в 31, для остальных классов в 15.
  7. Idle : устанавливает базовый приоритет потока для Real time класса в 16, для остальных классов в 1.

В следующей таблице показаны приоритеты процесса, относительный и базовый приоритеты потока.

Приоритет потока Класс процесса Класс процесса
Idle class Below normal class Normal class Above normal class High class Real time class
1 Idle Idle Idle Idle Idle
2 Lowest
3 Below …
4 Idle class Normal Lowest
5 Above … Below …
6 Below normal class Highest Normal Lowest
7 Above … Below …
8 Normal class Highest Normal Lowest
9 Above … Below …
10 Above normal class Highest Normal
11 Above … Lowest
12 Highest Below …
13 High class Normal
14 Above …
15 Highest
15 Time critical Time critical Time critical Time critical Time critical
16 Idle
17
18
19
20
21
22 Lowest
23 Below …
24 Real time class Normal
25 Above …
26 Highest
27
28
29
30
31 Time critical

Теперь, когда мы все это узнали, что же с этим всем можно сделать? Ну, например, начать использовать.

Как еще можно запустить процесс с «нестандартным» приоритетом или изменить?

Метод 1. Запустить задачу/процесс и изменить приоритет через Task Manager.

Минусы метода:

  • Доступно только 6 приоритетов
  • Переключение приоритетов производится мышкой, не автоматизируется.

Метод 2. Можно воспользоваться командой START с соответствующими ключами

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

C:\>start /?
Starts a separate window to run a specified program or command.
START ["title"]


LOW Start application in the IDLE priority class.
NORMAL Start application in the NORMAL priority class.
HIGH Start application in the HIGH priority class.
REALTIME Start application in the REALTIME priority class.
ABOVENORMAL Start application in the ABOVENORMAL priority class.
BELOWNORMAL Start application in the BELOWNORMAL priority class.

Как видим, команда START дает возможность запустить процесс все с теми же 6-ю приоритетами, которые доступны через Task Manager

Минус метода:

  • Доступно только 6 приоритетов

Метод 3. Использование утилиты wmic.exe

Как было показано выше, Task Manager, и команда START достаточно неуклюжи для задачи назначения приоритетов. Посмотрим, как это применять более гибко. Будем использовать утилиту wmic.exe .

Командная строка:

wmic process where name="AppName" CALL setpriority ProcessIDLevel

wmic process where name="calc.exe" CALL setpriority 32768

wmic process where name="calc.exe" CALL setpriority "above normal"

Приоритеты (предопределенные):

  • idle: 64
  • below normal: 16384
  • normal: 32
  • above normal: 32768
  • high priority: 128
  • real time: 256

Отступление . Что делать если существует несколько одноименных процессов? Приоритет процесса можно менять как по имени процесса, так и с использованием PID (Process ID) процесса.

Вот короткий пример запуска wmic.exe для получения необходимой информации

Используем команду:

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

Вы получите список процессов, запущенных на вашем локальном компьютере. Теперь выполните команду:

wmic process list brief | find "cmd.exe"

Результат:

Специально запустил несколько копий cmd.exe, чтобы иллюстрация была более полной.

Теперь список процессов ограничен только теми процессами, в имени исполняемого модуля которых присутствует строка «cmd.exe». Обратите внимание на PID процесса(ов).

Теперь давайте попробуем отобрать интересующие нас процессы, используя непосредственно WMI и не прибегая к стандартным средствам командной строки. Для этого просто напишите:

wmic process where description="cmd.exe" list brief

Результат:

Сравните полученные результаты. Запомните PID процесса CMD.EXE.

Командная строка для запуска wmic.exe

wmic process where processid="XXXX" CALL setpriority ProcessIDLevel

Ну а теперь можем изменить приоритет конкретного процесса (например с PID=8476):

wmic process where processid="8476" CALL setpriority 32768

wmic process where processid="8476" CALL setpriority "above normal"

Это руководство было сделано для Source 1, для Reborn будет проверено так же, как будет возможность.

Вступление

Руководство было полностью обновлено 1 февраля 2014 года. Большинство команд не изменились. Если же появились новые - пишите.

Расположение настройки

Расположение (скриншоты)

Список команд (запуск игры)

-console - запускает игру с включенной консолью. Подробнее:

-novid - при запуске отключает видеоролик, проигрываемый при запуске игры
-toconsole - принудительно запускает консоль , даже если указан параметр +map , заставляющий движок загрузить карту при запуске игры

Список команд

-override_vpk - игра будет читать игровые элементы в \steamapps\common\dota 2 beta\dota заменять и загружать их в игру. Команда предназначена для Модификаций .
Использование -override_vpk убрано Valve.
Вместо нее добавили немного другую команду:
-enable_addons - позволяет использовать разрешенные модификации ресурсов клиента (Мини-карту, HUD, иконки и скрипты звуков, скрипты музыки и флеш-видео )
-autoconfig - восстанавливает настройки графики по умолчанию. Игнорирует любые установленные конфиги до удаления данного параметра
-dev - включает режим разработчика . Также отключает автоматическую загрузку фоновой картинки меню и перестает запрашивать подтверждение о выходе.
Последние строки консоли будут отображаться поверх HUD игры. Не рекомендуется использовать
-nod3d9ex * - выключает (принудительно) directx 9 external rendering .
-d3d9ex * - включает (принудительно) directx 9 external rendering .
-32bit - запускает движок в 32-разрядном режиме. Полезно только для 64-х разрядных ОС.
-full или -fullscreen - запускать игру в полноэкранном режиме
-windowed или -sw - запускает игру в экранном режиме
-w **** -h **** - Запускает Dota 2 с определенным разрешением экрана (ширина и высота). К примеру: -w 1280 -h 1024
-noborder - не отображать рамку и заголовок окна при запуске игры в оконном режиме
-nosound - полностью отключает звук в игре
-nosync * - отключает вертикальную синхронизацию.
+exec "имя cfg файла" (без кавычек) - Автоматически подгружает конфигурационный файл CFG при запуске. Например, можно выполнить ваш специальный конфиг с настройками.
-noaafonts * - отключить TrueType шрифты (сглаживание шрифтов)
-insecure - VAC не используется при запуске сервера
-nomaster - созданный вами сервер не виден другим пользователям в списке серверов Steam
-gl - изменяет качество игры на OpenGL , по умолчанию стоит SoftWare.
-heapsize "ЧИСЛО" * - Задает размер файла подкачки (приемлемая цифра - размер в 2-4 раза больше объема физической оперативной памяти), который будет использовать игра (в килобайтах).
Рассчитывается по формуле: (оперативная память / 2 * 1024). Примеры чисел для ОП:

  • 512 МБ => 262144;
  • 1 ГБ => 524288;
  • 2 ГБ => 1048576;
  • 3 ГБ => 1572864;
  • 4 ГБ => 2097152;
  • 8 ГБ => 4194304
-low - запускает игру с НИЗКИМ приоритетом.
-high * - запускает игру с ВЫСОКИМ приоритетом.
-nojoy - отключает джойстик в игре
-noipx - не загружает IPX соединений , позволяет сэкономить оперативную память
-noforcemspd ** - использовать настройки скорости мыши из Windows;
-noforcemparms ** - использовать настройки кнопок мыши из Windows;
-noforcemaccel ** - использовать настройки ускорения мыши из Windows;
-freq "ЧИСЛО" или -refresh "ЧИСЛО" * - устанавливает частоту обновления экрана (для ЖК мониторов рекомендуется 60 Гц, а для ЭЛТ - 85 или 100 Гц)
-nocrashdialog - запрещает встроенный в игру отладчик, позволяет сэкономить немного оперативной памяти. Убирает диалог "memory could not be read ".
-condebug - включает режим отладки, при котором всё содержимое консоли будет записываться в файл console.log

* Помогут с оптимизацией FPS, но возможно и не все команды (что бы дота *не лагала *)
** Акселлерация мыши в Windows

Список команд (интерфейс меню)

-dota_embers 0 - Отключение анимации фона в главном меню (только так можно поставить старые фоны в меню, т.е. они будут без анимации)
-dashboard international_2012 - Изменение темы меню на International 2012
-dashboard international_2013 - Изменение темы меню на International 2013
-dashboard frostivus_2013 - Изменение темы меню на Frostivus 2013
-dashboard spirits_2013 - Изменение темы меню на 3 Spirits Update
-dashboard newbloom_2014 - Изменение темы меню на Newbloom

Список команд (неработающие)

-international
-international2012
-halloween
-perfectworld * - Подарочный орб через китайский клиент
-dxlevel :
-dxlevel 9 ; запуск с DirectX 9.
-dxlevel 8 ; запуск с DirectX 8.
-dxlevel 7 ; запуск с DirectX 7.
-dxlevel 6 ; запуск с DirectX 6.

* Может сломать клиент

Частые вопросы и проблемы

Между командами сохранять (писать) пробелы .
- Можно ли писать несколько команд? - Можно .
- Большинство проблем с игрой решается проверкой КЭШа .
- Если вы все-таки запустили игру с командой -perfectworld и намудрили с регистрацией китайского клиента, игрой и т.п. и при этом, после всего, Dota будет странно выглядеть нужно:

  • Проверить КЭШ
  • Поменять язык Dota с English на другой и обратно (в крайнем случае, такую же махинацию проделать с самим Steam)
- Проблема с отключением от сервера :
  • Через Диспетчер задач выставить для процесса Steam.exe приоритет реального времени (в крайнем случае, высокий приоритет )
  • Запустить игру с высоким приоритетом (-high )
- Проблема с невозможностью подключиться к серверу *:
  • Прописать параметр запуска -clientport 27015 (или 27011 -20 т.е любое число от 11 до 20 )
- Бесконечная загрузка Dota *:
  • Удалить все в папке \Steam\userdata\ и запустить проверку КЭШа.
* Не 100% решение

-high : высокий приоритет ЦП в вашей системе , не чит
-nod3d9ex : может дать небольшой прирост FPS и более быстрое ALT-TAB
Но! так же эта команда может сломать игру (только перестанет запускаться), а так же если 1 раз попробовав запустить игру с -nod3d9ex, рост FPS должен сохраниться , а потом спокойно убирать эту команду.
Попробуйте поставить режим *на весь экран *, у многих при *на весь экран * с включенной командой nod3d9ex игра висла или вылетала, или вылетала при сворачивании, поэтому придуман способ устранения этой проблемы - режим *в окне без рамки *. Если у вас в полноэкранном режиме не вылетает и не зависает, оставляйте где больше фпс, у БОЛЬШИНСТВА в полноэкранном режиме дает больше фпс.

Некоторые задачи (например, практически все, работающие с DVD) имеют неприятное свойство: они стремятся захватить себе как можно памятишки и загрузить собою работу всего процессора. Этим славится, например, Freemake Converter. После этого, естественно, вся (другая) работа на компьютере останавливается.

В свое время решал эту проблему при помощи очень удобного менеджера процессов Process Explorer, позволяющего изменение приоритетов процессов и даже их “убийство”. Однако определенное время в 10-ке система мне бодро рапортовала: "Не удается задать приоритет".

А изменяется приоритет задачи в штатном диспетчере задач Windows 10 так:

  1. Переходим на вкладку "Подробности".
  2. Вызываем контекстное меню на имени задачи, приоритет которой нам нужно изменить.
  3. Выбираем из него нужный нам приоритет (они соответствуют Process Explorer).

Облегченно вздыхаем и занимаемся другими (нужными) делами.

Кстати. Вызвать диспетчер задач в 10-ке очень просто. Вызываем контекстное меню на панели задач и выбираем из него пункт "Диспетчер задач".


Впрочем, есть и другие варианты, хотя - с учетом простоты предыдущего - применение их сомнительно. Но все же...
Вызывать диспетчер задач "тремя пальцами" можно (и нужно), но лично я предпочитаю все же более элегантный вариант вызова диспетчера - щелчком мыши. Найдите загрузочный модуль диспетчера, который находится здесь: c:\Windows\System32\Taskmgr.exe и перетащите его пиктограмму на рабочий стол или, например, на пользовательскую панель Total Commander, как это сделал я:

Process Explorer

Как уже упоминалось, ранее я решал проблему изменения приоритета при помощи менеджера процессов Process Explorer, который определенное время в 10-ке не выполнял требуемое действие. Однако с появлением версии 16.1 (пока, кстати, не русифицированной) функция изменения приоритета опять заработала.
А делается это очень просто.
  1. Вызываем контекстное меню на имени задачи, приоритет которой хотим изменить.
  2. Выбираем из меню пункт "Set Priority" (Установить приоритет).
  3. Выбираем из списка задания приоритета нужный:
  • Below Normal (ниже нормального)
  • Background (фоновый)
  • Idle (Скрытый)


Замечу, что для ресурсоемких задач, например, при скачивании и конвертации видео файлов я устанавливаю Background (фоновый), после чего все остальные процессы работают без никаких задержек.
Так что качаем бесплатную и не требующую инсталляции программы, например, отсюда http://soft.softodrom.ru/ap/Process-Explorer-p1203 и работаем с ней.

Смотри также:

  • Все самые популярные посты моего блога, посвященные pre-Windows 10.
  • Настройка окна Проводника в Windows 10.
  • Как войти в безопасный режим Windows 10.
  • Как восстановить Windows 10 с помощью точек восстановления, если система не загружается.
  • Как удалить программы и приложения в Windows 10.
  • Где находится папка автозагрузки в Windows 10.
  • Как удалить папку Windows.old в Windows 10.
  • Как включить в Windows 10 «режим бога».
  • Как скачать официальную Windows 10, обновить до нее ранние версии и установить с нуля без ключа продукта.
  • Генерация нового ключа при обновлении до Windows 10.
  • Как откатиться с Windows 10 к предыдущей версии системы. Какую учетную запись использовать в Windows 10 – локальную или Microsoft?
  • Что такое формат.ESD и как конвертировать образ формата.ESD в.ISO.
  • Выключаем автоматические обновления в Windows 10.

Пользуемся словарём. Если программы не закрыты, они используют ресурс нашего компьютера. Посмотреть, что в реальности происходит, можно в специальной программе ОС Windows. Но не просто посмотреть, а управлять распределением ресурсов с целью повышения быстродействия. Рассмотрим, как повысить приоритет в Диспетчере задач Windows.

Работая со многими программами, компьютер переключается от одной к другой в определённой очерёдности. Те, которые он считает наиболее важными, выполняются первыми. Степень важности и называется приоритетом. Как правило, он управляется кодом самой программы. Но пользователь может сам сменить базовый параметр на какой-либо другой, тем самым сделав более быстрым то, что ему важно в данный момент.

Типы очерёдности

Степень важности имеет следующие градации:

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

Изменение значений очерёдности

Рассмотрим, как выставить приоритет в Диспетчере задач:

ВАЖНО. Помните, что высокие значения для какой-то одной программы могут существенно снизить производительность машины в целом. Повышайте постепенно, и опытным путём найдите ту степень, которая сделает работу комфортной.

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

Как уже было сказано, изменение действует лишь определённый момент времени, пока работает программа. Когда она перезапускается, опять будут базовые значения. Рассмотрим, как можно более удобным способом сменить приоритет задач Windows.

Другие способы работы с быстродействием

Согласитесь, каждый раз экспериментировать с настройками весьма неудобно. Существуют специальные программы, которые позволяют упростить процедуру. Например, Process Explorer и Mz CPU Accelerator. Подробно на них останавливаться не будем, отметим лишь суть их работы.

Mz CPU Accelerator позволяет автоматически повышать значения для программы активного окна, делая это весьма эффективно. Кроме того, она позволяет управлять распределением ресурсов процессора, например, выделить программе одно или два ядра вместо всех. В общем, программа позволяет увеличить скорость работы приложений.

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

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

Инструкция

Нажмите сочетание клавиш «Ctrl+Alt+Delete». На экране появиться список действий, которые можно выполнить.

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

Полезный совет

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

Диспетчер задач можно запустить, если щелкнуть правой кнопкой мыши по панели задач и, в выпавшем меню, выбрать пункт «Диспетчер задач».

Источники:

  • как изменить свои приоритеты

Планировка процессов в UNIX основывается на их приоритете . Обычно каждый процесс имеет два приоритетных атрибута. В Windows существует 32 уровня приоритетов. На компьютере можно ускорять работу программ, которые находятся в операционной системе. Для этого надо только повысить приоритет процесса .

Инструкция

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

Повысить приоритет можно также с помощью утилиты InqSoft Speedballs. Данная отслеживает все процессы. Запустите ее . Повышение приоритета процесса автоматически. Зайдя в «Настройки», вы можете изменить параметры. В меню, где написано «Повышать приоритет до», поставьте галочку на High и нажмите «Применить».

В «Панели управления» зайдите в раздел «Настройка». Выберите пункт «Производительность и обслуживание». Перейдите в меню «Система» и переключитесь на вкладку «Быстродействие». Найдите раздел Application Performance и установите с помощью нужный уровень приоритета процесса .

Если вам надо повысить приоритет процесса в игре, сделайте следующее. Например, возьмите игру World of Warcraft. Откройте «Пуск», далее программу «Блокнот». Вставьте следующий текст: @echo off cd/d "C:/Program Files/World of Warcraft"start/high wow.exe. Измените вот этот путь: "C:/Program Files/World of Warcraft" на новый, который будет у вас. Сохраните написанный ранее текст в «Блокноте», в .bat. Через этот файл запускайте вашу игру. Вы заметите увеличение приоритета.

Источники:

  • как изменить приоритет про

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

Инструкция

Запустите диспетчер задач Windows. Сделать это можно несколькими способами - например, нажатием сочетания клавиш Ctrl + Alt + Delete. В ОС Windows 7 при этом на экране появляется дополнительное меню, в котором следует выбрать пункт «Запустить диспетчер задач», а в более ранних версиях Windows этого промежуточного шага нет. Другой способ открытия диспетчера задач заключается в вызове нажатием сочетания клавиш Win и R окна запуска программ с последующим вводом команды taskmgr и щелчком по кнопке OK.

Перейдите на вкладку «Процессы» окна Диспетчера задач. В общем списке запущенных в настоящее время процессов найдите тот, чей приоритет требуется изменить. Для упрощения поиска нужного названия надписи в колонке «Имя образа» можно отсортировать по алфавиту - щелкните заголовок колонки для сортировки имен процессов в порядке возрастания. Повторный щелчок отсортирует список в обратном порядке.

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

Щелкните правой кнопкой мыши по строке с нужным процессом и раскройте в контекстном меню раздел «Приоритет». По умолчанию все процессы имеют «нормальный» приоритет - измените его выбором любого из шести помещенных в список вариантов. При этом не забывайте, что в некоторых случаях чрезмерное повышение приоритета прикладных программ (пункты «Высокий» и «Реального времени») может привести к заторможенной реакции операционной системы на нажатие клавиш, перемещение мыши и т.д. Эта же неприятность может произойти и при излишнем понижении приоритета системных процессов (например, процесса с именем explorer).