# "System Idle Process"?

**URL:** <https://boards.straightdope.com/t/system-idle-process/209710>\
**Category:** Factual Questions\
**Created:** [October 26, 2003, 9:06pm UTC](https://boards.straightdope.com/t/system-idle-process/209710 "2003-10-26T21:06:58Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![chaoticbear](https://avatars.discourse-cdn.com/v4/letter/c/f07891/32.png) [@chaoticbear](https://boards.straightdope.com/u/chaoticbear)\
**Post date:** [October 26, 2003, 9:06pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/1 "2003-10-26T21:06:58Z")

</div>

I’m looking in task manager (xp), and this “System Idle Process” is taking up \>90% of my CPU. What is this thing, and why does it take so much effort? I know it’s only a 966 PIII, but… wow.

---

<div class="post-metadata">

**Author:** ![Q.E.D](https://avatars.discourse-cdn.com/v4/letter/q/51bf81/32.png) [@Q.E.D](https://boards.straightdope.com/u/Q.E.D)\
**Post date:** [October 26, 2003, 9:13pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/2 "2003-10-26T21:13:24Z")

</div>

> [@](#):
>
> The System Idle Process runs only when no other processes are using the CPU. Thus, when the CPU is idle, the System Idle Process is in action, executing special halt (HLT) instructions that put the CPU into a suspended mode and thereby cool the processor.

From [here](http://lists.isb.sdnpk.org/pipermail/comp-list/2002-September/001342.html). Apparently it’s a Good Thing™

---

<div class="post-metadata">

**Author:** ![Manduck](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/manduck/32/256_2.png) [@Manduck](https://boards.straightdope.com/u/Manduck)\
**Post date:** [October 26, 2003, 9:15pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/3 "2003-10-26T21:15:25Z")

</div>

The system idle process is what your computer is doing when it’s doing nothing. If it has 90% of CPU, it means that your computer isn’t very busy. As long as the computer is turned on, the CPU has to be doing something, due to the way computers work, so the sum of all processes’ CPU usage will always be 100%.

---

<div class="post-metadata">

**Author:** ![Q.E.D](https://avatars.discourse-cdn.com/v4/letter/q/51bf81/32.png) [@Q.E.D](https://boards.straightdope.com/u/Q.E.D)\
**Post date:** [October 26, 2003, 9:19pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/4 "2003-10-26T21:19:11Z")

</div>

> [@](#):
>
> \*Originally posted by Manduck \*  
> **As long as the computer is turned on, the CPU has to be doing something, due to the way computers work…**

No, it doesn’t. The CPU can be idle for any arbitrary length of time. Computers in DOS mode are idle most of the time, in fact.

---

<div class="post-metadata">

**Author:** ![chaoticbear](https://avatars.discourse-cdn.com/v4/letter/c/f07891/32.png) [@chaoticbear](https://boards.straightdope.com/u/chaoticbear)\
**Post date:** [October 26, 2003, 9:39pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/5 "2003-10-26T21:39:14Z")

</div>

ooooh. I was worried about the inadequacy of my processor.

---

<div class="post-metadata">

**Author:** ![Ms2001](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/ms2001/32/18463_2.png) [@Ms2001](https://boards.straightdope.com/u/Ms2001)\
**Post date:** [October 26, 2003, 9:46pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/6 "2003-10-26T21:46:32Z")

</div>

> [@](#):
>
> \*Originally posted by Q.E.D. \*  
> \*\*No, it doesn’t. The CPU can be idle for any arbitrary length of time. Computers in DOS mode are idle most of the time, in fact. \*\*

That doesn’t sound right. Care to explain it a little more?

An “idle” processor is, in fact, doing something - probably sitting in a loop waiting for some event to happen. Those fancy HLT processes didn’t exist in the DOS days, when only one program was running at a time. A DOS program that appears to be “idle”, while waiting for a keypress, is merely burning CPU cycles in a loop.

---

<div class="post-metadata">

**Author:** ![Ms2001](https://sea3.discourse-cdn.com/straightdope/user_avatar/boards.straightdope.com/ms2001/32/18463_2.png) [@Ms2001](https://boards.straightdope.com/u/Ms2001)\
**Post date:** [October 26, 2003, 9:52pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/7 "2003-10-26T21:52:56Z")

</div>

Er, I should say, an idle processor is doing something _unless_ it’s been put into a halt state by [HLT](http://www.penguin.cz/~literakl/intel/h.html). HLT causes the CPU clock to stop until an interrupt is received. Was HLT commonly used back in the day?

---

<div class="post-metadata">

**Author:** ![Q.E.D](https://avatars.discourse-cdn.com/v4/letter/q/51bf81/32.png) [@Q.E.D](https://boards.straightdope.com/u/Q.E.D)\
**Post date:** [October 26, 2003, 9:57pm UTC](https://boards.straightdope.com/t/system-idle-process/209710/8 "2003-10-26T21:57:07Z")

</div>

I don’t know for sure, but the HLT instruction has been a part of the 8086 instruction set from the beginning, AFAIK. I never much got into assembly language programming. It was my understanding that when the computer was at a DOS prompt, waiting for input that the processor was actually halted until you hit a key, which generated an interrupt.
