Каждая программа, запущенная в Windows, представляет из себя процесс или несколько процессов.
Под каждый процесс, при его запуске, в системе выделяется память, а так же устанавливается приоритет по умолчанию, если только в самой программе нет упоминания о приоритете, с которым необходимо её запускать.
Чем выше приоритет процесса, тем больше ему выделяется процессорного времени, чем ниже приоритет, тем меньше процессу выделяется процессорного времени.
Или если простым языком — чем выше приоритет, тем чаще и больше процессор «уделяет внимание» процессу и его операциям, а чем ниже приоритет, тем меньше «уделяет внимание».
Соответственно это сказывается на скорости выполнение той или иной программы.
Автоматический запуск процесса с определенным приоритетом
Недостаток, который известен многим — при изменении приоритета через «Диспетчер задач», он сохраняется лишь до завершения процесса, потом же процесс вновь запускается с приоритетом по-умолчанию. Т.е. ваши настройки приоритетов не запоминаются.
Любому процессу в Windows можно вручную через реестр указать приоритет и еще некоторые свойства, с которыми он будет запускаться.
Путь к разделу реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options
Как запустить редактор реестра?
Нажмите сочетание клавиш Win+R (быстрый вызов команды «выполнить»), в появившемся окошке, в текстовой строке наберите regedit и нажмите Enter =)
Для того, что бы указать приоритет для процесса, с которым он должен сразу всегда запускаться, вам нужно в указанной выше ветке реестра создать раздел с его именем.
Далее в нем создать еще один раздел, т.е. уже подраздел с названием PerfOptions, а уже в нем создать параметр DWORD (32бита) с названием CpuPriorityClass и задать ему одно из десятичных значений — 1, 3, 5, 6 или 8.
8 — приоритет Normal (средний);
1 — приоритет Idle (низкий);
3 — приоритет High (высокий);
5 — приоритет BelowNormal (ниже среднего);
6 — приоритет AboveNormal (выше среднего);
Разберем на примере WorldOfTanks.exe.
В ветке ресстра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options я создаю раздел WorldOfTanks.exe.
В нем создаю подраздел PerfOptions. И в этом подразделе создаю параметр DWORD (32бита) с названием CpuPriorityClass c десятичным значением 3.
Вложение 8679
WorldOfTanks.exe теперь у меня всегда будет запускаться с высоким приоритетом (High).
Так же все вышеописанные операции можно делать и через командную строку (cmd).
Есть пакетный файл, который все это делает за пользователя.
Ссылка на пакетный файл:
Вложение 8680
В пакетном файле все пункты расписаны на русском языке. От пользователя потребуется только вводить нужное ему имя процесса и выбирать приоритет.
Для того что бы ваши настройки приоритета вступили в силу, необходимо перезапустить процесс. Если же вы внесли сразу несколько системных процессов, перезагрузите систему, так будет проще.
Это необходимо потому, что данные с реестра считываются только при загрузке и запуске программ, но не при их работе.