기본적으로 특정 프로세스에 더 높은 우선순위를 할당합니다.

기본적으로 특정 프로세스에 더 높은 우선순위를 할당합니다.

특정 프로그램(해당 프로그램을 실행하는 프로세스)을 실행할 때마다 해당 프로세스에 높은 우선 순위가 할당되도록 데스크탑 Linux 시스템을 구성하고 싶습니다. 어떻게 해야 하나요?

실행 중인 프로그램(즉, 특정 프로세스)의 각 인스턴스에 대해 이 작업을 개별적으로 수행할 수 있다는 것을 알고 있습니다. 하지만 프로그램(즉, 향후 모든 프로세스)의 기본값을 구성하는 방법은 무엇입니까?

커널 버전: 4.10.11-200.fc25.x86_64

답변1

"라는 프로그램이 있습니다.자동 좋은 데몬” 백그라운드에서 실행되며 특정 패턴과 일치하는 프로세스가 프로세스 테이블에 나타나면 자동으로 친숙성을 설정합니다.

사용할 수 있습니다. 그러나 Linux 스케줄러에는 균형을 맞춰야 할 부분이 많고 우선 순위를 높인다고 해서 반드시 마법처럼 속도가 향상되는 것은 아니기 때문에 약간 실망할 수도 있습니다. 무언가를 생성하는 상황에 직면할 수도 있습니다.더 나쁜, 우선 순위가 높은 프로세스가 애플리케이션이 실제로 의존할 수 있는 우선 순위가 낮은 프로세스를 "고갈"시킬 수 있기 때문입니다.

대신에 다음과 같은 것을 볼 수 있습니다.동조에는 다양한 워크로드에 대한 성능 프로필이 있습니다.또는, 모험심이 느껴진다면 확인해 보세요.Con Kolivas 데스크탑 스케줄러 패치, 데스크탑 경험을 최적화하도록 설계되었습니다. 이는 실제로 측정하기 어렵고 다소 논란의 여지가 있습니다. 많은 사람들이 이를 확신하는 반면 다른 사람들은 회의적입니다. (최신 버전의 Linux에 대한 주간 뉴스 기사가 다음 사이트에 있습니다.MuQSS CPU 스케줄러— 현재는 유료이지만 5월 4일부터 무료가 될 예정입니다. )

답변2

당신은 조사하고 싶을 것입니다좋아요그리고레니스유용. 프로세스에 더 높은 CPU 우선순위를 부여하려면 루트/sudo 권한이 있어야 합니다. nice더 높은 우선순위로 프로세스를 시작 하거나 renice나중에 더 높은 우선순위로 변경할 수 있습니다.

(terminal1):~# nice -n -10 sleep 100
(terminal2):~# top -b -n1 | grep sleep
23580 root      10 -10    4508   1244   1156 S 0.000 0.008   0:00.00 sleep
(terminal1):~# sleep 100
(terminal2):~# top -b -n1 | grep sleep
23888 root      20   0    4508   1316   1228 S 0.000 0.008   0:00.00 sleep
(terminal2):~# renice -n -10 23888
23888 (process ID) old priority 0, new priority -10
(terminal2):~# top -b -n1 | grep sleep
23888 root      10 -10    4508   1356   1268 S 0.000 0.008   0:00.00 sleep

관련 정보