Warum ist die Löschgeschwindigkeit in Windows häufig regelmäßig?

13

Was ist der Grund dafür, dass die Löschzeiten aus Gründen des Interesses häufig sind? In Windows 8 zeigt das Löschdialogfenster die Löschgeschwindigkeit in einem Diagramm an.

Windows 8-Löschdialogfenster

Wenn es keinen Grund gibt, wäre das natürlich auch eine Antwort.

danijar
quelle
4
Sie haben 100.000 Dateien im Ordner. Alle Dateien haben unterschiedliche Größen. Die Messung erfolgt in Elementen pro Sekunde. Je kleiner die Elemente, desto schneller werden die Elemente gelöscht.
Ramhound
3
@Ramhound, Es scheint nicht, dass dies mit variierender Dateigröße zusammenhängt. Die Sinusform des Graphen ist zu regelmäßig.
GaTechThomas
1
Windows löscht keine belegten Blöcke, wenn Dateien gelöscht werden. Das Löschen einer großen Datei sollte nicht länger dauern als das Löschen einer kleinen Datei. Der Täter ist eher die schiere Anzahl der Elemente. Befinden sie sich in vielen Unterordnern? Bei der Bearbeitung vieler (großer oder kleiner) Dateien entsteht ein erheblicher Aufwand - unabhängig davon, ob Sie Dateien löschen, kopieren oder verschieben.
abstrask
2
Irgendeine Art von Caching? Mehrere Löschanforderungen werden an den Spitzen der Grafik gelöscht?
Jesse Slicer
1
Ich habe das auch gesehen, manchmal mit viel größeren Wellen.
Moshe Katz

Antworten:

5

Es gibt einige Gründe:

  1. Datenkontinuität: NTFS wird dort implementiert, wo sequentiell über eine Disk geschrieben wird. Wenn Sie also eine Datei bearbeiten, muss NTFS die Änderungen möglicherweise in einem nicht zusammenhängenden Sektor auf Ihrer Festplatte speichern. Das bedeutet, dass zum Löschen einer Datei möglicherweise von Sektor 2 auf Sektor 100.000 gesprungen werden muss (natürlich hypothetisch) und dann zurück, um die Datei zu beenden. Dann findet es den nächsten Sektor der nächsten zu löschenden Datei und könnte diesen Vorgang erneut wiederholen.

  2. Datentypen: Angenommen, Sie löschen einen Ordner temp, der möglicherweise große und kleine Dateien enthält. Einige davon lassen sich schnell verarbeiten, andere sind möglicherweise langsamer (unabhängig davon, ob es sich um die Größe oder die Komplexität der Daten handelt - dh wie viele Sektoren müssen verarbeitet werden, um ein "Element" fertigzustellen).

  3. @Ramhound erwähnte das Stück "Items per second", was durch Ihren Löschdialog bestätigt zu werden scheint ( Speed: 1.082 items/s). Das Löschen einer großen Datei, einer nicht zusammenhängenden Datei oder einer kleinen Datei spielt also eine Rolle für die Anzahl der Elemente pro Sekunde.

  4. CPU-Priorisierung: Diese Aufgaben werden in Taktzyklen ausgeführt, sodass es wahrscheinlich ist, dass Ihre CPU während des Zyklus andere Prozesse ausführt und die Geschwindigkeit beeinträchtigt (dies ist eine Vermutung von meiner Seite).

Nerdwaller
quelle
3
Windows / NTFS löscht keine belegten Blöcke, wenn Dateien gelöscht werden. Groß oder klein, zusammenhängend oder nicht zusammenhängend spielt keine Rolle.
abstrask
@abstrask - Ich habe nicht gesagt, es macht nichts aus. Es muss jedoch um die $BitMap(Datei) zu jedem Cluster springen und ihn als frei zur Verwendung markieren (dh "gelöscht"). Das Öffnen und Bearbeiten einer Datei (auf jeder Ebene) beansprucht Ressourcen, und das Herumspringen in dieser Datei ist mit einem Mehraufwand verbunden und kann Sie absolut verlangsamen. Wenn die Datei groß ist, dauert das Bearbeiten länger, wenn die Datei nicht zusammenhängend ist, dauert das Suchen etwas länger.
Nerdwaller
1
Jeder Cluster wird in der $ Bitmap-Datei durch ein Bit dargestellt. Angenommen, die Standardgröße der Zuordnungseinheit beträgt 4 KB. Die Zuordnungsreferenz für eine 100-KB-Datei macht in der $ Bitmap-Datei etwa 3 Byte aus. Eine große Datei, beispielsweise 1 GB, belegt in der $ Bitmap-Datei 32 KB. Selbst wenn $ Bitmap stark fragmentiert wäre, müsste die Festplatte nur zwischen 32 KB / 4 KB / Cluster = 8 Clustern springen, um die Cluster der 1 GB-Datei zum Löschen zu markieren. Ja, es müssen mehr Bits gespiegelt werden, um eine große Datei zu löschen, aber es ist kaum messbar und würde definitiv nicht zu den großen visuellen Unebenheiten führen, die im Screenshot gezeigt werden.
abstrask