General
Drivers (whether hardware or software) are loaded into the System process, so usually, when it is using a lot of CPU cycles, a driver is misbehaving (possibly in a deadlock or just stuck in a bug).
Diagnosis
To identify the culprit, get a copy of Process Explorer and double-click the System process. Switch to the Threads tab and sort on the CPU column and look at the module(s) using up the most CPU time.
Treatment
Next, you can view the properties of the file and/or Google the filename to determine which driver is malfunctioning.
At this point, fixing the issue depends entirely on the driver.
Example
In this case, CPU is not being pegged, but this snapshot (figure 1) shows the top users at this moment are iaStor.sys and MpFilter.sys. If their CPU usage was high, we would look at the files to see that the former (figure 2) is a driver for an Intel drive-controller and the latter (figure 3) is a component of Microsoft’s anti-malware program.
If the Intel driver were problematic, one could check to see if there is an update, if the drive is faulty, if there are others complaining about the same problem in the Intel boards, etc.
If the MSSE file were problematic, one could check for an update, if others have the problem, uninstall it, etc.
Figure 1: Screenshot of System process threads

Figure 2: Screenshot of Properties dialog for iaStor.sys

Figure 3: Screenshot of Properties dialog for MpFilter.sys
