Windows의 "시스템 인터럽트"프로세스 란 무엇입니까?


16

내 시스템은 AMD A10 5750m CPU, R9 M290X GPU, 8GB, 1TB가 장착 된 노트북 시스템입니다. 나는 항상“시스템 인터럽트”라고 불리는 프로세스가 활성 상태임을 알았습니다.이 시점에서 평균 1.5 %의 CPU를 소비합니다.

나는 모든 곳을 수색했지만이 과정에 대해 아무것도 찾지 못했습니다. 나는 프로세스가 매우 높은 CPU 값을 소비하는 사람들을 찾았습니다. 정상입니까? CPU의 최소한의 부분을 소비하여 항상 활성화됩니까?

답변:


29

"시스템 인터럽트"는 일반적인 의미의 프로세스는 아니지만 컴퓨터가 인터럽트 요청을 처리하는 CPU 리소스의 1.5 %를 소비하고 있음을 사용자에게 설명하려고합니다. 인터럽트는 OS 수준 아래에서 발생하므로 특정 프로세스와 관련이 없습니다.

시스템의 하드웨어 구성 요소가 CPU에 "오류가 발생 했음"또는 "요청한 데이터를 사용할 수 있습니다"또는 "이 장치가 데이터를 보내려고합니다"와 같은 것을 CPU에 알릴 수 있도록 인터럽트 (IRQ) 가 존재합니다. 장치 나 소프트웨어가 CPU가 수행하는 작업에 대해 무언가를 말하거나 CPU에게 무언가를 지시해야 할 때마다 CPU가 수신하고 처리 하는 인터럽트가 발생합니다 . 이런 일이 발생하면 CPU는 인터럽트를 처리 할 수 ​​있도록 작업을 즉시 중단합니다.

프로세스로 볼 때 다른 관련 항목은 지연된 프로 시저 호출 (DPC) 이며, 이는 비동기 방식으로 발생한 인터럽트에 대한 응답으로 직접 또는 간접적으로 호출되는 OS 함수입니다. 시스템 인터럽트와 DPC 처리를 함께 추가하면 일반적으로 IRQ 처리에 응답하는 사용중인 리소스의 양을 추정 할 수 있습니다.

좋은 인터럽트와 나쁜 인터럽트가 있습니다. 인터럽트 처리에 많은 시간을 소비하는 경우 하나 이상의 하드웨어가 고장 일 가능성이 큽니다. 반면에 많은 하드웨어는 타이밍 및 기타 유용한 목적으로 IRQ를 사용합니다. 예를 들어, PCI 버스는 IRQ를 사용하여 특정 순간에 버스를 사용하는 장치를 제어하여 모든 장치가 버스를 효율적으로 공유합니다.

1.5 %에서는 모든 것이 정상으로 들립니다.


1
답변 주셔서 감사합니다. 몇 퍼센트의 소비가 저를 걱정해야합니까? 문제가 발생하면 어떤 하드웨어가 고장인지 어떻게 알 수 있습니까?
Daniel

CPU의 주파수에 따라 다릅니다. 1.5에 불과한 시스템과 0.10-0.20 미만의 시스템을 사용했습니다. 최신 컴퓨터에서 10 % 이상을 사용하고 있다면 정말 걱정입니다.
Frank Thomas

내 CPU는 2.5ghz에서 실행됩니다. 이상하게도 때로는 1,5 % (내가 말했듯이 평균)에 있으며 예를 들어 0,3 %에 있지만 5 %에서 보았습니다. 나는 JakeGould의 조언을 받아 들일 것이고 더 이상 이것을 생각하지 않을 것입니다 ... 내 PC는 완벽하게 훌륭합니다 :) 그리고 이제 그것에 대해 조금 더 알고 있습니다. 감사!!
Daniel

2
진단하고 복구하는 하드웨어 문제가 없으면 대부분 그렇지 않습니다. USB는 버스를 공유하기 위해 인터럽트를 사용하기 때문에 하드 디스크의 USB 볼륨을 피할 수 있습니다 (SATA 포트에 디스크를 설치하는 대신). 그것들은 각 장치가 사용하는 주소 이외의 사용자 구성 가능한 것이 아니며 20 년 전에 할 수있는 모든 것입니다.
Frank Thomas

