컴퓨터 처리 장치에서 유휴 또는 아이들(idle)은 어떠한 프로그램에 의해서도 사용되지 않는 상태를 말한다.

컴퓨터 시스템 위에서 실행되는 모든 프로그램, 태스크는 CPU에서 특정한 양의 처리 시간을 차지한다. CPU가 모든 태스크를 끝내면 유휴 상태가 된다.

현대의 프로세서들은 유휴 시간을 사용하여 전원을 절약한다. 공통적인 방식은 CPU 전압과 함께 클럭 속도를 낮추는 것, 그리고 프로세서의 일부를 슬립(sleep) 상태로 보내는 것이다. x86HLT 명령어와 같은 인터럽트가 발생하기 전까지 CPU를 중단하는 중단(Halt) 명령을 가진 프로세서에서는 유휴 태스크가 HLT 명령 실행을 반복하는 루프로 구성되어 있을 경우 상당한 양의 전원과 발열을 절약할 수 있다.

마이크로소프트 윈도우,[1] 리눅스,[2], macOS[3] 등의 수많은 운영 체제들은 CPU가 할 일이 없을 때 CPU에서 OS 스케줄러에 의해 적재되는 특수한 태스크인 유휴 태스크(idle task)를 실행한다. 이 유휴 태스크는 스케줄러에 하드 코딩을 할 수 있으며, 아니면 잠재적으로 가장 낮은 우선 순위의 별개의 태스크로 구현이 가능하다. 후자 방식의 장점은 시스템 상태를 모니터링하는 프로그램이 다른 모든 태스크와 더불어 유휴 태스크를 볼 수 있다는 것이다. 한 예로 윈도우 NT시스템 유휴 프로세스를 들 수 있다.

같이 보기

편집

각주

편집
  1. Gavin, Brady; Hoffman, Chris. “What Is “System Idle Process,” and Why Is It Using So Much CPU?”. 《How-To Geek》. 
  2. “CPU Idle Time Management”. 《The Linux kernel user’s and administrator’s guide》. 
  3. Singh, Amit. 《Mac OS X Internals: A Systems Approach》. 432쪽. ISBN 0-321-27854-2.