Pourquoi mon ordinateur passe-t-il à «Nouveau périphérique USB» chaque fois que je le branche sur un port différent?

47

Disons que j'ai une souris. Je branche cette souris dans l’emplacement 1 sur 4 sur un ordinateur. Il passe par le nouveau périphérique détecté et tout cela, ce qui est bien. Mais si je reviens plus tard avec la même souris et que je la branche dans le slot 3, la détection est à nouveau effectuée! Pourquoi est-ce?

RCIX
la source
3
Et que pouvons-nous faire pour y remédier?
colonel Panic

Réponses:

61

Selon Raymond Chen :

Pourquoi Windows ne reconnaît-il pas mon périphérique USB comme étant le même périphérique si je le branche sur un port différent?

Vous avez peut-être remarqué que si vous connectez un périphérique USB à votre ordinateur, Windows le reconnaît et le configure. Ensuite, si vous le débranchez et que vous le rebranchez sur un autre port USB, Windows subit une crise d'amnésie et pense qu'il s'agit d'un périphérique complètement différent au lieu d'utiliser les paramètres appliqués lors de la dernière connexion. Pourquoi donc?

Les responsables de périphériques USB ont expliqué que cela se produit lorsque le périphérique ne dispose pas d'un numéro de série USB.

Les numéros de série sont facultatifs sur les périphériques USB. Si le périphérique en possède un, Windows le reconnaît, quel que soit le port USB auquel vous le branchez. Mais s'il ne possède pas de numéro de série, Windows traite chaque apparence sur un port USB différent comme s'il s'agissait d'un nouveau périphérique.

(Je me souviens qu'un grand fabricant de périphériques USB ne comprenait pas très bien le fonctionnement des numéros de série. Ils ont donné tous les numéros de série de leurs périphériques. C’est génial, mais ils ont tous le même numéro de série. périphériques dans un ordinateur en même temps.)

Mais pourquoi Windows le traite-t-il comme un périphérique différent s'il manque un numéro de série et s'affiche sur un port différent? Pourquoi ne peut-il pas simplement dire: "Oh, voilà, là-bas sur un autre port."

Parce que cela crée un comportement aléatoire une fois que vous avez branché deux de ces dispositifs. En fonction de l'ordre dans lequel les périphériques sont énumérés par Plug-and-Play, les deux ensembles de paramètres sont affectés de manière apparemment aléatoire à chaque démarrage. Aujourd'hui, les paramètres ne correspondent que dans un sens, mais demain, lorsque les périphériques sont énumérés dans l'ordre inverse, ils sont permutés. (Vous obtenez le même comportement déroutant si vous branchez les périphériques dans un ordre différent.)

En d'autres termes: les choses sont nulles parce que (1) les choses étaient déjà en mauvais état - cela n'aurait pas été un problème si l'appareil avait un numéro de série correct - et (2) une fois que vous êtes dans cet état déplacé, l'alternative aspire davantage . La pile USB tente simplement de tirer le meilleur parti d’une mauvaise situation sans l’aggraver.

jason
la source
17
Je ne comprends pas bien pourquoi il est nécessaire de réinstaller les pilotes de périphérique. Est-ce qu'il va maintenir des copies séparées des pilotes pour le même périphérique sur chaque port maintenant?
Agnel Kurian
1
Je suppose que c'est simplement en associant les pilotes existants à la nouvelle désignation du port.
Brian White
1
@BrianWhite passe tout le processus de téléchargement et de configuration. Vous pouvez le regarder en cliquant sur la notification dans la barre des tâches
Cool Blue le
1
Oh, je l'ai regardé plusieurs fois. Il est toutefois difficile de dire à partir de cette boîte de dialogue s'il s'agit de récupérer de nouvelles données sur Internet ou d'utiliser simplement des fichiers locaux (mais le texte de la boîte de dialogue habituelle) ou quelque chose entre les deux.
Brian White
Est-il possible de donner vous-même un numéro de série à un périphérique USB? Ou est-ce quelque chose qui ne peut être fait que sur le plan de la fabrication?
TMH
2

Windows (comme vous ne le dites pas à votre système d'exploitation, je suppose que c'est ce que vous utilisez) associe un périphérique au port auquel il est branché, de sorte qu'il a considéré que "le disque USB A dans le port X" était différent de "le disque USB A dans le port port Y "et relie les pilotes et les entrées de registre en conséquence.

Si vous utilisez l'option "Afficher les périphériques non liés" lors de l'affichage du Gestionnaire de périphériques, le périphérique est connecté à tous les ports auxquels il a déjà été branché, mais estompé car il ne s'y trouve pas actuellement. Lorsque vous connectez le périphérique à l'un de ces ports, Windows ne fait qu'activer cette instance de pilote. Lorsque vous le connectez à un autre port, il doit définir une nouvelle instance de pilote pour ce port avant de l'activer (processus que vous voyez en tant qu'utilisateur). affiché comme "ajout d'un nouveau périphérique".

Cela vous permet d’avoir des périphériques identiques branchés sur différents ports et travaillant simultanément. Il existe d'autres moyens d'y parvenir, avec peu ou pas de différence pratique pour l'utilisateur final selon la technique utilisée par le système d'exploitation, mais c'est ainsi que Windows choisit de l'organiser.

David Spillett
la source
4
Proche mais pas tout à fait. Windows reconnaît le même périphérique sur différents ports, dans la mesure où il peut suivre le périphérique en question. Pour ce faire, l'appareil doit fournir un numéro de série.
jasonh
4
Les disques ont tendance à avoir un numéro de série, son sur le support lui-même et classé par format. Pour cette raison, même les trucs de clé USB vraiment pas chers sont parmi les plus sains de tous les périphériques USB. Les souris, claviers, manettes de jeu et autres appareils bon marché sont généralement les pires contrevenants. Un véritable inconvénient est un adaptateur série USB à RS-232 sans numéro de série. Un nouveau nom de port COM lui sera attribué chaque fois qu'il sera déplacé par inadvertance vers un nouveau port. Pas drôle.
RBerteig