Tại sao Ubuntu sẽ không còn đo đơn vị kích thước tệp là byte, megabyte, gigabyte, v.v?


13

Tôi đã đọc ở đâu đó rằng Ubuntu sẽ không còn sử dụng các đơn vị kích thước tệp quen thuộc mà chúng ta đều biết bây giờ (kB, MB, GB, TB) và chuyển sang một tiêu chuẩn IEC khác (KiB, MiB, GiB, TiB). Nếu điều này là đúng, tôi muốn biết lý do đằng sau sự thay đổi này và tác động (nếu có) thay đổi này có, đặc biệt là với các ứng dụng hoặc ứng dụng đa nền tảng chạy với Wine.


3
Một byte là một byte. Ví dụ xấu.
Nathan Osman

2
Theo hiểu biết của tôi, sử dụng KiB, MiB ... vv đã có sẵn trong Ubuntu. Vì vậy, "Ubuntu sẽ không còn .." nên là "Ubuntu không còn nữa .."
Weboide

Câu trả lời:


60

Câu trả lời ngắn gọn là có, tiền tố thay đổi. Nhưng nó không thực sự làm cho một sự khác biệt.

Lý luận

Luôn có sự nhầm lẫn vì các đơn vị kiểu thập phân như KB, MB, GB đã được sử dụng với dữ liệu nhị phân - KB có nghĩa là 1024 byte, không phải 1000 byte như mong đợi. Và tất nhiên nhiều người trên khắp thế giới sử dụng tiền tố thập phân thực tế trong cuộc sống hàng ngày của họ theo hệ thống số liệu.

Tất nhiên các kỹ sư mạng và người dùng máy tính lâu năm được đào tạo để hiểu sự khác biệt, nhưng sự nhầm lẫn đang diễn ra có nghĩa là các ứng dụng không nhất quán trong cách sử dụng; một ứng dụng có thể sử dụng MB có nghĩa là 1.000.000 byte (sử dụng tiền tố thập phân), trong khi một ứng dụng khác có thể có nghĩa là 1.048.576 byte (sử dụng giải thích nhị phân).

Điều này dẫn đến Ubuntu cuối cùng đã áp dụng chính sách đơn vị mới .

Sự va chạm

Tác động thực sự chỉ là một vấn đề hiển thị. Kích thước tệp và băng thông mạng sẽ được hiển thị bằng các tiền tố thập phân, do đó, tệp 5kB thực sự sẽ là 5000 byte. Điều này thực sự phù hợp với những gì nhiều người (hầu hết?) Mong đợi.

Sử dụng bộ nhớ và một số tiện ích cấp thấp sẽ hiển thị kích thước bằng cách sử dụng tiền tố nhị phân (KiB, MiB, GiB, TiB). Điều này có thể gây ra một số nhầm lẫn ban đầu nhưng thực sự tốt hơn hiện trạng nơi chúng ta có một tiền tố có nghĩa là hai điều khác nhau.

Vì Windows vẫn sử dụng hệ thống cũ, đặc biệt, ứng dụng Wine có thể hiển thị các kích cỡ tệp hơi khác nhau cho cùng một tệp. Tuy nhiên, ít nhất tôi thường thấy các kích thước khác nhau được hiển thị do các phương pháp làm tròn, vì vậy tôi không tin đó là một vấn đề lớn.

Xem thêm:


2
Huh. Tại sao không làm cho chính sách chỉ sử dụng 1MB để có nghĩa là 1024 trong mọi trường hợp? Nếu mọi người mua ổ đĩa "2 GB" (thực tế là ổ đĩa 2GiB), sau đó mở nó trong Ubuntu, nó sẽ được báo cáo là 2,2 GB, hoặc hơn thế. Theo hiểu biết của tôi, việc sử dụng MB có nghĩa là 1.000 luôn luôn sai, ditto cho KB, GB, v.v.
mlissner

Một 200GB ổ đĩa là hành động 200GB không 200GiB
txwikinger

2
@mlissner: thực tế, sử dụng MB có nghĩa là 1024 × 1024 byte luôn luôn sai, ngay cả khi nó được sử dụng phổ biến và đó là lý do tại sao các tiền tố dựa trên nhị phân mới được chuẩn hóa 11 năm trước! Vì vậy, Ubuntu chỉ thực hiện một tiêu chuẩn IEC 11 năm tuổi và tiêu chuẩn ISO 2 năm tuổi (hiện được gọi là ISO / IEC 80000).
JanC

2
Tôi chưa bao giờ nhầm lẫn chừng nào 1kB là 1024 Byte.
burli

