Qual é a relação entre os “domínios” de drivers de dispositivos do Linux?

2

Como estou lendo sobre os drivers de dispositivos Linux e a API de gerenciamento de energia, continuo encontrando termos como "nível do sistema", "subsistema", "plataforma", "classe" e assim por diante.

Qual é a relação entre eles? O sistema é um subtipo de plataforma? Ou o sistema e a plataforma existem em paralelo sem nenhuma relação de inclusão? Como "classe" difere de "sistema"? Para que cada domínio é bom (ou seja, se eu quiser implementar uma determinada funcionalidade, deve ser uma funcionalidade de nível de classe, ou ou funcionalidade de plataforma, ou alguma outra etcetera)?

Em suma, alguém pode me explicar quais são essas coisas diferentes?

    
por EpsilonVector 05.05.2013 / 12:25

1 resposta

0

Estes são difíceis de definir. Geralmente, no contexto da enumeração de dispositivos,

  • Dispositivos de "plataforma" são coisas normalmente encontradas em um PC ou normalmente encontradas em um Raspberry Pi.

    O kernel começa procurando por eles, porque o kernel foi compilado para rodar em um PC ou em um RPi. Alguns dos componentes da placa-mãe, e a CPU e a memória se enquadram nessa categoria.

  • um "subsistema" é basicamente um grupo de drivers com funcionalidade semelhante para hardware diferente.

    Drivers individuais podem, então, usar drivers de outro subsistema. Por exemplo, os drivers de subsistema de "som" manipulam placas de som individuais e apresentam uma interface de placa de som comum, enquanto um driver pode usar o subsistema PCI para localizar a placa de som, independentemente do tipo de chip usado.

  • um driver de "classe" lida com dispositivos de diferentes fornecedores que implementam uma interface comum.

    Isso é típico para dispositivos USB, onde existe, por exemplo um padrão para dispositivos de armazenamento em massa e um único driver lida com todos os dispositivos que se dizem compatíveis.

por 07.11.2013 / 16:43