Почему проверка Центра обновления Windows выполняется так медленно?

Почему проверка Центра обновления Windows выполняется так медленно?

У меня есть ПК с Windows 7, на которых отключено автоматическое обновление. Я обновляю пакетно примерно раз в месяц. Но каждый раз «проверка обновлений» занимает от 15 до 30 минут. Я не понимаю, почему проверка обновлений может быть такой медленной? Мне интересно, что происходит в фоновом режиме. Это вычисление хэша? Мои ПК с включенным автоматическим обновлением постигает та же участь каждый раз при загрузке (только я этого не знал)?

решение1

Theпроверка обновленийчасть такая медленная потому что:

  • Windows 7 используетОбслуживание на основе компонентов, что означает, что Windows Update должен работать нелепо усердно, чтобы определить зависимости/взаимозависимости файлов и компонентов, поддерживать параллельные версии старых файлов/компонентов, при этом все еще позволяя удалять отдельные обновления/компоненты, но не нарушая никаких других обновлений/компонентов, все время принимая во внимание суперцессион и бог знает что еще. Код, который все это делает, должен быть чертовски сложным.

  • Windows 7 64-бит должна поддерживать как 32-битные, так и 64-битные версии каждого обновления.

  • Windows должна поддерживать обаГДР и ЛДРверсии каждого обновления, что означает, что в Windows 7 64-бит вы получаете 32-битную GDR, 32-битную LDR, 64-битную GDR, 64-битную LDR для каждого обновления.

  • Код Windows Update крайне неэффективен, вероятно, из-за своей концептуальной сложности. Мои наблюдения за последние несколько лет показывают, что по мере увеличения общего количества выпущенных обновлений время проверки обновлений увеличивалось почти экспоненциально. Для меня это показатель того, что используются какие-то рекурсивные алгоритмы, возможно, для определения суперсцендирования или разрешения зависимостей.

К сожалению для нас, Microsoft не любит говорить о внутреннем устройстве Windows, поэтому нам приходится догадываться об этом самостоятельно или строить догадки.

решение2

Несколько аспектов проблемы были рассмотрены в существующих ответах. Я попытаюсь связать их вместе, перечислив причины в общем виде, не повторяя то, что уже было сказано:

  1. Механизм обновления Microsoft Windows чрезвычайно сложен, что, к сожалению, также означает сложность
  2. WU необходимо поддерживать неисчислимое количество комбинаций аппаратного и программного обеспечения.
  3. WU необходимо применить обновления в правильном порядке.
  4. Windows 7 — старая система, а SP2 уже просрочен и, вероятно, никогда не выйдет, что приводит к очень большому количеству обновлений.
  5. В последние годы компания Microsoft находилась под большим давлением из-за необходимости исправления многочисленных проблем безопасности, что привело к появлению множества суетливых исправлений, затем исправлений исправлений и так далее до n-го поколения.
  6. Microsoft не смогла в достаточной степени оптимизировать механизм обновления, который в целом представляет собой экспоненциальный алгоритм, что приводит к довольно медленному алгоритму грубой силы.
  7. Серверы Microsoft WU иногда перегружены.

Давайте рассмотрим эти моменты более подробно.

Сложности Центра обновления Windows

После выпуска обновления оно может со временем вступить в три дополнительные фазы: пересмотр, замена и истечение срока действия.

Обновление редакций: Когда вносятся изменения в ранее выпущенное обновление, это называется Update Revision, где некоторые части загрузки изменяются. Это частичная, а не полная замена обновления.

Замененные обновления: Это полная замена предыдущего выпуска или выпусков. Иногда Microsoft объединяет несколько выпусков в один пакет, и этот пакет заменяет свои инкапсулированные обновления.

Просроченные обновления: Это обновления, удаленные из списка действительных обновлений. Такие обновления больше не применимы и не будут обнаружены для установки. В большинстве случаев обновление устаревает после того, как его заменяет Заменяемое обновление.

Обновления также имеют механизм зависимости, что означает, что для некоторых обновлений может потребоваться сначала применить другие обновления.

