Was the idea behind the controller to be able to control devices from a different manufacturers with the same driver?
Não. O objetivo principal é fornecer parte da interface entre os dispositivos e o processador. Um controlador possui seu próprio driver; isso é um acréscimo aos drivers necessários para os dispositivos conectados a ele.
A razão pela qual a interface é necessária é que o processador é altamente especializado; controladores são uma espécie de tradutores do mundo especializado do processador para o multiverso de dispositivos. O processador tem apenas uma conexão de dados físicos para o exterior (o barramento ), não uma variedade deles, e na verdade, geralmente intermediário entre os controladores e o processador estão pontes que conecte o processador à placa-mãe. Controladores de dispositivos são então conectados à placa-mãe e se comunicam através de uma ponte. Portanto, existem quatro entidades físicas discretas na cadeia: processador - > ponte - > controlador - > dispositivo, todos dos quais envolvem seus próprios drivers de software (um driver para o processador, para o chipset de ponte, depois para cada um dos controladores e para cada um dos dispositivos).
Se você observar o diagrama abaixo, no artigo da wikipedia , as caixas azuis na parte inferior representam controladores de dispositivo.
[Por Alexander Taubenkorb, Creative Commons Attribution-Share Alike 3.0]