Sự khác biệt giữa kích thước và kích thước trên đĩa là gì?


83

Nhìn vào các thuộc tính cho một tệp Windows, tôi nhận được hai thuộc tính, "Kích thước" và "Kích thước trên đĩa" và "Kích thước trên đĩa" luôn lớn hơn.

Hai số liệu này có ý nghĩa gì?


1
Tôi không chắc chắn 100% về điều này, nhưng tôi tin rằng các tệp nén cũng có ảnh hưởng đến các phép đo này.
AdminAlive

2
"Kích thước trên đĩa" không phải lúc nào cũng lớn hơn. Các tệp nhỏ được lưu trữ trực tiếp trên MFT và sẽ có kích thước trên đĩa = 0 . Các tệp nén thường có kích thước nhỏ hơn trên đĩa. Tương tự với các tệp thưa thớt
phuclv

Câu trả lời:


78

Kích thước là kích thước thực tế của tệp theo byte.

Kích thước trên đĩa là lượng không gian thực tế được chiếm trên đĩa. Chúng khác nhau vì đĩa được chia thành các rãnh và rãnh và có thể phân bổ các khối có kích thước riêng biệt.

Chỉnh sửa

Để được giải thích chi tiết hơn, hãy xem văn bản này mà tôi đã sao chép từ một trang web khác:

Chúng tôi biết rằng một đĩa được tạo thành từ các Bản nhạc và Ngành. Trong Windows, điều đó có nghĩa là HĐH phân bổ không gian cho các tệp trong "cụm" hoặc "đơn vị phân bổ".

Kích thước của một cụm có thể khác nhau, nhưng phạm vi điển hình là từ 512 byte đến 32K trở lên. Ví dụ: trên ổ C: \ của tôi, đơn vị phân bổ là 4096 byte. Điều này có nghĩa là Windows sẽ phân bổ 4096 byte cho bất kỳ tệp hoặc phần nào của tệp có độ dài từ 1 đến 4096 byte.

Nếu tôi có một tệp có dung lượng 17KB (kilo byte), thì Kích thước trên đĩa sẽ là 20,48 KB (hoặc 20480 byte). Tính toán sẽ là 4096 (1 đơn vị phân bổ) x 5 = 20480 byte. Phải mất 5 đơn vị phân bổ để giữ một tệp 17KB.

Một ví dụ khác là nếu tôi có một tệp có kích thước 2000 byte. Kích thước tệp trên đĩa sẽ là 4096 byte. Lý do là bởi vì mặc dù toàn bộ tệp có thể nằm gọn trong một đơn vị phân bổ, nhưng nó vẫn chiếm 4096 dung lượng (một đơn vị phân bổ) trên đĩa (chỉ một tệp có thể sử dụng đơn vị phân bổ và không thể chia sẻ với các tệp khác).

Vì vậy, kích thước trên đĩa là không gian của tất cả các lĩnh vực mà tệp được lưu. Điều đó có nghĩa là, thông thường, kích thước trên đĩa luôn lớn hơn kích thước thực tế.

Vì vậy, kích thước thực tế của (các) tệp hoặc thư mục phải luôn được lấy từ giá trị Kích thước khi xem cửa sổ thuộc tính.

Nguồn: Sự khác biệt giữa kích thước và kích thước trên đĩa trong thuộc tính thư mục Windows .


1
Vậy tôi nên xem "kích thước" hay "kích thước trên đĩa" khi tôi muốn so sánh tỷ lệ phần trăm của một thư mục mất bao nhiêu so với tổng số phân vùng hiện tại có?
nhà phát triển Android

1
@androiddeveloper có kích thước trên đĩa
Am1rr3zA

OK, cảm ơn bạn. Tự hỏi tại sao họ không giải thích nó ở đó, hoặc đưa ra một mô tả tốt hơn một chút.
nhà phát triển Android

5
Câu trả lời của Synetech dưới đây bổ sung các điểm quan trọng (và có khả năng gây nhầm lẫn) về các liên kết Nén và Cứng, cả hai đều có thể dẫn đến Kích thước trên Đĩa nhỏ hơn Kích thước.
Owen Blacker

