Подтвердить что ты не робот

Какова настройка приоритета процесса в режиме реального времени?

Из того, что я читал в прошлом, вам не рекомендуется программно изменять приоритет ваших приложений Windows, и если вы это сделаете, вам никогда не следует менять их на "В реальном времени".

Что делает настройка приоритета процесса "Реальное время" по сравнению с "Высоким" и "Выше нормального"? enter image description here enter image description here

4b9b3361

Ответ 1

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

Создание потоков приоритета в реальном времени требует привилегии (SeIncreaseBasePriorityPrivilege), поэтому это может быть сделано только администратором.

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

Ответ 2

Просто класс приоритета "В реальном времени" выше класса приоритетов "Высокий". Я не думаю, что там гораздо больше. О да, вы должны иметь SeIncreaseBasePriorityPrivilege, чтобы поместить поток в класс Real Time.

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

Руссинович "Внутри Windows" глава о том, как Windows обрабатывает приоритеты, - отличный ресурс для изучения того, как это работает:

Обратите внимание, что нет абсолютно никаких проблем с потоком, имеющим приоритет в реальном времени в обычной системе Windows, - они не обязательно для специальных процессов, запущенных на машинах dedicatd. Я полагаю, что для мультимедийных драйверов и/или процессов могут потребоваться потоки с приоритетом в реальном времени. Однако такой поток не должен требовать большого количества CPU - он должен блокировать большую часть времени, чтобы нормальные системные события могли обрабатывать.

Ответ 3

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

Итак, если вам нужно спросить, не используйте его:)

Ответ 4

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

Аналогично, в режиме реального времени также есть уровень приоритета потока.

Класс приоритета процесса повышает или понижает все эффективные приоритеты потоков в процессе и поэтому считается "базовым приоритетом".

Итак, процесс имеет:

  • Класс приоритета базового процесса.
  • Индивидуальные приоритеты потока, смещения базового класса приоритета.

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

В NT6 + (Vista +) использование планировщика классов мультимедиа Vista - это правильный способ добиться операций в реальном времени в том, что не является оперативной ОС. Он работает, по большей части, хотя и не идеален, поскольку ОС не предназначена для операций в реальном времени.

Microsoft считает этот приоритет очень опасным, справедливо. Ни одно приложение не должно использовать его, кроме как в особых обстоятельствах, и даже тогда попытаться ограничить его использование во временные потребности.

Ответ 5

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

Установка приоритета из IDLE в REALTIME НЕ меняет использование ЦП.

Я нашел на своем многопроцессорном процессоре AMD, что, если я отброшу один из процессоров, как LAST, использование процессора будет MAX OUT, а последний CPU останется бездействующим. Скорость процессора увеличивается до 75% на моей Quad AMD.

Используйте Диспетчер задач → выберите процесс- > Щелкните правой кнопкой мыши процесс- > Выбрать- > Установить аффинность Нажмите все, кроме последнего процессора. Использование процессора будет увеличиваться до MAX на оставшихся процессорах и количество кадров, если обработка видео увеличится.

Ответ 6

В основном он выше/выше во всем остальном. Клавиатура менее важна, чем процесс реального времени. Это означает, что процесс будет учитываться быстрее, чем клавиатура, и если он не сможет справиться с этим, тогда ваша клавиатура будет замедлен.

Ответ 7

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