Як дати найвищий пріоритет процесу. Підвищення пріоритету в Менеджері завдань операційної системи Windows. Як змінити пріоритет запущених програм

Відповідь від Null[гуру]
Спочатку виконується одна команда одного процесу, потім іншого, потім друга команда першого процесу, і таке інше. Пріоритет процесу вказує на частоту звернення процесора до нього, тобто чим вищий пріоритет, тим вища швидкість роботи програми, але це уповільнює роботу інших процесів.


Відповідь від Просвітлення[активний]
Відразу після перемикання контексту ядро ​​запускає алгоритм планування виконання процесів вибираючи виконання процес із найвищим пріоритетом серед процесів, що у станах " резервування " і " готовності до виконання, будучи завантаженим на згадку " . Розглядати процеси, не завантажені на згадку, немає сенсу, оскільки будучи завантажений, процес може виконуватися. Якщо найвищий пріоритет мають відразу кілька процесів, ядро, використовуючи принцип кільцевого списку (каруселі), вибирає серед них той процес, який перебуває в стані "готовності до виконання" довше за інші. Загалом до якої прозі звертаєшся та має пріоритет але разом з нею є ще й інші процеси які повинні з нею брати участь, звідси і йде пріоритет. . в режимі реального часу означає щомиті.

Давайте поговоримо про пріоритети Windows процесів. У більшості випадків «грати» з налаштуванням пріоритетів немає необхідності, але іноді грамотний системний адміністратор може допомогти системі більш правильно розподілити процесорний час між запущеними завданнями. Єдиного рецепту немає, але шляхом «підбору та перебору» це цілком реалізовано. Де це може знадобитися? Наприклад, у зв'язці 1С-SQL можна дати більше процесорного часу 1С і SQL як найбільш критичним до ресурсів процесів.

Загалом, подивитися та змінити пріоритет запущеного процесу можна через Task Manager

WindowsNT/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 IdleIdleIdleIdleIdle
2 Lowest
3 Below …
4 Idle class NormalLowest
5 Above …Below …
6 Below normal class HighestNormalLowest
7 Above …Below …
8 Normal class HighestNormalLowest
9 Above …Below …
10 Above normal class HighestNormal
11 Above …Lowest
12 HighestBelow …
13 High class Normal
14 Above …
15 Highest
15 Time criticalTime criticalTime criticalTime criticalTime 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 NORMAL priority class.
HIGH Start application в High priority class.
REALTIME Start application в REALTIME priority class.
ABOVENORMAL Start application в ABOVENORMAL priority class.
BELOWNORMAL Start application в 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"

Інструкція

Натисніть клавіші Ctrl+Alt+Delete. На екрані з'явиться список дій, які можна виконати.

У вікні диспетчера завдань, що відкрилося, перейдіть на вкладку «Додатки».

Виберіть програму, яку потрібно змінити. Клацніть по ній правою кнопкою миші і, в меню, натисніть пункт «Перейти до процесів». Усі програми, що виконуються на комп'ютері, мають свої процеси, саме для них і встановлюються пріоритети.

У меню встановіть середній, високий, низький або інший пріоритет.

Корисна порада

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

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

Джерела:

  • як змінити свої пріоритети

Планування процесів у UNIX ґрунтується на їхньому пріоритеті. Зазвичай кожен процес має два пріоритетні атрибути. У Windows існує 32 рівні пріоритетів. На комп'ютері можна прискорювати роботу програм, які перебувають у операційній системі. Для цього треба лише підвищити пріоритет процесу.

Інструкція

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

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

У розділі «Панелі керування» зайдіть у розділ «Налаштування». Виберіть «Продуктивність та обслуговування». Перейдіть в меню «Система» та перейдіть на вкладку «Швидкодія». Знайдіть розділ Application Performance та встановіть за допомогою стрілочки потрібний рівень пріоритету процесу.

Можна підвищити пріоритет процесу і в Linux. Робиться це через консоль. Натисніть top - перед вами з'явиться текст. Тепер можна виконувати різні дії. Щоб підвищити пріоритет, натисніть кнопку на клавіатурі r.

Якщо вам потрібно підвищити пріоритет процесу у грі, зробіть таке. Наприклад, візьміть гру 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).