Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Служба планировщика класса мультимедиа (MMCSS) позволяет мультимедийным приложениям гарантировать, что их обработка с учетом времени получает приоритетный доступ к ресурсам ЦП. Эта служба позволяет приложениям мультимедиа использовать всю мощность ЦП без ограничения ресурсов ЦП для приложений с более низким приоритетом.
MMCSS использует сведения, хранящиеся в реестре, для определения поддерживаемых задач и определения относительного приоритета потоков, выполняющих эти задачи. Каждый поток, выполняющий работу, связанную с определенной задачей, вызывает функцию AvSetMmMaxThreadCharacteristics или AvSetMmThreadCharacteristics , чтобы сообщить MMCSS, что она работает над этой задачей.
Пример программы, использующей MMCSS, см. в разделеExclusive-Mode Streams.
Windows Server 2003 и Windows XP: MMCSS недоступна.
Параметры реестра
Параметры MMCSS хранятся в следующем разделе реестра:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile
Этот ключ содержит значение REG_DWORD с именем SystemResponsiveness , определяющее процент ресурсов ЦП, которые должны быть гарантированы задачами с низким приоритетом. Например, если это значение равно 20, то для задач с низким приоритетом зарезервированы 20% ресурсов ЦП. Обратите внимание, что значения, которые не делятся на 10 без остатка, округляются вниз до ближайшего кратного 10. Значения ниже 10 и выше 100 зажаты до 20. Значение 100 отключает MMCSS (драйвер возвращает STATUS_SERVER_DISABLED).
Ключ также содержит подраздел с именем Tasks , который содержит список задач. По умолчанию Windows поддерживает следующие задачи:
- Аудио
- возможность использования функции записи.
- Распределение
- Игры
- Воспроизведение
- Pro Audio
- Диспетчер окон
Изготовители оборудования могут добавлять дополнительные задачи по мере необходимости.
Каждый ключ задачи содержит следующий набор значений, представляющих характеристики, применяемые к потокам, связанным с задачей.
| Ценность | Формат | Возможные значения |
|---|---|---|
| Сходство | REG_DWORD | Битовая маска, указывающая процессорную привязку. Оба значения 0x00 и 0xFFFFFFFF указывают на то, что привязка процессора не используется. |
| Только фон | REG_SZ | Указывает, является ли это фоновой задачей (без пользовательского интерфейса). Потоки фоновой задачи не изменяются из-за изменения фокуса окна. Это значение может иметь значение True или False. |
| BackgroundPriority | REG_DWORD | Фоновый приоритет. Диапазон значений равен 1–8. |
| Тактовая частота | REG_DWORD | Указание, используемое MMCSS для определения детализации планирования ресурсов процессора. Windows Server 2008 и Windows Vista: Максимальная гарантированная тактовая частота, используемая системой, если поток присоединяется к этой задаче, измеряется в 100-наносекундных интервалах. Начиная с Windows 7 и Windows Server 2008 R2, эта гарантия была удалена для снижения потребления электроэнергии системы. |
| Приоритет GPU | REG_DWORD | Приоритет GPU. Диапазон значений равен 0–31. Этот приоритет еще не используется. |
| Приоритет | REG_DWORD | Приоритет задачи. Диапазон значений составляет от 1 (низкого) до 8 (высокого). Для задач с категорией Высокий это значение всегда рассматривается как 2. |
| Категория планирования | REG_SZ | Категория расписания. Это значение может иметь значение High, Medium или Low. |
| Приоритет SFIO | REG_SZ | Приоритет запланированного ввода-вывода. Это значение можно задать как "Простой", "Низкий", "Обычный" или "Высокий". Это значение не используется. |
Замечание
Чтобы сохранить мощность, приложения не должны устанавливать разрешение системного таймера на небольшое значение, если это не обязательно. Для получения дополнительной информации см. раздел Производительность в Руководстве разработчиков Windows 7.
Приоритеты потоков
MMCSS повышает приоритет потоков, работающих над высокоприоритетными мультимедийными задачами.
MMCSS определяет приоритет потока с помощью следующих факторов:
- Базовый приоритет задачи.
- Параметр Priority в функции AvSetMmThreadPriority.
- Указывает, находится ли приложение на переднем плане.
- Сколько времени ЦП потребляется потоками в каждой категории.
MMCSS задает приоритет клиентских потоков в зависимости от их категории планирования.
| Категория | Приоритет | Описание |
|---|---|---|
| Высоко | 23-26 | Эти потоки выполняются с приоритетом, который ниже, чем у большинства системных задач. Эта категория предназначена для задач Pro Audio. |
| Средний | 16-22 | Эти потоки являются частью приложения, которое находится на переднем плане. |
| Низкий уровень | 8-15 | Эта категория содержит оставшуюся часть потоков. При необходимости они гарантируют минимальный процент ресурсов ЦП. |
| 1-7 | Эти потоки использовали квоту процессорного ресурса. Они могут продолжать выполняться, если потоки с низким приоритетом не готовы к запуску. |