1
@baroquedub Bạn có thểsự khác biệt lớn giữa hai yếu tố này (như yếu tố x1000 trong ví dụ của bạn). Sự khác biệt này có thể xảy ra đặc biệt nếu có nhiều tệp nhỏ (về cơ bản vì các tệp được ghi là "khối" trên đĩa, do đó, ít nhất toàn bộ kích thước của một khối sẽ được lấy. Kích thước thực của khối phụ thuộc vào tệp- hệ thống, do đó kích thước trên đĩa được lấy có thể khác nhau trên các đĩa khác nhau
Pacopaco

23

Nó phải làm với các kích thước đơn vị phân bổ được sử dụng trên đĩa của bạn khi nó được định dạng lần đầu tiên.

Hãy tưởng tượng bạn có hai lon xăng 2 x 10 gallon trong xe. Mỗi khí có thể là một đơn vị phân bổ. Bạn cần nhận được 12 gallon xăng, vì vậy bạn cần sử dụng cả hai lon. Về cơ bản sử dụng 20 gallon không gian được phân bổ - nhưng chỉ lấp đầy 12 gallon.

Đây là kích thước mặc định cho Windows XP

 Drive size   
 (logical volume)             Cluster size          Sectors   
 ----------------------------------------------------------
 512 MB or less               512 bytes             1
 513 MB - 1,024 MB (1 GB)     1,024 bytes (1 KB)    2 
 1,025 MB - 2,048 MB (2 GB)   2,048 bytes (2 KB)    4
 2,049 MB and larger          4,096 bytes (4 KB)    8

Nếu bạn nghĩ về kích thước Cụm như mỗi lon gas của bạn: Giữ 4KB "gas" mỗi cái. Nhưng tệp của bạn là 2KB thì kích thước điền là 2K, nhưng kích thước trên đĩa là 4KB


6
Cho phép tôi thêm vào câu trả lời của bạn. Kích thước đơn vị phân bổ (xô) được chọn dựa trên kích thước của đĩa. Nếu bạn đang sử dụng một cái xô để làm trống bồn tắm, bạn sẽ chọn một cái xô nhỏ. Nếu bạn đang làm trống một bể bơi, bạn sẽ sử dụng một cái xô lớn hơn.
Les

13

Không gian cụm Slack

Bạn không thể truy cập từng byte riêng lẻ trên một phương tiện lưu trữ riêng biệt. Để làm như vậy sẽ rất kém hiệu quả vì hệ thống cần một số cách theo dõi những cái nào được sử dụng và miễn phí (nghĩa là một danh sách), do đó, làm như vậy cho từng byte riêng biệt sẽ tạo ra quá nhiều (cho mỗi byte riêng lẻ, tức là 1 trên 1, danh sách sẽ lớn như chính phương tiện!)

Thay vào đó, phương tiện được chia thành các khối, khối, đơn vị, nhóm, bất cứ thứ gì bạn muốn gọi chúng (thuật ngữ kỹ thuật là cụm ), mỗi cụm chứa một số byte byte nhất quán (bạn thường có thể chỉ định kích thước của cụm vì sử dụng khác nhau gọi cho kích thước khác nhau để giảm chất thải).

Khi một tệp được lưu vào đĩa, kích thước của tệp được chia cho kích thước cụm và được làm tròn lên nếu cần. Điều này có nghĩa là trừ khi kích thước tệp chia hết cho kích thước cụm, một số cụm cuối cùng không được sử dụng và do đó bị lãng phí.

Khi bạn xem các thuộc tính cho một tập tin, bạn sẽ thấy kích thước thật của tập tin cũng như kích thước của nó trên đĩa bao gồm bất kỳ slack nào , nghĩa là, các mẹo của cụm cụm mà không được sử dụng. Điều này thường không nhiều trên mỗi tệpkích thước trên đĩa thường sẽ gần bằng với kích thước thực tế, nhưng khi bạn thêm dung lượng bị lãng phí từ tất cả hàng ngàn tệp trên một ổ đĩa, chúng có thể tăng thêm. Do đó, khi bạn xem kích thước của một thư mục lớn, đặc biệt là một tệp có nhiều tệp nhỏ hơn một cụm, kích thước trên đĩa (tức là dung lượng ổ đĩa được đánh dấu là đã sử dụng) có thể lớn hơn đáng kể so với thực tế kích thước (nghĩa là dung lượng mà các tập tin thực tế yêu cầu).

Trong trường hợp như trên, điều bạn có thể thử là giảm kích thước cụm sao cho mỗi tệp lãng phí ít dung lượng hơn. Nói chung, một ổ đĩa bị mất hầu hết các tệp nhỏ nên sử dụng kích thước cụm nhỏ nhất có thể (để giảm lãng phí) và ổ đĩa có hầu hết các tệp lớn nên sử dụng kích thước cụm lớn nhất có thể (theo cách này, cấu trúc sổ sách cuối cùng nhỏ hơn).

Thậm chí ở một mức độ thấp hơn, nếu mỗi cụm là chỉ có một khu vực , trừ khi một tập tin là bội chính xác kích thước của các thành phần trên ổ đĩa (thường là 512 byte truyền thống, bây giờ thường 4096 với Advanced Format đĩa), sau đó sẽ vẫn không gian không được sử dụng giữa phần cuối của tệp và phần cuối của khu vực.

Nén

Một kịch bản khác mà bạn có thể thấy sự khác biệt giữa kích thước và kích thước tệp thực tế trên đĩa là nén. Khi một ổ đĩa được nén (ví dụ: sử dụng DriveSpace , nén NTFS , v.v.) thì sẽ có sự khác biệt giữa kích thước của tệp thực tế (cần phải biết) và kích thước thực tế mà tệp chiếm (nghĩa là sử dụng hoặc trên mạng chiếm lấy) trên đĩa.

Phím tắt và liên kết cứng

Một kịch bản khác có thể dẫn đến sự khác biệt là với các liên kết cứng . Với các hệ thống tệp hỗ trợ các liên kết cứng, khi một tệp trùng lặp được tạo, thay vì tạo một tệp hoàn toàn mới chiếm không gian cho chính nó, hệ thống tệp tạo một lối tắt đến tệp sao cho cả hai (hoặc cả ba, v.v.) bản sao trỏ đến cùng một tập tin vật lý trên đĩa. Do đó, khi có hai tệp trỏ đến cùng một dữ liệu, mỗi tệp có cùng kích thước, nhưng chỉ chiếm hơn một chút so với không gian để lưu trữ một bản sao.


Trên thực tế với các đơn vị phân bổ 1B, danh sách sẽ không nhất thiết phải chiếm toàn bộ phương tiện. Chỉ là một phần tám của kích thước. Điều này là do bạn chỉ cần một bit duy nhất để nói liệu một khối được sử dụng hay miễn phí.
flarn2006

Chi phí cũng bao gồm dữ liệu cho biết một số đơn vị phân bổ thuộc cùng một tệp. Nếu bạn nói rằng mỗi byte có một bit khác cho biết liệu dữ liệu có tràn vào byte kế tiếp hay không, điều đó giải quyết được điều đó nhưng quá ngây thơ đối với kích thước / hiệu suất đĩa hiện đại bởi vì nếu byte kế tiếp không phải là M byte byte miễn phí của ổ cứng di chuyển. Trên thực tế, bạn cần thêm chi phí để chỉ định bù cho đơn vị phân bổ tiếp theo hoặc gán id tệp sắp xếp cho mỗi đơn vị phân bổ.
Nghỉ hưuAssistant

4

Một điều khác có thể làm giảm đáng kể giá trị Kích thước trên Đĩa là các tình huống trong đó một tệp không thực sự được lưu trữ trên đĩa nhưng vẫn có thể truy cập được bằng nhiều cách khác nhau.

Ví dụ: tính năng Tệp ngoại tuyến của OneDrive cho phép người dùng lưu trữ tệp theo cách có thể truy cập qua kết nối internet. Tệp vẫn tồn tại trên đĩa và có kích thước nhất định, nhưng vì nó không nằm trên đĩa cho đến khi được tải xuống nên không chiếm dung lượng.

Cửa sổ thuộc tính của thư mục OneDrive.  Kích thước của thư mục là 171 GB, nhưng kích thước trên đĩa là 31,7 GB.

Ví dụ về một thư mục bên trong ...

Cửa sổ thuộc tính của một thư mục có tên được định nghĩa lại.  Kích thước của thư mục là 379 MB, nhưng kích thước trên đĩa là 0 byte.

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.