Установка приоритета для программ

В каждой системе Linux одновременно выполняется несколько процессов. Они планируются к выполнению планировщиком ядра, который определяет следующий процесс для выполнения в зависимости от множества факторов. Он использует алгоритм планирования на основе приоритетов для ранжирования и запуска процессов.

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

Как установить приоритет процесса в Linux

Существует два вида приоритетов, связанных с каждым процессом — один — это значение «приятности», которое варьируется от -20 (самый высокий приоритет) до 19 (самый низкий приоритет), а другой — приоритет реального времени, варьирующийся от 1 до 99. Когда мы хотим установить приоритет процесса, мы изменяем значение «приятности» процесса.

ПОСТОЯННЫЙ ПРИОРИТЕТ ЛЮБОМУ ПРОЦЕССУ БЕЗ ПРОГРАММ

Вы можете проверить значение приоритета процесса, используя ps, top или htop.

ps -eo pid,ppid,ni,comm

проверить значение приоритета процесса

Столбец NI в выводе выше показывает значение важности (приоритет). Вы также можете использовать команды top и htop, которые по умолчанию показывают значения niceness.

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

nice -n [niceness-value] [команда args]

Источник: g-soft.info

Как получить / установить приоритет процесса?

Delphi , Программа и Интерфейс , Процессы и Сервисы

Function SetProcessPriority( Priority : Integer ) : Integer;
Var
H : THandle;
Begin
Result := ppNormal;
H := GetCurrentProcess();
If ( Priority = ppIdle ) Then
SetPriorityClass( H, IDLE_PRIORITY_CLASS )
Else If ( Priority = ppNormal ) Then
SetPriorityClass( H, NORMAL_PRIORITY_CLASS )
Else If ( Priority = ppHigh ) Then
SetPriorityClass( H, HIGH_PRIORITY_CLASS )
Else If ( Priority = ppRealTime ) Then
SetPriorityClass( H, REALTIME_PRIORITY_CLASS );
Case GetPriorityClass( H ) Of
IDLE_PRIORITY_CLASS : Result := ppIdle;
NORMAL_PRIORITY_CLASS : Result := ppNormal;
HIGH_PRIORITY_CLASS : Result := ppHigh;
REALTIME_PRIORITY_CLASS : Result := ppRealTime;
End;
End;

Читайте также:
Лучшие программы для odb 2

Function SetProcessPriority( Priority : Integer ) : Integer;

для установки приоритета Вашего приложения, либо:

Function GetProcessPriority : Integer;

для получения приоритета.

Как Поставить Высокий Приоритет Процессу(игре, программе,) в Windows 10. Поднять FPS в Игре.

Пример

Следующий пример изменяет приоритет приложения. Изменение приоритета следует использовать с осторожностью — т.к. присвоение слишком высокого приоритета может привети к медленной работе остальных программ и системы в целом. См. Win32 help for SetThreadPriority() function.

Статья Как получить / установить приоритет процесса? раздела Программа и Интерфейс Процессы и Сервисы может быть полезна для разработчиков на Delphi и FreePascal.

Комментарии и вопросы

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

Источник: www.kansoftware.ru

Установка приоритета для запланированных заданий

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

Для решения этой проблемы есть несколько способов, о которых и пойдет речь дальше.

Редактирование xml-файла

Изменить приоритет выполнения задания напрямую из оснастки планировщика невозможно, но можно выгрузить задание в xml-файл и отредактировать его. Для выгрузки выбираем задание, кликаем по нему правой клавишей и выбираем пункт «Export».

экспорт задания

Затем открываем файл задания, находим раздел Priority и указываем желаемый приоритет. Для запланированных заданий по умолчанию устанавливается значение 7, что означает ниже среднего. Обычно для повышения приоритета достаточно указать значение 5 (выше среднего).

Читайте также:
Программа перекупов для поиска авто

Примечание. Приоритет запланированного задания может принимать значение от 0 до 10, чем ниже значение, тем выше приоритет. Более подробно о приоритетах можно узнать здесь.

редактирование задания в xml-файле

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

импорт задания

Также можно воспользоваться утилитой командной строки schtasks. Вот так будет выглядеть команда для экспорта:

schtasks /Query /XML /TN ″MyTask″ >C:TasksMyTask.xml

А импортировать задание можно командой:

schtasks /Create /TN ″MyTask″ /XML ″C:TasksMyTask.xml″

Настройка приоритета с помощью PowerShell

Начиная с Windows 8Server 2012 настроить приоритет задания можно с помощью PowerShell. Посмотреть текущий приоритет можно так:

$task = Get-ScheduledTask -TaskName ″MyTask″
$task.Settings.Priority

$settings = New-ScheduledTaskSettingSet -Priority 5
Set-ScheduledTask -TaskName ″MyTask″ -Settings $settings

настройка приоритета задания в PowerShell

Групповые политики

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

запланированное задание в GPO

Для таких заданий изменить приоритет можно следующим образом. Сначала в оснастке редактора групповых политик открываем нужный GPO и находим его ID.

свойства GPO

Затем переходим в SYSVOL, открываем директорию с групповыми политиками и находим нужную политику по ее ID.

файл групповой политики

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

редактирование файла групповой политики

Для ускорения можно пройтись по компьютерам и обновить политики командой gpupdate /force.

Источник: windowsnotes.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru