เหตุใดความเร็วในการลบใน Windows จึงเป็นระยะบ่อยครั้ง


13

เพียงแค่สนใจสิ่งที่เป็นสาเหตุของการลบครั้งที่จะเป็นระยะบ่อยครั้ง? ใน Windows 8 หน้าต่างการลบจะแสดงความเร็วในการลบในไดอะแกรม

หน้าต่างโต้ตอบการลบ Windows 8

หากไม่มีเหตุผลแน่นอนว่าจะเป็นคำตอบด้วย


4
คุณมีไฟล์ 100,000 ไฟล์ในโฟลเดอร์พวกมันมีขนาดแตกต่างกันการวัดคือรายการต่อวินาทีดังนั้นรายการที่เล็กกว่าก็จะถูกลบเร็วขึ้น
Ramhound

3
@Ramhound ดูเหมือนจะไม่เกี่ยวข้องกับขนาดไฟล์ที่แตกต่างกัน ธรรมชาติของกราฟซายน์นั้นปกติเกินไป
GaTechThomas

1
Windows จะไม่ปิดกั้นบล็อกที่ถูกยึดครองเมื่อทำการลบไฟล์ การลบไฟล์ขนาดใหญ่ไม่ควรใช้เวลานานกว่าการลบไฟล์ขนาดเล็ก ผู้กระทำผิดมีแนวโน้มที่จำนวนรายการที่แท้จริง พวกเขาอยู่ในโฟลเดอร์ย่อยมากมายหรือไม่? มีค่าใช้จ่ายมากมายเมื่อต้องจัดการกับไฟล์จำนวนมาก (เล็กหรือใหญ่) - ไม่ว่าคุณจะลบคัดลอกหรือย้าย
abstrask

2
แคชบางประเภท? คำขอลบจำนวนมากได้รับการฟลัชที่จุดสูงสุดของกราฟหรือไม่
Jesse Slicer

1
ฉันเคยเห็นสิ่งนี้ด้วยบางครั้งก็มีคลื่นขนาดใหญ่กว่ามาก
Moshe Katz

คำตอบ:


5

มีสาเหตุบางประการ:

  1. ความต่อเนื่องของข้อมูล: NTFS ถูกนำไปใช้ในตำแหน่งที่เขียนเรียงตามลำดับบนแผ่นดิสก์ดังนั้นหากคุณแก้ไขไฟล์ - NTFS อาจต้องเก็บการเปลี่ยนแปลงในภาคที่ไม่ต่อเนื่องกันบนฮาร์ดดิสก์ของคุณ นั่นหมายความว่าหากต้องการลบไฟล์คุณอาจต้องกระโดดจากเซกเตอร์ 2 ไปยังเซกเตอร์ 100,000 (แน่นอนว่าเป็นสมมุติ) และจากนั้นกลับไปสิ้นสุดไฟล์ จากนั้นจะพบเซกเตอร์ถัดไปของไฟล์ถัดไปที่จะลบและอีกครั้งสามารถทำซ้ำกระบวนการนั้น

  2. ชนิดข้อมูล: สมมติว่าคุณกำลังลบโฟลเดอร์ในtempอาจมีไฟล์ขนาดใหญ่และไฟล์ขนาดเล็ก บางส่วนจะถูกประมวลผลอย่างรวดเร็วและบางส่วนอาจช้ากว่า (ไม่ว่าจะเป็นขนาดหรือความซับซ้อนของข้อมูล - เช่นจำนวนภาคที่ต้องประมวลผลเพื่อให้ "รายการ" เสร็จสิ้น)

  3. @Ramhound พูดถึงชิ้นส่วน "items per second" ซึ่งดูเหมือนจะได้รับการยืนยันโดยกล่องโต้ตอบการลบของคุณ ( Speed: 1.082 items/s) ดังนั้นการลบไฟล์ขนาดใหญ่ไฟล์ที่ไม่ต่อเนื่องกันหรือไฟล์ขนาดเล็กล้วนมีบทบาทในจำนวนรายการต่อวินาที

  4. การจัดลำดับความสำคัญของ CPU: สิ่งนี้ทำในรอบสัญญาณนาฬิกาดังนั้นจึงเป็นไปได้ว่า CPU ของคุณอาจใช้กระบวนการอื่นในระหว่างรอบและอาจส่งผลต่อความเร็ว (นี่คือการคาดเดาในส่วนของฉัน)


3
Windows / NTFS ไม่ได้ทำการบล็อคที่ถูกครอบครองเมื่อทำการลบไฟล์ ขนาดใหญ่หรือขนาดเล็กติดต่อกันหรือไม่ต่อเนื่องกันไม่สำคัญ
abstrask

@abstrask - ฉันไม่ได้บอกว่ามันจะไม่มีอะไรเกิดขึ้น อย่างไรก็ตามมันจะต้องข้ามไปรอบ ๆ$BitMap(ไฟล์) ไปยังแต่ละคลัสเตอร์และทำเครื่องหมายว่าเป็นอิสระในการใช้ (เช่น "ลบ") การเปิดและแก้ไขไฟล์ (ไม่ว่าจะอยู่ในระดับใดก็ตาม) จะต้องใช้ทรัพยากรและการข้ามไปมานั้นจะใช้ค่าใช้จ่ายและอาจทำให้คุณช้าลงอย่างแน่นอน หากไฟล์มีขนาดใหญ่ - ใช้เวลาในการแก้ไขนานกว่าหากไฟล์นั้นไม่ต่อเนื่อง - จะใช้เวลาในการค้นหานานกว่าเล็กน้อย
nerdwaller

1
แต่ละคลัสเตอร์จะถูกแทนด้วยบิตในไฟล์ $ Bitmap สมมติว่าขนาดหน่วยการจัดสรรเริ่มต้นเท่ากับ 4 KB การอ้างอิงการจัดสรรสำหรับบัญชีไฟล์ 100 KB จะมีขนาดประมาณ 3 ไบต์ในไฟล์ $ Bitmap ไฟล์ขนาดใหญ่ที่มีขนาด 1 GB จะมีขนาด 32 KB ในไฟล์ $ Bitmap แม้ว่า $ Bitmap จะกระจัดกระจายอย่างหนักฮาร์ดไดรฟ์จะต้องข้ามระหว่าง 32 KB / 4 KB / cluster = 8 คลัสเตอร์เพื่อทำเครื่องหมายกลุ่มไฟล์ 1 GB สำหรับการลบ ใช่บิตเพิ่มเติมจะต้องพลิกเพื่อลบไฟล์ขนาดใหญ่ แต่ก็แทบจะไม่สามารถวัดได้และจะไม่ทำให้เกิดการกระแทกภาพขนาดใหญ่ที่แสดงในหน้าจอ
abstrask
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.