Bagikan melalui


Layanan Penjadwal Kelas Multimedia

Layanan Multimedia Class Scheduler (MMCSS) memungkinkan aplikasi multimedia untuk memastikan bahwa pemrosesan sensitif waktu mereka menerima akses yang diprioritaskan ke sumber daya CPU. Layanan ini memungkinkan aplikasi multimedia untuk memanfaatkan CPU sebanyak mungkin tanpa menolak sumber daya CPU ke aplikasi berprioritas lebih rendah.

MMCSS menggunakan informasi yang disimpan dalam registri untuk mengidentifikasi tugas yang didukung dan menentukan prioritas relatif utas yang melakukan tugas-tugas ini. Setiap utas yang melakukan pekerjaan yang terkait dengan tugas tertentu memanggil fungsi AvSetMmMaxThreadCharacteristics atau AvSetMmThreadCharacteristics untuk memberi tahu MMCSS bahwa ia sedang mengerjakan tugas tersebut.

Untuk contoh program yang menggunakan MMCSS, lihat Aliran Mode Eksklusif.

Windows Server 2003 dan Windows XP: MMCSS tidak tersedia.

Pengaturan Registri

Pengaturan MMCSS disimpan dalam kunci registri berikut:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Multimedia\SystemProfile

Kunci ini berisi nilai REG_DWORD bernama SystemResponsiveness yang menentukan persentase sumber daya CPU yang harus dijamin untuk tugas berprioritas rendah. Misalnya, jika nilai ini adalah 20, maka 20% sumber daya CPU dicadangkan untuk tugas berprioritas rendah. Perhatikan bahwa nilai yang tidak dapat dibagi secara merata sebesar 10 dibulatkan ke kelipatan 10 terdekat. Nilai 0 juga diperlakukan sebagai 10.

Kunci juga berisi subkunjuk bernama Tugas yang berisi daftar tugas. Secara default, Windows mendukung tugas-tugas berikut:

  • Audio
  • Menangkap
  • Distribusi
  • Permainan
  • Mainkan kembali
  • Pro Audio
  • Manajer Jendela

OEM dapat menambahkan tugas tambahan sesuai kebutuhan.

Setiap kunci tugas berisi sekumpulan nilai berikut yang mewakili karakteristik yang akan diterapkan ke utas yang terkait dengan tugas.

Nilai Format Nilai yang memungkinkan
Afinitas REG_DWORD Bitmask yang menunjukkan afinitas prosesor. Baik 0x00 maupun 0xFFFFFFFF menunjukkan bahwa afinitas prosesor tidak digunakan.
Latar Belakang Saja REG_SZ Menunjukkan apakah ini adalah tugas latar belakang (tidak ada antarmuka pengguna). Alur tugas latar belakang tidak berubah karena perubahan fokus jendela. Nilai ini dapat diatur ke True atau False.
BackgroundPriority REG_DWORD Prioritas latar belakang. Rentang nilai adalah 1-8.
Laju Jam REG_DWORD Petunjuk yang digunakan oleh MMCSS untuk menentukan granularitas penjadwalan sumber daya prosesor. Windows Server 2008 dan Windows Vista: Tingkat jam maksimum yang dijamin yang digunakan sistem jika utas bergabung dengan tugas ini, dalam interval 100 nanodetik. Dimulai dengan Windows 7 dan Windows Server 2008 R2, jaminan ini dihapus untuk mengurangi konsumsi daya sistem.
Prioritas GPU REG_DWORD Prioritas GPU. Rentang nilai adalah 0-31. Prioritas ini belum digunakan.
Prioritas REG_DWORD Prioritas tugas. Rentang nilai adalah 1 (rendah) hingga 8 (tinggi). Untuk tugas dengan Kategori Penjadwalan Tinggi, nilai ini selalu diperlakukan sebagai 2.
Kategori Penjadwalan REG_SZ Kategori penjadwalan. Nilai ini dapat diatur ke Tinggi, Sedang, atau Rendah.
Prioritas SFIO REG_SZ Prioritas I/O terjadwal. Nilai ini dapat diatur ke Diam, Rendah, Normal, atau Tinggi. Nilai ini tidak digunakan.

 

Catatan

Untuk menghemat daya, aplikasi tidak boleh mengatur resolusi timer di seluruh sistem ke nilai kecil kecuali benar-benar diperlukan. Untuk informasi selengkapnya, lihat Performa di Panduan Pengembang Windows 7.

 

Prioritas Utas

MMCSS meningkatkan prioritas utas yang bekerja pada tugas multimedia prioritas tinggi.

MMCSS menentukan prioritas utas menggunakan faktor-faktor berikut:

  • Prioritas dasar tugas.
  • Parameter Prioritas fungsi AvSetMmThreadPriority .
  • Apakah aplikasi berada di latar depan.
  • Berapa banyak waktu CPU yang dikonsumsi oleh utas di setiap kategori.

MMCSS menetapkan prioritas utas klien tergantung pada kategori penjadwalannya.

Kategori Prioritas Deskripsi
Tinggi 23-26 Utas ini berjalan pada prioritas utas yang lebih rendah dari hanya tugas tingkat sistem tertentu. Kategori ini dirancang untuk tugas Pro Audio.
Medium 16-22 Utas ini adalah bagian dari aplikasi yang berada di latar depan.
Rendah 8-15 Kategori ini berisi sisa utas. Mereka dijamin persentase minimum sumber daya CPU jika diperlukan.
1-7 Utas ini telah menggunakan kuota sumber daya CPU mereka. Mereka dapat terus berjalan jika tidak ada utas berprioritas rendah yang siap dijalankan.