-1

NÓ SOOOO ... ĐƠN GIẢN !!!

Một vài năm trước có rất ít nhầm lẫn về điều này. Bởi vì ký hiệu

  • 1 KB = 1024 byte
  • 1 MB = 1024 KB

đã được dạy, học và sử dụng trong tất cả các trường đại học và gần như tất cả các ngành công nghiệp (phần mềm và phần cứng) trên toàn thế giới, trong nhiều năm.

Ý tưởng ngu ngốc khi đếm trong căn cứ 1000 (thậm chí không phải căn cứ 10) chỉ là một triệu chứng khác về sự ngu ngốc của thời đại chúng ta và cuộc sống hiện đại.

Điều làm cho mọi thứ tồi tệ hơn nhiều là ý tưởng ngu ngốc hơn khi cố gắng thiết lập (và tiếp tục thực hiện) ký hiệu cũ cho các đơn vị 1000 cơ sở không thực tế. RATNG ĐÃ TẠO TẤT CẢ CÁC ĐIỀU KIỆN. Nếu họ chỉ thông qua quy ước rằng

  • 1 KiB = 1000 byte
  • 1 MiB = 1000 byte

sau đó sẽ có ít nhầm lẫn hơn và vấn đề sẽ nhỏ hơn nhiều.

Họ nên đã cố gắng để thiết lập rằng

1KB = 1024 bytes
1MB = 1024 KB

and

1 Ikb or ikb or Kib = 1000 bytes
1 IMb or imb or Mib  = 10^6 bytes

Hoàn toàn không cần sử dụng đơn vị cơ sở 1000. Có lẽ ý tưởng bắt đầu trong một suy nghĩ bướng bỉnh rằng "ồ, không, nếu kilo là 1000 và mega là 1.000.000, chúng ta sẽ sử dụng kilo và mega trong cơ sở 1000 cho các đơn vị thông tin (cơ sở 2!)". Tất cả chỉ vì một ngày, nhưng đó là thời gian dài hơn nhiều, một người nào đó đã có ý tưởng không may (mặc dù không tệ lắm) về việc gọi kilobyte (kb) một bó 1024 byte. Nếu anh ta đã chọn k2bm2b , và gọi chúng là byte kitwobyte mitwo (hoặc byte kookie , byte mookiebyte gookie), ví dụ, tất cả ý tưởng bị trì hoãn này về việc sử dụng cơ sở 1000 cho tất cả các ứng dụng và toàn bộ hệ điều hành, và coi đó là cách nói thông thường về các biện pháp trong CTNH và SW đối với peolpe, sẽ không xảy ra làm cho mọi thứ tồi tệ hơn nhiều


3
Trên thực tế, chúng tôi đang làm cho nó hợp lý hơn. Xem, ví dụ chúng ta sử dụng km khi chúng ta có nghĩa là 1000 mét. Tại sao phải khác nhau? Lý do cho k = 1024 là hiệu suất và sự đơn giản. Thật sự rất nhanh để chỉ thay đổi các bit đó thay vì thực hiện các phân chia thực sự. Tuy nhiên, ngày nay, bằng cách nhận được các số lớn hơn và lớn hơn, sự khác biệt giữa 1024 ^ n1000 ^ n . Mặc dù đó không phải là vấn đề vì chúng hầu như giống nhau, nhưng nó bắt đầu thực sự khó hiểu.
Georg Schölly

1
đã được dạy, học và sử dụng trong tất cả các trường đại học và gần như tất cả các ngành công nghiệp (phần mềm và phần cứng) trên toàn thế giới, trong nhiều năm. Không, không phải vậy. Đây là một huyền thoại được truyền bá bởi các lập trình viên để biện minh cho sự lười biếng của họ. "megabyte" có nghĩa là "1.000.000 byte" trong thập niên 1960 và "kilobyte" có nghĩa là "1000 byte". Microsoft chủ yếu đổ lỗi cho các đơn vị dựa trên 1024 vô nghĩa và không thực tế.
endolith

-2

Thật sự khó hiểu những gì đã xảy ra liên quan đến sự thay đổi chỉ định kích thước vào năm 1998 và sẽ đơn giản hơn nhiều nếu họ chỉ đơn giản thêm một bộ mới có quyền hạn 10 như một chỉ định mới nhưng thật đáng buồn là họ đã không làm như vậy vì lý do tại thời gian tập trung vào việc sửa lỗi từ nguyên của từ được sử dụng "Kilo", vì vậy tất cả các kích thước ban đầu dựa trên quyền hạn của 2 (1024) đều được đặt tên mới và chỉ định mới và sau đó sức mạnh mới của 10 số được coi là nhãn gốc trước năm 1998 tên.

