Tại sao tốc độ xóa trong Windows thường định kỳ?


13

Chỉ cần quan tâm, lý do cho thời gian xóa thường xuyên là định kỳ là gì? Trong Windows 8, cửa sổ đối thoại xóa sẽ hiển thị tốc độ xóa trong sơ đồ.

Cửa sổ đối thoại xóa Windows 8

Nếu không có lý do, tất nhiên đó cũng sẽ là một câu trả lời.


4
bạn có 100.000 tệp trong thư mục, tất cả chúng đều có kích thước khác nhau, số đo là Mục mỗi giây nên các mục càng nhỏ thì các mục sẽ bị xóa càng nhanh.
Ramhound

3
@Ramhound, Dường như điều này không liên quan đến kích thước tệp khác nhau. Bản chất hình sin của đồ thị là quá thường xuyên.
GaTechThomas

1
Windows không loại bỏ các khối bị chiếm khi xóa các tệp. Xóa một tệp lớn không nên mất nhiều thời gian hơn xóa một tệp nhỏ. Thủ phạm có nhiều khả năng là số lượng lớn các mặt hàng. Có phải chúng trong nhiều thư mục con? Có một chi phí đáng kể, khi xử lý nhiều tệp (lớn hay nhỏ) - bất kể bạn đang xóa, sao chép hoặc di chuyển.
tóm tắt

2
Bộ nhớ đệm của một số loại? Bunch của yêu cầu xóa được tuôn ra ở đỉnh của đồ thị?
Jesse Choper

1
Tôi cũng đã thấy điều này, đôi khi với sóng lớn hơn nhiều.
Moshe Katz

Câu trả lời:


5

Có một vài lý do:

  1. Liên tục dữ liệu: NTFS được triển khai khi nó ghi tuần tự trên một đĩa, vì vậy nếu bạn chỉnh sửa tệp - NTFS có thể phải lưu trữ các thay đổi trong một khu vực không liền kề trên đĩa cứng của bạn. Điều đó có nghĩa là để xóa một tập tin, nó có thể cần phải nhảy từ khu vực 2 sang khu vực 100.000 (tất nhiên là theo giả thuyết) và sau đó quay lại để hoàn thành tập tin. Sau đó, nó tìm thấy khu vực tiếp theo của tập tin tiếp theo để xóa và một lần nữa có thể lặp lại quá trình đó.

  2. Kiểu dữ liệu: Giả sử bạn đang xóa một thư mục temp, nó có thể chứa các tệp lớn và các tệp nhỏ. Một số trong số đó sẽ được xử lý nhanh chóng và một số khác có thể chậm hơn (cho dù đó là kích thước hoặc độ phức tạp của dữ liệu - tức là có bao nhiêu lĩnh vực cần được xử lý để hoàn thành một "mục")

  3. @Ramhound đã đề cập đến phần "mục mỗi giây", dường như được xác nhận bởi hộp thoại xóa ( Speed: 1.082 items/s) của bạn. Vì vậy, xóa một tệp lớn, một tệp không liền kề hoặc một tệp nhỏ đều đóng một vai trò trong số lượng mục mỗi giây.

  4. Ưu tiên CPU: Công cụ này được thực hiện theo chu kỳ đồng hồ, do đó có khả năng CPU của bạn có thể đang chạy các quy trình khác trong chu kỳ và điều đó có thể ảnh hưởng đến tốc độ (đây là phần phỏng đoán của tôi)


3
Windows / NTFS không loại bỏ các khối bị chiếm khi xóa các tệp. Lớn hay nhỏ, tiếp giáp hay không liền kề đều không thành vấn đề.
tóm tắt

@abstrask - Tôi không nói là không có gì hết. Tuy nhiên, nó phải nhảy xung quanh $BitMap(tệp) đến từng cụm và đánh dấu nó là miễn phí để sử dụng (tức là "đã xóa"). Mở và chỉnh sửa một tập tin (ở bất kỳ cấp độ nào) sẽ làm mất tài nguyên và phải nhảy xung quanh trong đó mất nhiều chi phí và hoàn toàn có thể làm bạn chậm lại. Nếu tệp lớn - cần nhiều thời gian hơn để chỉnh sửa, nếu tệp không liền kề - sẽ mất nhiều thời gian hơn để tìm kiếm.
nerdwaller

1
Mỗi cụm được biểu thị bằng một bit trong tệp $ Bitmap. Giả sử kích thước đơn vị phân bổ mặc định là 4 KB, tham chiếu phân bổ cho tệp 100 KB chiếm khoảng 3 byte trong tệp $ Bitmap. Một tệp lớn, giả sử là 1 GB, chiếm 32 KB trong tệp $ Bitmap. Ngay cả khi $ Bitmap bị phân mảnh nhiều, ổ cứng sẽ chỉ phải bỏ qua giữa 32 KB / 4 KB / cluster = 8 cụm, để đánh dấu các cụm tệp 1 GB để xóa. Có, nhiều bit hơn phải được lật để xóa một tệp lớn, nhưng nó khó có thể đo lường được và chắc chắn sẽ không gây ra các va chạm hình ảnh lớn được hiển thị trong ảnh chụp màn hình.
tóm tắt
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.