Просроченные обновления создают проблемы для производительности WU, поскольку, к сожалению, они не удаляются с компьютера, поэтому они все еще участвуют в расчетах, и их так много. Некоторое улучшение может быть достигнуто с помощью очистки диска дляУдалить устаревшие обновления Windows (сначала сделайте резервную копию образа системного диска, так как WU также очень хрупкий).

Расчеты WU

Из-за огромного количества возможных комбинаций Microsoft хранит все обновления на серверах WU в формате огромного дерева. Решение о том, какие обновления необходимо применить, принимается алгоритмом обрезки дерева, который учитывает установленное оборудование и программное обеспечение клиента, а также все уже установленные обновления, что само по себе является большим массивом фактов, которые должны быть успешно применены при обрезке.

Алгоритм не гарантирует успешность, то есть WU вполне способен уничтожить ОС или даже сделать ее незагружаемой. Это вполне понятно, например, взять обновление A1, имеющее ревизию A2, где обновление B, зависящее от A, было выпущено между A1 и A2. Теперь подумайте, должен ли быть порядок установки A1-B-A2 или A1-A2-B, когда неправильное решение может оказаться смертельным.

Перегруженные серверы WU

Википедия говорит следующее:Статистика Центра обновления Windows:

По состоянию на 2008 год Windows Update имел около 500 миллионов клиентов, обрабатывал около 350 миллионов уникальных сканирований в день и поддерживал в среднем 1,5 миллиона одновременных подключений к клиентским машинам. Во вторник обновлений, в день, когда Microsoft обычно выпускает новые обновления программного обеспечения, исходящий трафик может превышать 500 гигабит в секунду.

Эти цифры, вероятно, уже удвоились, и это объясняет, почему серверы WU иногда недоступны. Я использую опцию WU «Проверить обновления, но позвольте мне выбрать», и мой собственный опыт показывает, что бывают дни и времена, когда проверка обновлений занимает больше времени, чем я готов ждать, и это требует отсрочки.

Долгая история Windows 7

Windows 7 была выпущена 22 июля 2009 года. Примерно через 17 месяцев, 22 февраля 2011 года, вышел пакет обновления 1 (SP1). Это было около 4,5 лет назад, а это значит, что SP2 давно назрел.

Хорошая сторона Service Pack в том, что его установка стирает всю историю обновлений, так что WU по сути начинается с нуля, точно так же, как после новой установки Windows. Это, конечно, значительно ускоряет все вычисления, поскольку приходится учитывать меньше обновлений.

Огромное количество существующих обновлений с момента SP1 объясняет, почему вычисления WU сегодня так медленны. Для Microsoft проблема может быть решена «просто» путем обновления до более новой версии Windows 8.1 или Windows 10, поэтому WU придется учитывать меньшее количество обновлений.

Заключение

Поскольку Microsoft продолжает выпускать многочисленные обновления для Windows 7, скорость работы WU со временем будет только замедляться.

Одна из возможных оптимизаций —Удалить устаревшие обновления Windows. Другой способ — использовать опцию WU «Проверять наличие обновлений, но выбор за мной» и проверять наличие обновлений рано утром или поздно вечером.

Большинство обновлений также применимы к Windows 8 и 10, поэтому нагрузка на серверы WU Microsoft только увеличится, когда вскоре выйдет Windows 10. Microsoft также, похоже, распределяет пропускную способность своих серверов WU в соответствии со своими собственными политиками, делая акцент на обслуживании более новых операционных систем, поэтому следует ожидать очередного замедления для Windows 7 после выпуска Windows 10, а также непропорционально более быстрых обновлений для Windows 10.

Если WU работает слишком медленно, единственным реальным решением является обновление до более поздней версии Windows.

Хорошие новости: вышел SP2 для Windows 7 (и 8.1)

Microsoft опубликовала то, что на самом деле является SP2 для Windows 7 и 8.1. Это обновление не будет доступно в Центре обновления Windows по неизвестной причине, поэтому его придется вручную загрузить и установить.

О том, как его получить, читайте в статье:
Microsoft пересматривает обновление Windows 7 и 8.1 — но не называйте это пакетом обновления.

решение3

Эта проблема возникала и исчезала на протяжении многих лет, и по ходу дела предлагались различные решения, поэтому вот мое обновленное руководство по этой проблеме по состоянию на 5 января 2016 г.

