为什么 Windows 更新需要很长时间才能完成并且需要重新启动(有时需要 2 次),而 Linux 更新却在后台顺利运行,而我仍然可以在系统上工作(并且只有内核更新需要重新启动)?
Windows 是一家公司出品的产品,他们难道不能实施一些不那么令人困扰的更新程序吗?
这背后的技术原因是什么?
答案1
例如,Windows Servicing Stack 会分析系统上的共享库并为其提供更新。它还会进行分析,以查看是否需要删除或修补过去的更新。
这两种方法都允许系统保持与可能已安装的任何程序的向后兼容性,方法是允许存在多个版本的共享库;因此更新不会破坏依赖于旧版本库的应用程序。
较旧的图书馆有更多的时间让黑客找到漏洞,因此,即使它们已经被取代,也经常需要更新。
在 Linux 上,最新更新会与其依赖项一起安装。您无法回滚,有时更新会导致应用程序停止运行。
Windows 服务堆栈确实会确定更新是否需要重新启动,并且大多数更新不需要重新启动,因为您会发现如果您允许自动更新,Windows 更新就会为系统提供服务,这种情况每天可能发生多次。
服务堆栈本身需要定期更新,因为它的工作相当复杂。
Windows 为历史非常悠久的产品提供服务。我无法想象有哪个操作系统能够持续更新,同时又能与几十年前的应用程序保持兼容性。