Vì vậy, hãy để sự nhầm lẫn bắt đầu:

Trước năm 1998, Kilobyte có nghĩa là 1024 byte và được chỉ định là K hoặc KB.

Sau năm 1998, Kilobyte trước năm 1998 đã được đổi tên thành Kibibyte và được đặt tên mới là K hoặc KiB và một bài mới hoàn toàn 1998 Kilobyte được tạo ra là 1000 byte và có ký hiệu tốc ký KB để ngày nay chúng ta có:

1 KB = 1000 Byte ( Không thể rút ngắn KB thành K) 1 KiB = 1000 Byte (KiB có thể được rút ngắn thành K)

Các chỉ định đều được sửa đổi để KB là cách viết tắt chính thức đề cập đến Kilobyte hiện tại (1000) trong khi K và KiB chính thức là chỉ định chính thức cho Kibibyte (1024).

Điều này đặc biệt khó hiểu bởi vì hầu hết chúng ta, những người ở khoảng những ngày đầu trước năm 1998 đã lớn lên thường gọi Kilobytes là 1024 byte và viết KB hoặc K là ký hiệu tốc ký nhưng ngày nay điều đó là sai và tất cả chúng ta làm điều này thực sự đang đề cập đến thành "Kibibytes" khi chúng ta nói "Kilobytes" và thường sử dụng chỉ định sai theo các tiêu chuẩn thế giới không chính thức được đưa ra bởi IEC trở lại vào năm 1998, điều này gây nhầm lẫn một chút nhưng sẽ không tệ đến vậy, thậm chí còn 18 năm sau những người vẫn không nhận ra rằng K và KB KHÔNG giống nhau và hoàn toàn khác nhau.

Vì vậy, thực sự có một sự khác biệt giữa "K" (1024) và "KB" (1000)!

Điều này cũng là lý do tại sao các ổ đĩa cứng dường như luôn có ít không gian hơn so với quảng cáo nhưng các nhà sản xuất ổ cứng là những người chính xác và đang sử dụng các tiêu chuẩn thích hợp ngày nay khi họ viết "Terabyte" trên bao bì khi Tuy nhiên, người mua ổ đĩa thực sự đang suy nghĩ về Tebibytes và mong đợi không gian như vậy.

Ngẫu nhiên, sự khác biệt giữa ổ đĩa 2 TB (Terabyte) và ổ đĩa 2 T hoặc 2 TiB (Tebibyte) là rất lớn 199,023,255,552 byte nhỏ hơn so với ổ 2 T hoặc 2 TiB và là sự khác biệt nhỏ hơn về cường độ hơn 185 G hoặc GiB (Gibibytes) một chút, đó là điều mà hầu hết mọi người thực sự nghĩ đến thường xuyên nhất khi họ nói "Gigabyte" mặc dù nhầm lẫn.

Đây là một trong những bên cho thuê kỳ lạ được biết đến trong thế giới máy tính, đây là một chú thích tốt để biết và giải thích một số khác biệt kỳ lạ mà nhiều người ngày nay thường hoàn toàn không biết.

Nhiều người đang nghĩ và nói cái tên "Kilobyte" (1000) khi họ thực sự nghĩ về đơn vị "Kibibyte" (1024) và nó trở nên khó hiểu hơn khi mọi người viết tốc ký thay thế cho nhau nhưng điều này không chính xác, Kilobyte hiện đại nên được đánh dấu "KB" và không được là "K" hoặc "KiB" ở bất kỳ tài liệu hoặc chương trình nào mà như được giải thích thực sự sẽ đề cập đến Kibibyte (1024).

Các chỉ định tốc ký K (1024) và KB (1000) không còn giống nhau và trong trường hợp của Kibibyte, K hoặc KiB có thể được sử dụng nhưng không phải KB.

Đây là bộ não của bạn, đây là bộ não của bạn về Kibibytes - chiên chưa?

cười lớn


"Trước năm 1998, Kilobyte có nghĩa là 1024 byte và được chỉ định là K hoặc KB." Đó là một huyền thoại. Ví dụ, Shugart SA 400 giữ 109.375 byte và được bán trên thị trường là "109,4 Kbyte" vào năm 1976 . CDC 9746 được tổ chức 60.000.000 byte và được bán trên thị trường là "60 M byte" vào năm 1974.
endolith
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.