Ejecute el proceso con mayor prioridad


14

Quiero ejecutar mplayercon mayor prioridad que cualquier otro proceso, incluidos los procesos IO. ¿Cómo puedo hacer eso?


No hay una respuesta variante cross-unix a esta pregunta. En general, es mejor describir qué sistema operativo está utilizando (incluida la distribución para Linux, pero aquí no importará mucho). He agregado una linuxetiqueta, cámbiela si eso no es lo que está usando.
Gilles 'SO- deja de ser malvado'

¿Te importa si te pregunto por qué estás buscando aumentar la prioridad de mplayer? Pregunto porque he tenido problemas antes de aumentar la prioridad de mplayer, el efecto fue opuesto a lo que estaba tratando de lograr porque mplayer se ocuparía de usar el tiempo de CPU haciendo la limpieza posterior a la producción, y luego se detendría cuando la red finalmente consiguió una bocanada de aire para ir a buscar más contenido, luego mplayer volvería a tartamudear a la vida, solo para detenerse nuevamente esperando la red.
Killermist

Pregunté por esta causa, estoy reproduciendo una película a través de mplayer. Cada vez que intento descargar algunos archivos GB a través de la red. Mplayer observa cortes y un tirón mientras juega.
SHW

Respuestas:


16

Para establecer la bondad (uso de la CPU) nice. Para establecer la simplicidad IO (IO obligado) use ionice. Consulte las respectivas páginas de manual para obtener más información. Puedes usarlos juntos de la siguiente manera:

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

Nota: el nivel más bajo de simpatía (más bajo significa más favorable) que puede definir está determinado por limits.conf. En mi computadora, el archivo se encuentra en /etc/security/limits.conf.


1
Mencionar las clases del planificador io es bueno, porque es probable que sea un gran factor. No vale la pena que para la clase de -c2programación media, los procesos están ordenados por defecto por el nivel agradable, por lo que el comando de ejemplo que ha dado realmente no es necesario. Uno podría intentar poner mplayer en la -c1clase en tiempo real. (Con acceso de root.)
mattdm

7

En general, como usuario no root, solo puede disminuir la prioridad de sus tareas, no aumentarlas. Entonces, un enfoque sería reducir la prioridad de todo lo demás. O bien, puede configurar algo en el nivel del sistema que maneje sus prioridades.

Si está utilizando una distribución de Linux relativamente moderna, la forma más poderosa sería con grupos de control . Esto está en sus inicios, por lo que básicamente tendría que configurar todo a mano, pero en resumen lo que desea es configurar el categorizador para colocar diferentes procesos en diferentes grupos de control de la CPU y luego darle al proceso de mplayer más recursos compartidos de la CPU.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.