SIGSTOP을 사용하는 데스크탑이 CPU 성능을 절약할 수 있습니까?

SIGSTOP을 사용하는 데스크탑이 CPU 성능을 절약할 수 있습니까?

GNU/Linux에서는 $kill -STOP을 사용하여 SIGSTOP 신호를 보낸 다음 SIGCONT를 보내 다시 활성화할 수 있습니다.

이는 최소화된 Firefox 창 "Isolated Web Co"에서 약 11%의 소비를 방지하여 CPU 성능을 절약합니다.

 
     PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
   28112 test     20   0 2824208 337744 126840 S  11.3   2.1   0:14.89 Isolated Web Co

프로세스/스레드의 CPU 부하를 최소화하기 위해 SIGSTOP을 프로세스 스레드 트리로 보내는 방법을 통합하는 데스크톱 UI가 있습니까?

나는 분명히 내가 듣고 있는 최소화된 Spotify에서는 이 작업을 수행하지 않을 것입니다!

그래서 이 행동은

  1. 제목 표시줄을 마우스 오른쪽 버튼으로 클릭하고 "최소화 및 중지"를 선택합니다.
  2. 작업 표시줄의 아이콘을 클릭하면(예: GNOME Classic에서) 응용 프로그램이 SIGCONT를 수신하고 창이 다시 최대화됩니다.

이것은 현재 그놈 클래식 컨텍스트 메뉴 항목입니다.

나는 또 다른 "최소화 및 일시 중지"를 원합니다. 그러면 SIGSTOP 통신이 전송됩니다.

답변1

대화형 프로세스를 중지하는 것은 사용자 기능 기대치를 깨는 훌륭한 방법입니다. 최신 데스크톱 응용 프로그램은 실제로 메시지 버스를 통해 나머지 데스크톱 환경과 긴밀하게 통합되기 때문입니다. 따라서 귀하의 접근 방식은 유혹적으로 들리지만 실제로는 나쁜 생각입니다. 말할 것도 없이 X 윈도우가 응답을 멈추게 할 수는 없습니다...

아니요, 제가 아는 데스크탑 환경에는 그러한 해킹이 존재하지 않는다고 생각합니다.

당신을 위해 뭔가를 하는 것은 바로 당신의 브라우저라는 점에 유의하십시오. 올바른 일은 브라우저가 하고 있는 일에 접근하여 당신에게 쓸모가 없다면 멈추는 것입니다. 나는 이것이 사실이라고 생각합니다. 예를 들어 브라우저 탭의 채팅 클라이언트는 서버에서 지속적으로 상태 메시지를 받고 보내야 할 수도 있고, 온라인 워드 프로세싱 도구의 동기화가 중단되어서는 안되며, 캐시가 압축 또는 그런.

그럼에도 불구하고 소프트웨어 디자이너는 일반적으로 이러한 백그라운드 작업에 낮은 우선 순위를 할당하므로(여기서 그런지 확실하지 않음) 일반적으로 CPU가 더 이상 할 일이 없을 때만 실행됩니다. 즉, 성능에 큰 영향을 미치지 않습니다. 운영 체제가 CPU 코어를 완전히 절전 모드로 전환하는 것을 방지할 수 있기 때문에 여전히 전력을 소비하여 배터리 구동 런타임을 줄일 수 있습니다.

이는 여전히 다소 바람직하지 않지만 프로세스 일시 중지/깨우기(TCP 시간 초과로 인한 재설정, WiFi 카드에 높은 전송 전력이 필요한 경우 대량의 차단)로 인해 발생할 수 있는 부정적인 영향과 실제 영향을 비교해야 합니다. 높은 데이터 속도의 데이터 전송을 달성하려면 이 일이 발생하는 동안 기다려야 한다는 간단한 사실이 있습니다. 즉, 더 오랜 시간 동안 최대 밝기로 시청하게 된다는 의미입니다. 모든 요소는 에너지 절약에 영향을 미칩니다!

답변2

killall -SIGSTOP firefox-bin여기서는 잘 작동합니다. 나는 어떤 부작용도 관찰하지 못했습니다.

원한다면 Firefox를 중지하고 다시 시작하는 바탕화면 바로가기를 만들 수 있습니다.

SIGCONT다시 덮다.

관련 정보