Sometime before the 2.0.x kernels, modularized drivers were first introduced into the kernel. This was a pretty shaky interface at first, and some drivers worked very well while others didn't work at all. By the 2.0 kernel the use of modules was a well understood method. While there are still occasional problems associated with modular drivers, this feature of the Linux kernel have become one of the stable workhorses of the present day operating system.