Запустити процес з більш високим пріоритетом


14

Я хочу працювати mplayerз більш високим пріоритетом, ніж будь-які інші процеси, включаючи IO-процеси. Як я можу це зробити?


На це питання немає відповіді крос-unix. Загалом, краще описати, яку ОС ви використовуєте (включаючи дистрибутив для Linux, але тут це не матиме великого значення, якщо взагалі). Я додав linuxтег, будь ласка, змініть його, якщо це не те, що ви використовуєте.
Жиль "ТАК - перестань бути злим"

Ви не заперечуєте, якщо я запитаю, чому ви хочете збільшити пріоритет mplayer? Я запитую, тому що у мене виникли проблеми, коли підвищення пріоритетності mplayer, ефект був протилежним тому, що я намагався досягти, тому що mplayer зайнявся, використовуючи час процесора, роблячи очищення після виробництва, а потім перестав зупинятися, оскільки мережа нарешті зітхнуло повітря, щоб забрати більше вмісту, тоді mplayer заїкається назад до життя, аби просто перемолоти, щоб знову зачекати мережу.
вбивця

Я запитав цю причину, я граю фільм через mplayer. Кожен раз, коли я намагаюся завантажити кілька ГБ файлів через мережу. Mplayer зауважує нарізку та ривок під час гри.
SHW

Відповіді:


16

Щоб встановити приємність (пов'язаний з процесором), використовуйте nice. Щоб встановити приємність IO (пов'язаний з IO), використовуйте ionice. Для отримання додаткової інформації зверніться до відповідних сторінок. Ви можете використовувати їх разом наступним чином:

ionice -c 2 -n 0 nice -n -20 mplayer

Примітка: найнижчий рівень приємності (нижчий означає сприятливіший), який ви можете визначити, визначається limits.conf. На моєму комп’ютері файл знаходиться за адресою /etc/security/limits.conf.


1
Згадування класів йо планувальника добре, тому що це, мабуть, буде великим фактором. Нічого не варто, що для середнього -c2класу планування процеси за замовчуванням сортуються за приємним рівнем, тому приведена вами прикладна команда дійсно не потрібна. Можна спробувати помістити mplayer у -c1клас реального часу. (З кореневим доступом.)
mattdm

7

Взагалі, як некористувач, ви можете лише зменшити пріоритетність своїх завдань, а не збільшувати їх. Отже, одним із підходів було б знизити пріоритет усього іншого. Або ви можете налаштувати щось на системному рівні, що відповідає вашим пріоритетам.

Якщо ви використовуєте відносно сучасний дистрибутив Linux, найпотужніший спосіб був би з групами управління . Це ще в зародковому стані, так що в основному вам доведеться все налаштувати вручну, але, коротше кажучи, потрібно налаштувати категоризатор для розміщення різних процесів у різних контрольних групах процесора, а потім надати процесу mplayer більше спільних процесорних процесів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.