Не знаю подойдет ли этот совет, так как требует установки некоторого специфического ПО, но по роду своей деятельности у меня это установлено всегда, поэтому я делаю так. Выставляю всегда в настройках системы Мой компьютер\Свойства\Дополнительно\Загрузка и восстановление - Полный дамп памяти. Дожидаюсь пока после BSOD система сольет файл дампа. После перезагрузки запускаю C:\Program Files\Debugging Tools for Windows\kd.exe -z C:\WINDOWS\memory.dmp (это из Debugging Tools for Windows
http://www.microsoft.com/whdc/devtools/debugging/default.mspx, там же и отладочные символы). Из окна KD получаю имя (*.sys) драйвера явившегося причиной BSOD (кроме этого еще и причину ошибки с комментариями). Просто ищу файл на диске и по место расположению определяю нужен он мне или не нужен, но очень часто это месторасположение %SystemRoot%\System32 и не понятно чей это драйвер. Лучше сразу искать в реестре (по *.sys) параметры установки драйвера. Это должен быть куст [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\.
Например, для Comodo (службы, а не драйвера но параметры идентичны) будет
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\CmdAgent]
"DisplayName"="Comodo Application Agent"
"Description"="COMODO Firewall Pro Application Agent"
"ObjectName"="LocalSystem"
"ImagePath"="C:\\Program Files\\Comodo\\Firewall\\cmdagent.exe"
"ErrorControl"=dword:00000001
"Start"=dword:00000002
"Type"=dword:00000110
Меня интересует "DisplayName" и "ImagePath", иногда и "Description" нормальные попадаются. На основании этой информации принимаю решение нужен ли мне этот драйвер. Если нет - удаляю на диске и сразу в реестре (особенно если там "Start" выставлен в автозагрузку).