pt.phhsnews.com


pt.phhsnews.com / Existe um protocolo de comunicação USB real?

Existe um protocolo de comunicação USB real?


A maioria de nós nunca pensa muito nos nossos dispositivos USB, apenas os ligamos e os esquecemos. Mas e se você é do tipo curioso que quer saber mais sobre como o USB funciona? A postagem de perguntas e respostas do SuperUser de hoje tem as respostas para as perguntas de um curioso leitor.

A sessão de Perguntas e Respostas é cortesia da SuperUser - uma subdivisão do Stack Exchange, um agrupamento de sites de perguntas e respostas.

Foto cedida por Evilelka Kowalski (Flickr).

A pergunta

SuperUser reader smeeb quer saber se realmente existe um Protocolo de Comunicação USB real:

Segundo a Wikipedia, USB:

  • Define os cabos, conectores e comunicações protocolos usados ​​em um barramento para conexão, comunicação e fonte de alimentação entre computadores e dispositivos eletrônicos.

Mas há um Protocolo de Comunicação USB real? Meu entendimento é que:

  1. Você conecta um dispositivo USB a uma máquina (Ubuntu ou qualquer tipo de Linux, por exemplo).
  2. O Linux encontra o driver de dispositivo para esse dispositivo de alguma forma ( se você sabe! ) eo carrega.
  3. O dispositivo agora está conectado sob / dev / theDevice .
  4. Aplicativos de espaço do usuário agora podem ler e gravar em / dev / theDevice e o O driver manipula a entrada e saída de baixo nível para o dispositivo / hardware subjacente

Até onde eu sei, um Protocolo de Comunicação USB não aparece em nenhum lugar nesse fluxo. Se meu entendimento estiver correto, o USB é apenas o cabo e a conexão elétrica entre o PC e o dispositivo.

Estou errado aqui? O USB realmente implementa algum tipo de protocolo de baixo nível que ressalta o fluxo acima? Em caso afirmativo, o que é e como funciona a uma vista de 30.000 pés?

Existe um Protocolo de Comunicação USB real?

Os contribuidores SuperUser da Resposta

RedGrittyBrick e projectdp têm a resposta para nós. Primeiro, RedGrittyBrick:

Sim (veja protocolos USB).

Pelo que entendi, a especificação USB define um conjunto complexo de protocolos em camadas e perfis de dispositivos.

Por exemplo, dispositivos USB podem estar em conformidade com modelos de nível como armazenamento em massa, teclado, dispositivo de interface humana, etc., e ser gerenciado por um driver de dispositivo genérico. Alguns dispositivos USB podem se comunicar em um nível inferior, de modo que o suporte USB de baixo nível do sistema operacional possa reconhecer que drivers de nível superior específicos do dispositivo são necessários.

Seguido pela resposta do projectdp:

Pergunta

protocolo de comunicação USB de baixo nível em ação e o que é?

Resposta

Sim, existe. A especificação USB inclui o protocolo USB que define a maneira como o barramento é usado em um nível de bit. Este seria o protocolo de baixo nível que subjaz aos protocolos de nível superior (ou seja, armazenamento em massa, HID, etc.).

Para detalhes sobre como o protocolo USB funciona, este wiki OSDev é útil. Aqui está outra descrição interessante usando diagramas de seqüência para descrever as várias transações de dados pelo protocolo USB

Bonus Question

Como o Linux encontra e carrega o driver de dispositivo para esse dispositivo?

Bonus Answer

On Linux Ao usar um kernel habilitado para USB, um dispositivo USB em funcionamento será detectado através do hardware e do kernel devido à especificação USB. No lado do hardware, a detecção é feita pelo controlador host USB. Em seguida, no kernel, o Driver do Controlador Host assume e converte os bits de baixo nível na conexão para informações formatadas no protocolo USB. Esta informação é então preenchida no driver usbcore no kernel.

Parafraseando deste excelente artigo Opensourceforu, que tem muito mais detalhes e clareza sobre a sua questão no contexto Linux.

Certifique-se de verificar o resto do kernel. a discussão animada através do link de discussão compartilhado abaixo!


Tem algo a acrescentar à explicação? Som desligado nos comentários. Quer ler mais respostas de outros usuários do Stack Exchange com experiência em tecnologia? Confira o tópico de discussão completo aqui.


Como limpar itens recentes de uma lista de atalhos no Windows

Como limpar itens recentes de uma lista de atalhos no Windows

As listas de atalhos contêm comandos e arquivos recentes que você vê quando clica com o botão direito do mouse em um ícone no menu Iniciar do Windows ou na barra de tarefas. Se você quiser limpar seus itens recentes de uma lista de atalhos, você pode. O truque é encontrar o arquivo correto a ser excluído.

(how-to)

Aviso: Redes Wi-Fi criptografadas WPA2 ainda estão vulneráveis ​​a espionagem

Aviso: Redes Wi-Fi criptografadas WPA2 ainda estão vulneráveis ​​a espionagem

Até agora, a maioria das pessoas sabe que uma rede Wi-Fi aberta permite que as pessoas espionem seu tráfego. A criptografia padrão WPA2-PSK supostamente evita que isso aconteça - mas não é tão infalível quanto se poderia imaginar. Isso não é uma grande notícia sobre uma nova falha de segurança. Pelo contrário, esta é a maneira como o WPA2-PSK sempre foi implementado.

(how-to)