2015-03-16 04:37:45 +0000 2015-03-16 04:37:45 +0000
123
123

Pourquoi la vérification de Windows Update est-elle si lente ?

J'ai des PC Windows 7 dont la mise à jour automatique est désactivée. Je fais des mises à jour par lots une fois par mois environ. Mais chaque fois, la vérification de la mise à jour prend 15 à 30 minutes. Je ne comprends pas pourquoi la vérification des mises à jour peut être si lente ? Je dois me demander ce qui se passe en arrière-plan. S'agit-il de hachage informatique ? Est-ce que mes PC avec les mises à jour automatiques activées subissent le même sort chaque fois qu'ils démarrent (seulement que je n'étais pas au courant) ?

回答 (12)

103
103
103
2015-07-02 04:25:06 +0000

La partie vérification des mises à jour est si lente parce que :

  • Windows 7 utilise Component-Based Servicing , ce qui signifie que Windows Update doit travailler ridiculement dur pour déterminer les dépendances/interdépendances des fichiers et composants, maintenir les versions côte à côte des anciens fichiers/composants, tout en permettant de désinstaller les mises à jour/composants individuels mais sans casser les autres mises à jour/composants, tout en tenant compte de la superposition et dieu sait quoi d'autre. Le code qui fait tout cela doit être incroyablement complexe.

  • Windows 7 64 bits doit maintenir les versions 32 bits et 64 bits de chaque mise à jour.

  • Windows doit maintenir les versions GDR et LDR de chaque mise à jour, ce qui signifie que sous Windows 7 64 bits, vous obtenez 32 bits GDR, 32 bits LDR, 64 bits GDR, 64 bits LDR pour chaque mise à jour.

  • Le code derrière Windows Update est très inefficace, probablement en raison de sa complexité conceptuelle. Mes observations de ces dernières années sont que, comme le nombre total de mises à jour publiées a augmenté, le temps de vérification des mises à jour a augmenté de façon presque exponentielle. Pour moi, cela indique qu'une sorte d'algorithmes récursifs est utilisée, peut-être pour déterminer la suprématie ou résoudre les dépendances.

Malheureusement pour nous, Microsoft n'aime pas parler des internes de Windows, donc nous finissons par devoir le découvrir par nous-mêmes ou spéculer.

60
60
60
2015-07-02 19:58:00 +0000

Plusieurs facettes du problème ont été traitées dans les réponses existantes. Je vais essayer de les relier en énumérant les causes de manière générale, sans répéter ce qui a déjà été dit :

  1. Le mécanisme de Microsoft Windows Update est extrêmement sophistiqué, ce qui signifie malheureusement aussi compliqué :
  2. WU doit prendre en charge un nombre incalculable de combinaisons de matériel et de logiciels
  3. WU doit appliquer les mises à jour dans le bon ordre
  4. Windows 7 est un système plus ancien, et SP2 est en retard et n'arrivera probablement jamais, ce qui entraîne de très nombreuses mises à jour
  5. Ces dernières années, Microsoft a subi une grande pression pour résoudre de nombreux problèmes de sécurité, ce qui a entraîné de très nombreuses corrections mouvementées, puis des corrections de corrections et ainsi de suite jusqu'à la n'ième génération
  6. Microsoft n'a pas été en mesure d'optimiser suffisamment le mécanisme de mise à jour, qui est en général un algorithme exponentiel, d'où un algorithme de force brute plutôt lent.
  7. Les serveurs WU de Microsoft sont parfois surchargés.

Examinons ces points plus en détail.

La complexité des mises à jour Windows

Après la publication d'une mise à jour, celle-ci peut entrer dans trois phases supplémentaires différentes au fil du temps : Révisions, remplacement et expiration.

Mise à jour des révisions : Lorsque des modifications sont apportées à une mise à jour précédemment publiée, on parle de “Update Revision”, c'est-à-dire que certains éléments du téléchargement sont modifiés. Il s'agit d'un remplacement partiel, et non complet, d'une mise à jour.

