为什么 Windows 每次更新都需要重新启动,而 Linux 则不需要?

kmo*_*oor 11 linux windows-7 windows-update reboot

即使是一个包或安全补丁的最小更新也需要重新启动 Windows。为什么?

如果防病毒应用程序在补丁更新后不需要它,为什么 Windows 在更新 Security Essentials 的病毒签名文件后需要它?

另一方面,Linux 大多不需要它,除非它升级内核。

注意:我特别是在谈论 Windows 7。我不太了解 Windows 8 或服务器版本。

小智 8

当更新安装在 Windows 上时,重新启动有时是必要的邪恶,仅仅是因为需要更新的文件正在使用中并且在 PC 重新启动之前无法修改。另一方面,Linux 系统可以在运行时实时升级,并且仍然有 100% 的正常运行时间,开始使用升级后的程序所需要做的就是重新启动它。这一切都归结为 linux 和文件系统如何处理文件。当 linux 运行可执行文件时,它会将整个文件加载到内存中并从那里访问它。这意味着没有连接到磁盘驱动器上的物理文件。当程序关闭并切断与文件的所有连接时,文件将从内存中删除,因此在程序运行时,从内存中,

现在微软声称,在补丁、错误修复或其他 Windows 更新完成安装后,Win 8 OS 需要更少的重启,因为它将整合当月的所有重启,以便在微软熟悉的补丁星期二当天进行协调。这意味着任何需要重新启动的更新都将等到每个月的第二个星期二,基本上会提示您每月仅重新启动一次 PC。只有在需要立即应用的关键安全更新的情况下才会例外。

  • 升级期间已经在运行(在 Linux 上)的进程,在重新启动之前它们将继续存在安全风险 - 除非您有冗余和负载平衡器,否则必须中断 100% 的正常运行时间。(但是,与重新启动整个计算机相比,重新启动单个进程可能会产生非常短的停机时间。)(大多数人倾向于“忘记”这一点,可能记得内核需要重新启动,而不是进程。) (6认同)
  • 关于将可执行文件完全加载到内存中的部分是错误的。相反,可以删除指向正在运行的可执行文件的程序映像文件的所有链接。 (3认同)
  • Windows 已经有了卷影副本,如果磁盘上文件的句柄是唯一的问题,那么似乎这个问题应该很容易解决。我认为将调用路由到新内核可能会是一个更大的问题,但其他操作系统也已经解决了这个问题,因此很难不得出这样的结论:微软因需要修补的频率而陷入困境,并且没有费心去更新系统这是符合目的的。 (3认同)

Alb*_*ano 7

Windows 不会在每次安装更新时要求重新启动。例如,如果使用 Windows Update 更新了 Windows Defender 的定义,则它不会要求重新启动,或者在安装/更新新设备和相关驱动程序时,它不会要求重新启动。在最新版本的操作系统中,如果发生重大更新,例如系统或其模块的安全更新,例如.NET Framework 的更新,则严格要求重新启动。

Windows 中重新启动的原因是 Windows 无法在使用时更新重要文件,因为它们在操作系统运行时被锁定。当操作系统重新启动时,文件没有锁定,它们可能会被覆盖和更新。与Linux的区别在于架构不同。虽然 Windows 会锁定其重要文件,但 Linux 不会,并且可以比 Windows 更轻松地更新或删除文件。因此,Linux 仅要求用户重新启动几次。

  • 我不买这个。我刚刚安装了 adobe flash 更新。这是唯一的更新。它要求重新启动我的计算机。对于闪光。它基本上是一个浏览器插件。不是系统进程。<叹息> 我多年来一直运行 Linux 作为我的主要操作系统,直到最近才切换回 Windows...我开始记起为什么我讨厌运行 Windows。 (10认同)