iBu*_*Bug 57 software-conflict anti-virus
我被教导永远不要同时安装两个防病毒 (AV) 软件,因为它们会发生冲突。甚至 Windows Defender(自 Windows 8 起)在检测到其他 AV 软件时也会自行禁用。
我很好奇两个怎么会冲突。我目前唯一能想到的情况是,当两者都检测到相同的病毒并尝试同时对其进行隔离时,这可能会导致“病毒征服战”。对我来说,这肯定不是不安装两个 AV 软件的令人信服的理由。
更不用说系统性能问题了。我想我的 Intel Kaby Lake i7 可以使用 16 GB 安装内存轻松处理它们。
gro*_*taj 83
普通的防病毒扫描程序可以共存而没有任何问题。这是可能导致 AV 干扰的实时保护。
具有实时保护功能的 AV 软件将自身深度集成到操作系统中。它修补了一些操作系统代码,以便它可以观察任何程序尝试执行的操作,并在必要时阻止它们执行此操作。操作系统不提供这种开箱即用的功能,因此 AV 使用较少的传统方法来实现这种效果。
例如,它可以用其自定义的功能替换操作系统提供的“写入文件”功能。当程序尝试写入文件时,它会调用“写入文件”函数。但是该功能被 AV 修补,程序的请求将被重定向到 AV。AV 将检查它并决定它是否正常。如果是,它将调用实际的“写入文件”函数。否则,它将采取适当的措施来防止恶意软件造成任何损害。
不幸的是,操作系统代码的修补不仅对于 AV 来说是必要的,而且也是可疑的。如果您正在制造病毒,您是否也希望能够拦截系统操作,例如阻止 AV 扫描病毒文件?
所以 AV 有守卫看他们的代码钩子是否仍然存在,并在必要时重新安装它们。在这一点上,你应该看到这是怎么回事......
两个具有实时保护功能的 AV 可以开始保护您免受彼此的可疑行为的影响。这可能导致从轻微的性能问题到系统崩溃的任何事情。
在某些情况下,即使是没有实时保护的 AV 扫描仪也会干扰。AV 如何检测病毒?嗯,他们有他们的病毒签名,即。已知病毒的显着特征的数据库。所以碰巧这样的数据库也可能看起来很可疑,因为它们具有病毒的独特特征。因此,一个 AV 可以假设将其他 AV 的签名检测为恶意代码。
还有一些 AV 引擎旨在与其他 AV 共存,例如 Hitman Pro。ClamWin(它是免费和开源的)在共存时也应该相对没有问题,因为它只包含一个没有任何实时保护的扫描仪。
Fra*_*mas 14
当它们都尝试使用相同的资源时,程序会发生冲突。当多个程序试图同时操作一个资源时,存在并发问题的风险。当一个进程对资源执行更改时,会出现并发问题,而另一个程序(正在中间对资源进行自己的修改)不知道它,因此无法适应。
下面是一些教科书并发问题的例子。
想象一下,您正在使用 FTP 目录共享一个文档,您和一位同事在该目录中协作处理一个文档。您下载文档,对其进行编辑,然后再次发布,就像您的同事一样。
结果:当您上传您的文档时,您会覆盖他们的更改并丢失。
在同一场景中,您的同事在没有告诉您的情况下进行了一些您需要的更改。您的文件副本没有更改,
结果:你自己用略有不同的词写了相同的变化,或者更糟的是,发送一封令人讨厌的电子邮件,说明它是如何丢失的。
这似乎是一个简单的场景,但在多访问数据库等高级情况下,如果您在有人更新记录的同一毫秒内选择记录,您可能会遇到严重的问题。
一对已婚夫妇共用一个银行账户和 ATM 卡。他们的账户中有 1000 美元。在他们的日常生活中,他们在城镇的两侧,并且都在同一时间使用自动取款机。他们都提取了 1000 美元。ATM 都知道余额是 1000,所以他们允许提款,然后写回中央数据库新的余额是 0。
结果:银行现在出 1000 美元,甚至不知道。
在所有这些示例中,有多方同时或几乎同时对共享资源执行操作。因此,术语“并发”或“同步”。
有几种方法可以处理此类问题。一种是使用在访问资源的多方之间进行仲裁的软件。这些仲裁程序有两个选项,具体取决于操作的范围和可预测性:
也可以阻塞/锁定,前提是两个程序都设计为检查指示资源状态的共享标志。这通常需要定制开发。
在您的特定情况下,资源是磁盘上的文件。同步性来自文件读/写等事件,它们在两个 AV 程序中触发访问扫描。
Windows 充当仲裁者,通过在程序为特定操作打开文件时锁定文件来解决文件系统并发问题。
这意味着两个程序都在争先恐后地访问该文件,而首先到达那里的人将获得锁定。在低级别上,这会导致一些磁盘抖动,因为两个程序都开始自己的 I/O 活动,迫使硬件分别执行这两项任务,但交错执行 IO 指令,使两者的效率大大降低,最后,只有一个他们中的人会赢。另一个将旋转并等待能够建立自己的锁定。