IT TIP

'실시간'프로세스 우선 순위 설정은 무엇입니까?

itqueen 2020. 11. 20. 17:32
반응형

'실시간'프로세스 우선 순위 설정은 무엇입니까?


이전에 읽은 내용에서 Windows 응용 프로그램의 우선 순위를 프로그래밍 방식으로 변경하지 않는 것이 좋습니다. 그렇게 할 경우 '실시간'으로 변경해서는 안됩니다.

'실시간'프로세스 우선 순위 설정은 '높음'및 '보통 이상'과 비교하여 어떤 역할을합니까?여기에 이미지 설명 입력여기에 이미지 설명 입력


실시간 우선 순위 스레드는 타이머 인터럽트에 의해 선점 될 수 없으며 시스템의 다른 스레드보다 높은 우선 순위로 실행됩니다. 따라서 CPU 바운드 실시간 우선 순위 스레드는 기계를 완전히 망칠 수 있습니다.

실시간 우선 순위 스레드를 생성하려면 권한 ( SeIncreaseBasePriorityPrivilege )이 필요 하므로 관리자 만 수행 할 수 있습니다.

Vista 이상에서는 실시간 우선 순위로 실행해야하는 응용 프로그램에 대한 한 가지 옵션은 MMCSS ( Multimedia Class Scheduler Service )를 사용하여 스레드 우선 순위를 관리하는 것입니다. MMCSS는 응용 프로그램이 CPU 시간을 너무 많이 사용하는 것을 방지하므로 시스템을 탱킹하는 것에 대해 걱정할 필요가 없습니다.


간단히 말해서 "실시간"우선 순위 클래스는 "높음"우선 순위 클래스보다 높습니다. 나는 그것보다 더 많은 것이 없다고 생각합니다. 오 예 SeIncreaseBasePriorityPrivilege-Real Time 클래스에 스레드를 넣어야합니다.

Windows는 때때로 여러 가지 이유로 스레드의 우선 순위를 높이지만 스레드의 우선 순위를 다른 우선 순위 클래스로 높이지는 않습니다. 또한 실시간 우선 순위 클래스에서 스레드의 우선 순위를 높이 지 않습니다. 따라서 높은 우선 순위 스레드는 실시간 우선 순위 클래스로의 자동 임시 향상을 얻지 못합니다.

Windows에서 우선 순위를 처리하는 방법에 대한 Russinovich의 "Inside Windows"장은 이것이 어떻게 작동하는지 배우는 데 유용한 리소스입니다.

일반 Windows 시스템에서 실시간 우선 순위를 갖는 스레드에는 전혀 문제가 없습니다. 전용 시스템에서 실행되는 특수 프로세스에 반드시 필요한 것은 아닙니다. 멀티미디어 드라이버 및 / 또는 프로세스에 실시간 우선 순위가있는 스레드가 필요할 수 있다고 생각합니다. 그러나 이러한 스레드는 많은 CPU를 필요로하지 않아야합니다. 정상적인 시스템 이벤트가 처리되도록하려면 대부분의 시간을 차단해야합니다.


사용 가능한 가장 높은 우선 순위 설정이며 일반적으로 특정 프로그램을 실행하는 전용 상자에서만 사용됩니다. 실제로 키보드 및 마우스 스레드가 응답하지 않을 정도로 기아 상태를 일으킬 수있을만큼 충분히 높습니다.

그래서 기본적으로 물어봐야한다면 사용하지 마세요 :)


실시간 은 프로세스에 사용할 수 있는 가장 높은 우선 순위 클래스 입니다. 따라서 '높음'과는 한 단계 더 크다는 점에서, '정상 이상'은 두 단계 더 크다는 점에서 다릅니다.

마찬가지로 실시간도 스레드 우선 순위 수준입니다.

프로세스 우선 순위 클래스 는 프로세스의 모든 유효 스레드 우선 순위를 높이거나 낮추므로 '기본 우선 순위'로 간주됩니다.

따라서 프로세스에는 다음이 있습니다.

  1. 기본 프로세스 우선 순위 클래스 .
  2. 개별 스레드 우선 순위 , 기본 우선 순위 클래스의 오프셋.

실시간은 실행중인 다른 프로세스를 절대적으로 선점해야하는 응용 프로그램을 위해 예약되어야하므로 우연한 사용을 방지하기위한 특별한 보안 권한이 있습니다. 이는 보안 정책에 의해 정의됩니다.

NT6 + (Vista +)에서 Vista Multimedia Class Scheduler를 사용하면 실시간 OS 아닌 곳 에서 실시간 작업을 수행 할 수 있습니다. 대부분의 경우 작동하지만 OS가 실시간 작업을 위해 설계되지 않았기 때문에 완벽하지는 않습니다.

Microsoft는이 우선 순위를 매우 위험하다고 생각합니다. 매우 특수한 상황을 제외하고는 어떤 응용 프로그램도 사용해서는 안되며 일시적인 필요로도 사용을 제한하려고합니다.


Windows가 프로그램이 보통보다 높은 우선 순위를 사용한다는 것을 알게되면 프로세스의 우선 순위를 제한하는 것처럼 보입니다.

우선 순위를 IDLE에서 REALTIME으로 설정해도 CPU 사용량은 변경되지 않습니다.

내 멀티 프로세서 AMD CPU에서 마지막 CPU와 같은 CPU 중 하나를 떨어 뜨리면 CPU 사용량이 MAX가되고 마지막 CPU는 유휴 상태로 유지된다는 것을 발견했습니다. 쿼드 AMD에서 프로세서 속도가 75 %로 증가합니다.

작업 관리자 사용-> 프로세스 선택-> 프로세스를 마우스 오른쪽 버튼으로 클릭-> 선택-> 선호도 설정 마지막 프로세서를 제외한 모든 것을 클릭하십시오. CPU 사용량은 나머지 프로세서의 MAX로 증가하고 비디오 처리가 증가하면 프레임 수가 증가합니다.


기본적으로 다른 모든 것에서 더 높거나 더 큽니다. 키보드는 실시간 프로세스보다 우선 순위가 낮습니다. 즉, 프로세스가 키보드보다 빠르게 고려되며 처리 할 수 ​​없으면 키보드 속도가 느려집니다.


실시간 이전의 다른 모든 답변과 마찬가지로 해당 프로그램에 최우선 순위 클래스를 제공합니다. 해당 프로그램이 처리 될 때까지 아무 것도 처리되지 않습니다.
펜티엄 4 컴퓨터에서는 게임 성능이 크게 향상되고 시스템이 완전히 안정된 것처럼 보이기 때문에 마인 크래프트를 실시간으로 많이 설정했습니다. 따라서 실시간은 보이는 것만 큼 나쁘지 않습니다. 멀티 코어가 특정 코어 또는 코어에 대한 프로그램의 선호도를 설정 한 경우 (모두가 아닌 경우에만 실시간으로 실행될 수 있도록하기 위해) 설정 프로그램이 중단됨) 우선 순위를 실시간으로 설정합니다.

참고 URL : https://stackoverflow.com/questions/1663993/what-is-the-realtime-process-priority-setting-for

반응형