In most recent versions of
Windows (notably
Windows 2000), the
BSOD is caused by
faulty drivers, rather than faults in shipped
kernel space. Anything that chokes and dies inside of
Windows NT Kernel Mode will cause the BSOD. Unfortunately in
Windows 9x, the kernel mode was a lot less protected, and things could quite easily muck with kernel space.
That is why a
WinNuke would blue-screen you. Your
network stack runs (for performance and kernel construction reasons), inside of kernel space. If you overflowed that, it would throw a BSOD and report the
faulty module.
Similar to this is a Unix Kernel Panic, where the kernel cannot recover from such errors. Keep as much out of your kernel as humanly possible, for those reasons alone.