- Antivirus: Microsoft Security Essentials
- Betriebssystem: Windows 7 x64
Dumme Frage vielleicht, aber irgendwie hatte ich den Eindruck, dass mehrere Kerne bedeuten würden, dass der Antiviren-Scanner mehrere Dateien gleichzeitig bearbeiten könnte, indem er sie verschiedenen Kernen zuordnet.
Wie sich herausstellt, irre ich mich. Beim Versuch, zwei unterschiedliche Ordner gleichzeitig zu scannen, wird eine Meldung angezeigt, dass der Scanner bereits belegt ist. Also bin ich neugierig (+:
Kann mein Virenscanner auf einer echten Dual-Prozessor-Platine mehrere Dateien gleichzeitig scannen, oder handelt es sich dabei nur um eine Designfehler mit dem Scanner?
anti-virus
multi-core
bottleneck
Everyone
quelle
quelle
Antworten:
Die kurze Antwort lautet: eine Design-Sonderheit des Scanners.
Die Möglichkeit, mehrere Dateien gleichzeitig zu scannen, hat mehr mit der Programmierung Ihres Virenscanners zu tun. Um das zu tun, was Sie möchten, muss die Software parallel ausgeführt werden. Ich kenne keinen Virenscanner, der dies tut.
quelle
Auf der Softwareseite unterscheidet sich der Multicore-Prozessor in 99% aller Fälle nicht vom Multiprozessorsystem.
In einigen Fällen könnte es im Multicore-Camp einen Vorteil geben, da die Kommunikation zwischen Cores schneller ist als bei Multiprozessorsystemen.
Auf Computern dagegen, die sehr viel RAM benötigen, sind Multiprozessorsysteme möglicherweise besser, da Sie jedem Prozessor RAM zuweisen können, um ihn für seine eigenen Aufgaben zu steuern, und auf diese Weise den verfügbaren RAM erhöhen.
Wiederum sind Multicore-Prozessoren, wie sie heutzutage von Personalcomputern verwendet werden, voll funktionsfähig oder führen mehrere Aufgaben gleichzeitig aus, und es wäre fast kein Vorteil, ein Multiprozessorsystem zu haben.
Beachten Sie auch, dass die Last vom Betriebssystemkern gesteuert wird. Es kann sich entscheiden, dass es in einem Multicore- oder Multiprozessorsystem (das aus Sicht des Betriebssystems und der Anwendung gleich ist) für das gesamte System besser ist, den Rest der Kerne anderen Aufgaben als der Virenprüfung zu widmen.
Ein anderer Gesichtspunkt ist HDD. Es kann nicht zwei Dateien gleichzeitig physisch lesen, daher ist dies ein wesentlicher einschränkender Faktor. Manche AV-Software kopiert Dateien zuerst in den RAM-Speicher und versucht, diese parallel zu scannen. Es gibt jedoch keine Leistungsverbesserung, da die Festplattengeschwindigkeit in der Regel der begrenzende Faktor ist. Daher ist kein RAM erforderlich.
Sie können immer parallel Dateien auf verschiedenen Festplatten scannen und auf diese Weise die Leistung verbessern. Ich hatte keine Probleme beim parallelen Scannen von zwei Verzeichnissen auf zwei verschiedenen Festplatten mit Avast 6.
quelle
"Gibt es eine Idee, warum AV keine parallelen Prozesse ausführen kann?
Das Schreiben von Multithreadcode ist eine Größenordnung schwieriger als das Schreiben von Einzelthreadcode. Daher neigen wir dazu, dies zu vermeiden, es sei denn, es bietet einen großen Vorteil.
In diesem Fall ist die Geschwindigkeit des Antiviren-Scans durch die Geschwindigkeit der Festplatten- / Speicherlesevorgänge und nicht durch die Geschwindigkeit der CPU eingeschränkt, sodass Multithreading nur einen geringen Vorteil bietet.
quelle
AV-Scanner neigen auch dazu, zusammen mit anderen Programmen mit minimalem Eingriff zu arbeiten (McAfee schien dieses Memo jedoch nie zu verstehen), was Sie mit dem System neben dem Scannen auf Viren versuchen. Aus diesem Grund können sie so ausgelegt werden, dass nicht mehr als ein Kern gleichzeitig verwendet wird, um die anderen Kerne für Ihre Verwendung verfügbar zu machen.
Es ist möglicherweise eine gute Idee für AV-Programmierer, eine Option "Full Power" für dedizierte Scans anzubieten, bei denen Zwischenspeicherung und alle Prozessorkerne verwendet werden, um äußerst gründliche Scans von möglicherweise infizierten Systemen mit sehr hoher Geschwindigkeit durchzuführen.
Wenn ich darüber nachdenke, mag ich diese Idee sehr. Sicherlich könnte der Scanner viel schneller als die Festplatte sein, aber bei einer On-Demand-Scansituation kann der Einsatz riesiger Arbeitsspeicher und mehrerer Threads ein unglaublich intensives Scannen des Systems in relativ kurzen Zeiträumen ermöglichen.
quelle