What is debugging?
Debugging means finding why something went wrong: make it happen again, find where it happens, and find the real reason (the root cause).
1. Make it happen again
First make the problem happen again, and write down the exact versions and settings. If it fails only sometimes, count how often, such as 3 times in 100 tries.
2. Change one thing at a time
Change one thing at a time: a BIOS setting, the driver or the board. When the problem goes away, the last change shows where to look.
3. Collect the evidence
Collect evidence, like a doctor's test results: POST codes, BIOS logs, system event logs, crash dumps and traces.
4. Compare with one that works
Compare with a setup that works, or with the last good release. The difference shows what changed.
5. Fix the cause, then test again
Aim to fix the root cause, as a doctor treats the illness, not only the pain. A bug inside the chip may need a firmware or BIOS workaround until a fixed chip arrives.
Words to know
- Driver
- Software that lets the operating system use one part of the hardware.
- Board
- The main circuit board that holds the chip.
- BIOS setting
- An option in the BIOS menu that turns a feature on or off.
- Firmware
- Software built into the hardware that runs it from inside.
- POST code
- A short code that shows how far the computer got while starting. POST means power-on self-test.
- Root cause
- The first, real reason a problem happens.
- Workaround
- A way around a problem that leaves its cause in place.
Where you meet it at work
Much of the job is debugging failed tests and collecting enough evidence so the engineer responsible for that part can fix it.
Check yourself
Why change only one thing at a time while debugging?Think first, then tap to see the answer.
So that when the problem goes away, you know which change made the difference.