Mises à jour deupersed : Il s'agit d'un remplacement complet d'une ou plusieurs versions précédentes. Parfois, Microsoft regroupe plusieurs versions en un seul paquet, qui remplace les mises à jour encapsulées.

Mises à jour expirées : Ce sont les mises à jour supprimées de la liste des mises à jour valides. Ces mises à jour ne sont plus applicables et ne seront pas détectées pour l'installation. La plupart du temps, une mise à jour est expirée après avoir été remplacée par une mise à jour remplacée. Les mises à jour

ont également un mécanisme de dépendance, ce qui signifie que certaines mises à jour peuvent nécessiter l'application préalable d'autres mises à jour. Les mises à jour

expirées sont problématiques pour les performances de l'UG, car malheureusement elles ne sont pas supprimées de l'ordinateur, elles participent donc toujours aux calculs, et elles sont si nombreuses. Une certaine amélioration peut être obtenue en utilisant le Nettoyage de disque pour Supprimer les mises à jour Windows périmées (prendre d'abord une image de sauvegarde du disque du système, car WU est également très fragile).

Calculs WU En raison du nombre énorme de combinaisons possibles, Microsoft conserve toutes les mises à jour sur les serveurs de WU sous la forme d'un arbre gigantesque. Le choix des mises à jour à appliquer est effectué par un algorithme d'élagage de l'arbre, qui prend en compte le matériel et les logiciels installés par le client, ainsi que toutes les mises à jour déjà installées, ce qui constitue en soi un grand nombre de faits qui doivent tous être appliqués avec succès lors de l'élagage.

La réussite de l'algorithme n'est pas garantie, ce qui signifie que WU est parfaitement capable de détruire le système d'exploitation ou même de le rendre non amorçable. Ceci est tout à fait compréhensible, par exemple en prenant une mise à jour A1, ayant la révision A2, où une mise à jour B dépendant de A a été publiée entre A1 et A2. Maintenant, allez voir si l'ordre d'installation doit être A1-B-A2 ou A1-A2-B, alors qu'une mauvaise décision peut être fatale.

Serveurs WU surchargés

Wikipedia dit ceci à propos des statistiques de Windows Update :

En 2008, Windows Update avait environ 500 millions de clients, traitait environ 350 millions de scans uniques par jour, et maintenait une moyenne de 1,5 million de connexions simultanées aux machines clientes. Le mardi des correctifs, le jour où Microsoft publie généralement les nouvelles mises à jour logicielles, le trafic sortant pouvait dépasser 500 gigabits par seconde.

Ces chiffres ont probablement doublé depuis, et expliquent pourquoi les serveurs de WU sont parfois injoignables. J'utilise l'option WU “Check for updates but let me choose”, et ma propre expérience est qu'il y a des jours et des moments où la vérification des mises à jour prend plus de temps que je ne suis prêt à attendre, ce qui nécessite un report.

La longue histoire de Windows 7

Windows 7 est sorti le 22 juillet 2009. Après environ 17 mois, le Service Pack 1 (SP1) est sorti le 22 février 2011. C'était il y a environ 4 ans et demi, ce qui signifie que le SP2 est attendu depuis longtemps.

Le bon côté d'un Service Pack est que son installation efface tout l'historique des mises à jour, de sorte qu'en fait le WU démarre à partir de zéro, exactement comme après une nouvelle installation de Windows. Cela accélère bien sûr énormément tous les calculs, puisqu'il y a moins de mises à jour à prendre en compte.

Le simple nombre de mises à jour existantes depuis le SP1 explique pourquoi les calculs de WU sont si lents aujourd'hui. Pour Microsoft, le problème peut être résolu “simplement” en passant aux versions plus récentes de Windows 8.1 ou Windows 10, de sorte que WU aura un nombre de mises à jour moins important à prendre en compte.

Conclusion

Comme Microsoft continue à appliquer de nombreuses mises à jour de Windows 7, WU ne fera que ralentir au fil du temps.

Une optimisation possible est de Supprimer les mises à jour Windows obsolètes . Une autre est d'utiliser l'option WU de “Vérifier les mises à jour mais laissez-moi choisir”, et de vérifier les mises à jour tôt le matin ou tard le soir.

La plupart des mises à jour s'appliquent également à Windows 8 et 10, de sorte que la charge sur les serveurs WU de Microsoft ne fera que se multiplier lorsque Windows 10 sera bientôt disponible. Microsoft semble également répartir la bande passante de ses serveurs WU selon ses propres politiques, en mettant l'accent sur les systèmes d'exploitation les plus récents. Il faut donc s'attendre à un nouveau ralentissement pour Windows 7 une fois que Windows 10 sera sorti, ainsi qu'à des mises à jour disproportionnellement plus rapides pour Windows 10.

Si WU est trop lent, la seule véritable solution est de passer à une version ultérieure de Windows.

Bonne nouvelle : le SP2 pour Windows 7 (et 8.1) est arrivé

Microsoft a publié ce qui est en fait le SP2 pour Windows 7 et 8.1. Cette mise à jour ne sera pas disponible à partir de Windows Update pour une raison inconnue, elle doit donc être téléchargée et installée manuellement.

Lisez comment l'obtenir dans l'article : Microsoft révise la mise à jour de Windows 7 et 8.1 – mais n'appelez pas cela un service pack .

22
22
22
2016-01-16 18:23:17 +0000

Ce problème est apparu et a disparu au fil des ans avec différentes corrections en cours de route, voici donc mon guide mis à jour à cette date 5 janvier 2016

Vérifiez la section EDIT ci-dessous, il y a un moyen beaucoup plus rapide de mettre à jour complètement Windows 7 SP1 après une installation propre à partir de mai 2016.

C'est ce que je fais quand je réinstalle W7 avec SP1 ou que j'ai des problèmes avec la mise à jour de Windows bloquée sur la vérification des mises à jour.

Si le Service Pack 1 n'est pas installé, installez-le avant de suivre ce guide. Télécharger KB-3138612 et l'enregistrer où vous pouvez le trouver plus tard Télécharger SUR Tool l'enregistrer au même endroit

Redémarrer le PC et se déconnecter d'internet avant le chargement de Windows, c'est important car à chaque démarrage, Windows vérifiera les mises à jour en arrière-plan et la vérification des mises à jour sera à nouveau suspendue et empêchera l'installation des paquets téléchargés jusqu'à la fin de la vérification, donc la déconnexion d'internet avant le chargement de Windows empêche cela. Une fois que vous avez démarré, installez KB-3138612, si un redémarrage est nécessaire, faites-le et restez déconnecté d'Internet. Installez maintenant le paquet SUR Tool, c'est un gros paquet qui installera de nombreuses mises à jour tout en nettoyant et en réparant le magasin de mises à jour de Windows. Il réduira également le nombre de mises à jour Windows à installer ultérieurement.

Après l'installation du paquet SUR, redémarrez, connectez-vous à Internet et faites une mise à jour manuelle de Windows, cela devrait fonctionner beaucoup plus rapidement maintenant. Même après ces corrections, j'ai vu que certains PC W7 prenaient jusqu'à une heure pour terminer la vérification des mises à jour si elles étaient lancées manuellement depuis le Panneau de configuration.

Si vous avez d'autres problèmes de mises à jour Windows et que les 2 mises à jour ci-dessus sont installées, téléchargez cet outil de correction de Microsoft Windows Update (clic droit “enregistrer le lien sous”) lancez-le et sélectionnez le mode agressif pour réinitialiser complètement les mises à jour Windows. Redémarrez et essayez à nouveau Windows Updates à partir du panneau de configuration. Cet outil corrige les problèmes lorsque les autres outils de correction de Microsoft échouent, du moins selon mon expérience.

Update: Microsoft a publié un énorme rollup de mise à jour pour Windows 7 SP1 , c'est similaire à un service pack mais ils ne l'appellent pas comme ça. Cela rendra la mise à jour de Windows 7 beaucoup plus rapide après une installation propre, plus de problèmes de mise à jour de Windows et de nombreux redémarrages. Cette mise à jour actualisera le système jusqu'à la mise à jour du mardi d'avril 2016.

Cette mise à jour n'est pas disponible via Windows Update, vous devez utiliser Internet Explorer pour l'obtenir, ouvrir IE et vous rendre à cette adresse

http://catalog.update.microsoft.com/v7/site/home.aspx

Tapez dans la case de recherche 3125574 et appuyez sur la touche Entrée. Utilisez également la page du catalogue des mises à jour de Windows pour télécharger et installer d'abord cette mise à jour, 3020369 , c'est une condition préalable pour le rollup, puis installez 3125574, assurez-vous également d'être déconnecté de l'internet lorsque vous appliquez ces mises à jour.

9
9
9
2016-04-08 04:28:59 +0000

Lorsque vous utilisez [ ETW/WPR/WPA pour vérifier l'utilisation du CPU ]&3 pendant le balayage, vous voyez que l'utilisation du CPU provient de wuaueng.dll!CUpdatesToPruneList::AddSupersedenceInfoIfNeeded qui est appelé de wuaueng.dll!CAgentUpdateManager::FindUpdates. La méthode AddSupersedenceInfoIfNeeded est la plus lente. Elle fait ce que le nom indique et vérifie si les mises à jour de Windows 7 proposées/installées sont toujours nécessaires ou remplacées (dépassées/remplacées par des mises à jour plus récentes). C'est très lent.

Avec la dernière mise à jour du client Windows Update de juin 2016 , qui fait partie du rouleau de mise à jour Windows 7 juillet 2016 , la recherche de mise à jour est à nouveau rapide.

  1. Télécharger:
  2. 32Bit: https://www.microsoft.com/en-us/download/details.aspx?id=53335
  3. 64Bit: https://www.microsoft.com/en-us/download/details.aspx?id=53332

Il me faut seulement un peu plus d'une minute pour rechercher les nouvelles mises à jour. Pour accélérer l'installation de la mise à jour KB3172605, arrêtez le service WindowsUpdate (net stop wuauserv).

Cette astuce d'arrêt du service WU accélère beaucoup l'installation, lorsque vous installez plusieurs mises à jour MSU :

@ECHO OFF
SETLOCAL ENABLEEXTENSIONS ENABLEDELAYEDEXPANSION
FOR /R "%~dp0" %%A IN (*Windows6.1-KB*.MSU) DO (
        CALL :SUB %%~nA        
    ECHO= Installing KB!KB_NUM!        
    >NUL net stop wuauserv
    WUSA "%%A" /quiet /norestart)
ECHO= == Press any key to close the Window ==
>NUL PAUSE

GOTO :EOF

:SUB

SET "KB_NUM=%*"
FOR /F "DELIMS=-" %%B IN ("%KB_NUM:*-KB=%") DO SET "KB_NUM=%%B"

Sous Windows 10, Microsoft a résolu le problème en suivant ma suggestion et en rendant les mises à jour cumulatives. Ici, vous n'avez besoin que d'une seule grande mise à jour pour être au niveau du patch actuel. Cette vérification lente n'est plus nécessaire.

3
3
3
2015-12-11 10:56:36 +0000

Si les expériences passées avec la mise à jour de XP sont une indication, elles laissent parfois échapper un algorithme à temps exponentiel . Ce qui, une fois que vous avez de nombreuses mises à jour… prend une éternité. Actuellement, les mises à jour de Win 7 sont dans une situation similaire ; elles prennent beaucoup de temps, bien qu'il n'y ait pas encore d'explication officielle à cette lenteur. Il est intéressant de noter que cela “arrive” (aux anciennes versions) lorsqu'une nouvelle version est sortie. Le moi cynique ne peut pas s'empêcher d'imaginer que quelqu'un puisse vouloir intentionnellement que cela se produise, à l'instar de la lenteur des [vieilles] fenêtres ? Vous avez besoin d'une nouvelle version. Ou peut-être est-ce juste la façon MS de commencer la saison des vacances.

Il existe un correctif pour une sorte de lenteur de WU, qui n'est pas proposé automatiquement (c'est-à-dire via la mise à jour elle-même) : https://support.microsoft.com/en-us/kb/3102810 Hélas, cela n'a pas vraiment fait de différence dans mon cas, et je l'ai essayé sur deux ordinateurs différents : un 32 bits et un 64 bits. De plus, il existe depuis octobre, donc ce n'est probablement pas pour le(s) dernier(s) numéro(s).

2
2
2
2015-07-02 04:36:03 +0000

Il y a environ un milliard de PC fonctionnant sous Windows aujourd'hui. Chaque PC possède une combinaison de matériel, d'accessoires, de version du système d'exploitation, de langue, d'IE, de version de pilote de périphérique, de logiciels Microsoft à différents niveaux de patch, de mises à jour de sécurité, etc. Le système Windows Update doit trier toutes ces combinaisons pour offrir les mises à jour appropriées à chaque PC. Chaque mise à jour a des propriétés, y compris des dépendances et une structure de “superposition”.

La première étape (première exécution) de l'analyse consiste à déterminer la version du système d'exploitation, le SP, la langue, le fabricant du PC pour élaguer l'arbre des mises à jour probables pour le PC. Sur la base de cette première analyse, un ensemble d'ID de mises à jour probables est envoyé à l'appareil et le client local calcule quelles mises à jour sont installées, remplacées, etc. et envoie ensuite cette liste au serveur et met également en cache une copie localement pour les analyses ultérieures. Le serveur répond à la demande du client pour les mises à jour avec des descriptions, etc. qui sont affichées dans l'interface utilisateur (dans la langue appropriée).

Une fois par jour, une vérification de la mise à jour est effectuée par le client Automatic Updates en arrière-plan et rafraîchit le cache local des mises à jour installées, de sorte que les analyses ultérieures ne sont qu'un delta et sont rapides. Celles-ci sont stockées dans le dossier %windir%\softwaredistribution sur le PC.

Un processus similaire est également effectué pour les mises à jour précédemment téléchargées. Le service ne re-téléchargera pas les paquets.

ont trouvé ce post qui nous aidera au moins à comprendre ce qui se passe réellement pendant la recherche. Il est magnifiquement écrit. Je le publie donc en tant que tel. Vous pouvez trouver l'article original à ici

Un changement notable dans le temps de vérification de la mise à jour pour l'installation était là quand j'ai changé les paramètres de mise à jour de Windows en Check for updates but let me choose whether to download and install them

1
1
1
2015-10-20 10:09:12 +0000

Il est lent parce que Windows Update et plusieurs autres composants du système Windows utilisent le moteur de base de données Microsoft JET Blue , qui souffre de performances notoirement médiocres et constitue une véritable mine de ressources.

Comme d'autres l'ont mentionné, il semble également y avoir un certain degré de récursion dans le code de Windows Update lui-même, ce qui entraîne de mauvaises performances à mesure que le nombre de mises à jour augmente.

1
1
1
2015-07-01 18:46:57 +0000

À mon avis, le mieux est d'activer les mises à jour Windows et de passer à l'option qui vous permet de télécharger les mises à jour mais pas de les installer automatiquement. De cette façon, vous pourrez installer ce que vous voulez sans avoir à attendre les vérifications ou les téléchargements de fichiers de fond.

Maintenant, pour répondre à la question de savoir pourquoi c'est lent. Je pense que cela se résume simplement au fait que les mises à jour de Windows ont été conçues dans le but de réduire l'impact perceptible pour les utilisateurs. Il utilise le service BITS (background intelligent transfer service) pour vérifier et télécharger les mises à jour.

Là encore, l'objectif de ce service est de fonctionner de manière à ne pas perturber l'utilisateur. Les vitesses sont intentionnellement lentes, car Microsoft n'a jamais eu l'intention de demander à ses clients d'activer et de désactiver le service de mise à jour chaque mois.

Vous pourriez envisager d'installer votre propre serveur WSUS. Ainsi, vous pourrez refuser les mises à jour de la même manière que les administrateurs d'entreprise, et vous pourrez appliquer ou refuser les mises à jour choisies à tous vos appareils Windows que vous possédez. Cette tâche de mise à jour sélective est moins pénible.

0
0
0
2018-05-08 16:10:00 +0000

Juste pour ajouter un autre point de données. Je dois depuis peu mettre en place un PC Vista. J'ai mis à jour manuellement Vista de SP1 à SP2 mais la vérification de la mise à jour prend une éternité. Rien ne s'est passé pendant plus de 24 heures.

J'ai fait quelques recherches sur Google qui ont permis de trouver une solution qui comprend l'installation des mises à jour suivantes : http://www.catalog.update.microsoft.com/Search.aspx?q=KB3205638%20vista [http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012583%20vista](http://www.catalog.update.microsoft.com/Search.aspx?q=KB4012583%20vista http://www.catalog.update.microsoft.com/Search.aspx?q=KB4015195%20vista http://www.catalog.update.microsoft.com/Search.aspx?q=KB4015380%20vista

Après avoir téléchargé et installé les mises à jour manuellement. J'ai effectué une vérification des mises à jour pendant 10 minutes et j'ai trouvé 200 mises à jour. Gardez à l'esprit que c'est pour Vista mais je pense que quelque chose de similaire existe peut-être aussi pour Windows 7.

-1
-1
-1
2015-10-24 20:34:13 +0000

J'ai eu ce problème et j'ai laissé Windows Update fonctionner pendant la nuit pour la première fois sur une machine fraîchement installée. Conseils pour y parvenir :

  • Allez dans les options d'énergie, réglez le temps de veille sur “jamais”

  • Activez la mise à jour automatique de Windows Update. Le temps par défaut de 03:00AM est correct puisque le processus de recherche prend également du temps

  • Il est également recommandé de faire un processus “Windows update doit mettre à jour certains composants …” la première fois (cela va vite comparé aux plus de 200 mises à jour dans le cas de Windows 7)

Lorsque tout a été mis à jour correctement, vous trouverez une quantité énorme de patchs (environ 200) ont été installés. Windows a également défragmenté et exécuté les mises à jour/analyses de Windows Defender.

Après cela, les cycles restants de Windows Update (recherche de mises à jour - installation - redémarrage - recherche de mises à jour - installation - redémarrage - recherche de mises à jour … jusqu'à ce que # mises à jour soit devenu 0) fonctionnent beaucoup plus rapidement.

-1
-1
-1
2015-11-30 00:37:40 +0000

Lors de la nouvelle installation de Windows 7, j'utilise le disque d'installation des mises à jour d'origine mais toujours avec le disque d'installation des mises à jour intégrées, de toute façon je vous suggère d'essayer les mises à jour kb3102810 et kb3050256 pour les installer juste après la nouvelle installation ; ces deux mises à jour peuvent considérablement augmenter la vitesse de recherche et d'installation des mises à jour.

-2
-2
-2
2015-03-16 06:31:45 +0000

Pas de hachage, mais oui, il vérifie beaucoup de choses (aussi profond que certaines versions de fichiers DLL). Il est lent quel que soit le système que vous utilisez.

Comme solution, gardez le éteint et quand il y a un jour ou une nuit où vous n'avez pas trop besoin du système, allumez-le, forcez-le à vérifier les mises à jour et laissez-les toutes s'installer.