系统安装软件后重启

时间:2013-08-06 12:37:27

标签: windows restart

为什么某些软件需要restart中的系统windows? 同时,我从未在基于Linux的Distros中遇到过这样的情况。

2 个答案:

答案 0 :(得分:2)

这是Windows设计方式的先天。加载可执行文件不会将文件加载到RAM中。 Windows会为可执行文件创建内存映射文件。程序的块只在需要时根据需要加载到RAM中。页面错误从文件复制4096个字节。 RAM页面本身不受页面文件的支持。如果其他进程需要RAM,那么Windows只需取消映射页面并丢弃它包含的字节。如果进程再次登陆页面,则页面错误会从文件重新加载RAM。非常高效,当您需要运行32位操作系统和许多进程只需16兆字节的RAM时,这一点非常重要。今天仍然有效,但不像以前那么重要。

内存映射文件的一个副作用是它对文件进行写锁定。必须防止其他进程更改可执行文件。这将是灾难性的,RAM可能包含文件中旧旧字节的混合。这可以保证导致程序出现故障。

当然,这会使有意想要更改可执行文件的程序的生活更加艰难。包括恶意变种btw。因此,必须停止加载文件的进程,它会释放写锁定。通过Windows Update提供的更新往往会更新无法轻松卸载的可执行文件,因为它们是操作系统的一部分。这是他们倾向于需要重新启动的原因,当机器重新启动时,文件会作为启动顺序的一部分进行更新。

绕过锁定的一种方法是重命名文件。锁只保护文件数据,而不保护目录条目。然后,您可以创建一个与旧目录条目同名的新目录条目。下一次进程开始时,它将使用新条目。一个小的复杂问题是你必须最终删除重命名的文件。

答案 1 :(得分:0)

我能想到的一件事是,某些软件需要运行服务才能使其正常运行。重启可能会将这些服务添加到启动计算机时自动运行的服务,以便程序可以顺利运行。