Почему иногда мне нужно перезагрузить компьютер после установки нового программного обеспечения, а иногда нет?
Есть ли какая-то причина, по которой он нуждается в такой перезагрузке или почему это не всегда так или иначе?
installation
reboot
случайный
источник
источник
Ответы:
Это зависит.
Если устанавливаемое программное обеспечение влияет на неотъемлемую часть операционной системы, требуется перезагрузка. Например, новое ядро для операционной системы.
В системах Windows его часто используют, потому что пользователи считаются слишком глупыми, чтобы правильно использовать свои компьютеры. В качестве примера Microsoft публикует подробности того, как изменить «тип узла», используемый для работы в сети, на своем веб-сайте , включая инструкцию «перезагрузить компьютер», когда все, что требуется, - это перезапуск сетевой службы, как подробно описано здесь . Поскольку мы, как пользователи, слишком глупы, чтобы перезапустить службу, нам говорят, чтобы перезапустить все.
Для некоторых программных продуктов я пришел к выводу, что это привычка и часто не требуется, даже если это необходимо сделать. Если я не думаю, что часть программного обеспечения должна была сделать что-то важное для операционной системы, я бы не стал беспокоиться и не испытывал никаких проблем (и если бы были проблемы, их было бы легко решить).
источник
Иногда программное обеспечение вносит изменения, которые не могут вступить в силу во время использования компьютера. Причины могут быть следующими: файл используется, изменение может произойти только во время загрузки компьютера, может возникнуть проблема безопасности, которая может быть решена только до того, как компьютер активирует свою сеть, возможно, вирусный сканер будет мешать работе. установить.
Иногда это просто небрежное программирование разработчиков.
Я уверен, что есть еще много.
источник
Часто при установке нового программного обеспечения dll (файл), который используется многими другими программными пакетами, необходимо обновить до новой версии. (Это гораздо более вероятно при обновлении уже установленного приложения.)
Если dll используется запущенным приложением, его часть будет загружена в память, а остальная часть будет считана с диска, когда это необходимо. Поэтому DLL будет заблокирован на диске. (Подумайте о проблемах, если они не были заблокированы!)
Заблокированная DLL не может быть обновлена, поэтому установщик попросит Windows заменить DLL новой версией при следующем перезапуске машины. Отсюда необходимость перезагрузки.
Некоторые лучшие установщики расскажут вам о приложениях, которые должны быть закрыты перед запуском установщика, поэтому дайте DLL обновиться без перезапуска. Однако это делает интерфейс установщика более сложным и приводит к большему количеству обращений в службу поддержки.
Установщик приложения также может заставить приложение сохранить его состояние, выключить его, а затем перезапустить после обновления DLL. Это можно сделать, только если DLL используется одним приложением. Большинство самообновляющихся приложений делают это - это должно быть нормой для приложений массового рынка, когда много пользователей.
Все вышеперечисленное может привести к сложной логике, которую сложно проверить. Тестирование установщиков занимает много времени, так как вам нужно попытаться угадать каждое состояние, в котором может находиться компьютер пользователя. Поэтому часто лучше, чтобы установщик был простым и всегда работал, даже если это приводит к еще нескольким перезапускам для пользователя. ,
Не часто пользователь решает купить другое приложение из-за перезапуска установщика, поэтому продавец тратит время (деньги) на то, что нужно, чтобы заставить пользователя покупать их приложения.
Как часто у вас возникали проблемы после установки приложения, которое само решалось после перезагрузки? Подумайте о стоимости поддержки многих пользователей, звонящих по телефону с проблемами, которые решаются только с перезагрузкой. Как разработчик может очень быстро заставить собравшихся перезагрузить пользователя после установки программного обеспечения, даже если вы считаете, что в этом нет необходимости.
----------
Большинство операционных систем и программного обеспечения были написаны в те дни, когда дисковое пространство и память стоили больших денег. В настоящее время приложения стремятся получить личную копию всех используемых ими библиотек, что делает обновление ластика, но требует больше места для хранения.
На серверах это делается с помощью «контейнеров», однако «контейнеры» не подходят для настольного программного обеспечения, так как вы хотите иметь доступ к данным, сохраненным одним приложением с другим приложением. (В противном случае просто используйте iPhone.)
источник
Причина в том, что если вы этого не сделаете: вы потерпите крах. От Раймонда Чена :
источник
Честно говоря, разработчики программного обеспечения меньше работают (и, следовательно, меньше $$), полагая, что обновления всегда будут приводить к перезапуску. Это, вероятно, такое же решение для счетчиков компонентов, как и для разработчиков.
В конечном счете, существует очень мало обновлений, которые в идеальном мире невозможно было бы выполнить без перезапуска, но для этого требуется предварительное планирование, и есть некоторые риски, учитывая широкий спектр возможных конфигураций, которые может иметь система.
источник
Это связано с тем, что очень трудно изменить код во время его работы, не вызывая при этом серьезных проблем. Решение: остановите все перед изменением кода, таким образом, вы можете быть уверены, что ничего не работает. Это взлом грубой силы, который в большинстве случаев не нужен во многих случаях, когда он предположительно требуется, но он может быть абсолютно необходим, особенно если вам приходится обновлять особенно важный код. На самом деле существует целая компания, которая специализируется на создании обновлений, которые НЕ требуют перезагрузки для этого особенно важного кода. То, как они это делают, находится в этой статье http://www.ksplice.com/paper .
источник
Вам необходимо перезагрузить компьютер при изменении важных системных файлов для Windows, поскольку Windows не позволяет изменять эти файлы во время их использования. Поэтому большинство обновлений из Центра обновления Windows требуют перезагрузки, как и программы, которые интегрируются в Windows (например, антивирус). До перезагрузки Windows не может выполнить несколько последних шагов, необходимых для «установки» программы.
Вы можете сравнить это с Linux, который редко требует перезагрузки. Даже когда вас просят перезагрузить компьютер, вам обычно нужно только выйти из системы и снова войти в нее. Это связано с тем, что типичная среда Linux состоит из множества различных отдельных программ, которые работают вместе для создания полной ОС. Если важный файл изменяется во время установки, вам, как правило, лучше всего перезапустить только одну конкретную программу, которая использует этот файл.
источник