우선 순위가 높은 프로세스 실행


14

mplayerIO 프로세스를 포함한 다른 프로세스보다 높은 우선 순위 로 실행하고 싶습니다 . 어떻게해야합니까?


이 질문에 대한 교차 유닉스 변형 답변이 없습니다. 일반적으로 사용중인 OS를 설명하는 것이 좋습니다 (Linux 배포판을 포함하지만 여기서는별로 중요하지 않습니다). linux태그를 추가했습니다 . 사용하지 않는 태그를 변경하십시오.
Gilles 'SO- 악마 그만해'

mplayer의 우선 순위를 높이려는 이유를 물어봐도 될까요? 나는 mplayer의 우선 순위를 높이기 전에 문제가 있었기 때문에 묻습니다 .mplayer는 포스트 프로덕션 청소를 수행하는 데 CPU 시간을 사용하여 바쁘게하고 결국 네트워크가 중단 될 때 중단되기 때문에 달성하려는 것과 반대였습니다. 더 많은 콘텐츠를 얻을 공기가 생겼습니다. mplayer는 다시 네트워크를 기다리기 위해 멈췄습니다.
killermist

나는이 원인을 물었다. 나는 mplayer를 통해 영화를 재생하고있다. 네트워크를 통해 몇 GB 파일을 다운로드하려고 할 때마다. Mplayer는 재생하는 동안 슬라이싱과 저크를 관찰합니다.
SHW

답변:


16

niceness (CPU 바운드)를 설정하려면을 사용하십시오 nice. IO niceness (IO bound)를 설정하려면을 사용하십시오 ionice. 자세한 내용은 해당 매뉴얼 페이지를 참조하십시오. 다음과 같이 함께 사용할 수 있습니다.

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

참고 : 정의 할 수있는 가장 낮은 수준의 niceness (낮을수록 더 유리함)는로 결정됩니다 limits.conf. 내 컴퓨터에서 파일은에 있습니다 /etc/security/limits.conf.


1
io 스케줄러 클래스를 언급하는 것이 좋습니다. 큰 요인 일 수 있습니다. 중간 -c2스케줄링 클래스의 경우 프로세스가 기본적으로 멋진 수준으로 정렬되므로 가치 있는 명령이 실제로 필요하지 않습니다. mplayer를 -c1실시간 수업 에 넣을 수도 있습니다. (루트 액세스 권한이 있음)
mattdm

7

일반적으로 루트가 아닌 사용자는 작업의 우선 순위를 낮추고 늘리는 것은 불가능합니다. 따라서 한 가지 방법은 다른 모든 것의 우선 순위를 낮추는 것입니다. 또는 우선 순위를 처리하는 시스템 레벨에서 무언가를 설정할 수 있습니다.

비교적 현대적인 Linux 배포판을 사용하는 경우 가장 강력한 방법은 제어 그룹을 사용하는 것 입니다. 이것은 초기 단계이므로 기본적으로 모든 것을 수동으로 구성해야하지만 간단히 말하면 분류기는 다른 프로세스를 다른 CPU 제어 그룹에 넣고 mplayer 프로세스에 더 많은 CPU 공유를 제공하도록 분류기를 구성하는 것입니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.