Проверьте раздел EDIT ниже, по состоянию на май 2016 года существует гораздо более быстрый способ полного обновления Windows 7 SP1 после чистой установки.

Именно это я и делаю, когда переустанавливаю W7 с пакетом обновления 1 (SP1) или когда возникают проблемы с Центром обновления Windows, зависшие при проверке обновлений.

Если пакет обновления 1 не установлен, установите его, прежде чем следовать этому руководству.

Скачать KB-3138612 и сохраните его там, где вы сможете найти его позже

Загрузить инструмент SUR сохранить его в том же месте

Перезагрузите ПК и отключитесь от интернета до загрузки Windows. Это важно, поскольку при каждой загрузке Windows будет проверять наличие обновлений в фоновом режиме, и это снова запустит проверку обновлений и не позволит установить загруженные пакеты до завершения проверки. Поэтому отключение от интернета до загрузки Windows предотвращает это.

После загрузки установите KB-3138612, если требуется перезагрузка, сделайте это и не подключайтесь к Интернету.

Теперь установите пакет SUR Tool, это большой пакет, который установит много обновлений, а также очистит и восстановит хранилище обновлений Windows. Это также сократит количество дополнительных обновлений Windows, которые нужно будет установить позже.

После установки пакета SUR перезагрузитесь, подключитесь к интернету и выполните ручное обновление Windows, теперь все должно работать намного быстрее. Даже после этих исправлений я видел, как некоторым ПК W7 требовалось до часа, чтобы завершить проверку обновлений, если они запускались из Панели управления вручную.

Если у вас возникли другие проблемы с обновлениями Windows и установлены 2 вышеуказанных обновления,загрузить этот инструмент исправления Microsoft Windows Update(щелкните правой кнопкой мыши "сохранить ссылку как") запустите его и выберите агрессивный режим, чтобы полностью сбросить обновления Windows. Перезагрузите и попробуйте снова запустить обновления Windows из Панели управления. Этот инструмент исправляет проблемы, когда другие инструменты Microsoft Fixit не срабатывают, по крайней мере, по моему опыту.

Обновлять:У Microsoft естьвыпустили огромный накопительный пакет обновлений для Windows 7 SP1, это похоже на пакет обновления, но они его так не называют. Это значительно ускорит обновление Windows 7 после чистой установки, больше никаких проблем с обновлением Windows и множества перезагрузок. Этот накопительный пакет обновления приведет систему в соответствие с патчем вторника апреля 2016 года.

Это не распространяется через Центр обновления Windows, вам придется использовать Internet Explorer, чтобы получить его, откройте IE и перейдите по этому адресу.

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

Введите в поле поиска 3125574 и нажмите клавишу Enter.

введите описание изображения здесь

Теперь вы увидите все версии этого накопительного пакета, выберите нужную вам и загрузите ее в то место, где вы сможете найти ее позже.

введите описание изображения здесь

Также используйте страницу каталога Центра обновления Windows дляСначала загрузите и установите это обновление, 3020369, это является предварительным условием для накопительного пакета, затем установите 3125574, также обязательно отключитесь от Интернета при применении этих обновлений.

решение4

Если судить по прошлому опыту с обновлением XP, то иногда онипусть там проскальзывает алгоритм экспоненциального времени. Который, когда у вас много обновлений... занимает вечность. В настоящее время обновления Win 7 находятся в похожей ситуации; занимают много времени, хотя пока нет официального объяснения этого последнего приступа замедления. Интересно, что это «просто происходит» (со старыми версиями), когда у них выходит новая. Циничный я не могу не представить, что кто-то может намеренно хотеть, чтобы это произошло, по типу [старая] Windows медленная? Вам нужна новая версия. Или, может быть, это просто способ MS начать праздничный сезон.

Существует исправление для некоторой медленной работы WU, которое не предлагается автоматически (т.е. через само обновление):https://support.microsoft.com/en-us/kb/3102810Увы, в моем случае это не имело особого значения, хотя я пробовал это на двух разных компьютерах, на 32-битном и на 64-битном. Кроме того, это было где-то с октября, так что, вероятно, это не для последних выпусков.

Связанный контент