2
@Devilathor,별로. 컴퓨터의 전체 아키텍처는 인터럽트를 기반으로 하며 CPU에 의한 사용을 강제로 줄이면 (가능한 경우) 전체 시스템이 중단되거나 느려지 게됩니다. 인터럽트 수를 줄이는 유일한 안전한 방법은 인터럽트를 CPU로 보내는 하드웨어 부품 수를 줄이는 것 입니다. 이를 위해 필요하지 않은 모든 하드웨어를 제거 / 분리 / 차단하고 차이가 있는지 확인할 수 있습니다. 일부 하드웨어를 제거 할 수없는 경우 하드웨어에서 덜 '새로 고침'을 유발하는 설정을 찾으십시오 (가능한 경우 대기 모드).
Hoki

4

"인터럽트"및 "IRQ"라고도하는 "시스템 인터럽트"는 하드웨어가 시스템과 통신하는 방법을 관리하는 운영 체제 수준 프로세스입니다. Wikipedia에 설명되어 있습니다 :

시스템 프로그래밍에서 인터럽트는 즉각적인주의가 필요한 이벤트를 나타내는 하드웨어 또는 소프트웨어가 방출하는 프로세서에 대한 신호입니다. 인터럽트는 프로세서가 실행중인 현재 코드의 중단을 요구하는 우선 순위가 높은 조건을 프로세서에 경고합니다. 프로세서는 현재 활동을 일시 중단하고 상태를 저장하며 이벤트를 처리하기 위해 인터럽트 핸들러 (또는 인터럽트 서비스 루틴, ISR)라는 기능을 실행하여 응답합니다. 이 인터럽트는 일시적이며 인터럽트 핸들러가 완료된 후 프로세서가 정상 활동을 재개합니다.

따라서 핵심 시스템 설정에 필요한 부분입니다. 그리고 CPU 사용량이 지붕을 통해 쏠 경우 이는 단순히 시스템이 하드웨어와 통신하는 데 문제가 있음을 의미합니다.


감사. 이러한 중단을 일으키는 이벤트를 어떻게 모니터링 할 수 있습니까? 문제가 있다면 무슨 일이 일어나고 있는지 배울 수있는 방법이 있어야합니까?
Daniel

1
Windows 시스템에서는 100 % 확실하지 않습니다. 그러나 나는 내가 그 일에 관심을 가지고 일했던 Windows 관리자에 대해 들어 본 적이 없습니다. 당신은 이것을 지나치게 생각하고있을 것입니다. Microsoft의 자세한 내용. technet.microsoft.com/ko-kr/library/cc940374.aspx
JakeGould가

2
OS 수준 아래에서 발생하기 때문에 일반적으로 OS에서 인터럽트 정보를 볼 수 없습니다. CPU가 IRQ 또는 DPC 처리를 위해 실제로 높지 않으면 큰 관심사는 아닙니다.
Frank Thomas

1
@Devilathor 글쎄, 내가 더 이상 인터럽트에 대해 확신하지 못하는 이유 중 하나는 내가 실제로 처리 한 마지막 시간이 1992 년에 486 대의 컴퓨터에서 IT 작업을 처음했던 때였 던 것입니다. IRQ 설정은 때때로 BIOS와 물리적 점퍼 조정의 결합을 의미했습니다. 그래서 저는 제 뇌가 오늘날 대부분의 시스템에서 그 배후에있는 것들을 이해하는 데 쓸모가 없다고 생각합니다.
JakeGould

1
IRQ는 사용자에게 적합하지 않은 작업에 중요합니다. 일시 중지 된 스레드에 대한 DMA 작업이 비동기 콜백 IRQ가 데이터를 사용할 준비가되었음을 나타 내기 위해 CPU가 다른 스레드를 실행하기 위해 컨텍스트 전환을 수행 할 때는 신경 쓰지 않습니다. 그런 일은 일초에 백만 번 일어납니다.
Frank Thomas
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.