Điểm của các ổ đĩa cứng báo cáo kích thước khu vực vật lý của họ là gì?


12

Tôi có một ổ SSD có thể được cấu hình để báo cáo kích thước cung vật lý của nó cho HĐH theo hai cách khác nhau:

Tùy chọn 1: Hợp lý = 512 byte, vật lý = 512 byte

Tùy chọn 2: Hợp lý = 512 byte, vật lý = 4096 byte (4K)

Hệ điều hành đạt được lợi ích gì khi nhận thức được kích thước khu vực vật lý 4K, xem xét:

  • HĐH phải nói chuyện với ổ đĩa trong các lĩnh vực 512 byte bất kể

  • Tất cả các hệ điều hành hiện đại đều phù hợp với 4K và sử dụng 4K hoặc bội số 4K I / O bất kể

Cài đặt có vẻ vô nghĩa, vì các hệ điều hành hiện đại đã được tối ưu hóa cho các ổ đĩa 4K. Các hệ điều hành hiện đại không cần phải "hỏi" một ổ đĩa cho dù các lĩnh vực của nó là 512b hay 4K, bởi vì hệ điều hành này làm mọi thứ theo cách thân thiện với 4K theo mặc định.

Ví dụ: Windows 7 căn chỉnh các phân vùng thành 1MB (bội số của 4K), kích thước cụm NTFS là 4K hoặc bội số của chúng và tất cả I / O được thực hiện trong 4K hoặc nhiều phân vùng. Windows không cho bạn biết ổ cứng nào, nó sẽ áp dụng các hành vi trên trong mọi trường hợp.

Dù sao ... SSD của tôi có cài đặt "kích thước khu vực vật lý" này và vì vậy nó phải ở đó vì một số lý do chính đáng ... đó là lý do cho việc này tôi đang tìm kiếm.

BTW, với giá trị của nó, ổ đĩa là Intel SSD DC S3510 . Bảng dữ liệu của ổ đĩa cho biết điều này (trang 27):

Bằng cách sử dụng lệnh SCT 0xD801 với State = 0, Tùy chọn = 1, ID Word 106 có thể được thay đổi từ 0x6003 thành 0x4000 (kích thước khu vực vật lý 4KB thành thay đổi kích thước khu vực vật lý 512B).


4096 Byte là định dạng Nâng cao Ổ cứng định dạng nâng cao có thể thực hiện được, tùy thuộc vào HĐH nếu ổ cứng sẽ mô phỏng 512K
Moab

1
Giao diện lưu trữ là kho báu của các quyết định cũ ... "Kích thước khu vực vật lý 4 KB" cũng không đúng. Flash có kích thước khu vực vật lý thường vượt quá 256 kB. Tất cả các kích thước khu vực báo cáo là (il) hợp lý.
MSalters

Câu trả lời:


15

Mô phỏng 512 byte được thiết kế để tương thích với các hệ thống cũ. Tuy nhiên, việc ghi chỉ liên quan đến một phần của khu vực 4K vật lý có thể làm giảm hiệu suất vì khu vực đó cần phải được đọc và sửa đổi trước khi nó thực sự có thể được viết.

Khi một hệ điều hành cũ cố ghi vào đĩa Định dạng Nâng cao, các vấn đề về hiệu năng có thể phát sinh do các thành phần logic được viết có thể không khớp với các thành phần vật lý.

  • Khi chỉ đọc một phần của khu vực vật lý 4K, dữ liệu chỉ đơn giản là đọc ra khu vực vật lý và không có hiệu suất giảm. Tuy nhiên, khi hệ thống cố ghi vào một phần của khu vực vật lý (ví dụ: khu vực 512 byte được mô phỏng thay vì toàn bộ khu vực vật lý), ổ cứng cần đọc toàn bộ khu vực vật lý, sửa đổi phần đã thay đổi trong phần bên trong ổ cứng bộ nhớ, và viết lại cho các đĩa. Điều này được gọi là đọc-sửa đổi-ghi ( RMW ), một hoạt động đòi hỏi một vòng quay thêm của đĩa và do đó làm giảm hiệu suất. Seagate giải thích điều này như sau :

[...] trước tiên, ổ cứng phải đọc toàn bộ khu vực 4K chứa vị trí được nhắm mục tiêu của yêu cầu ghi máy chủ, hợp nhất dữ liệu hiện có với dữ liệu mới và sau đó viết lại toàn bộ khu vực 4K:

Chu kỳ đọc-sửa-ghi

Trong trường hợp này, ổ cứng phải thực hiện các bước cơ học bổ sung dưới dạng đọc một khu vực 4K, sửa đổi nội dung và sau đó ghi dữ liệu. Quá trình này được gọi là chu trình đọc-sửa-ghi, điều này là không mong muốn vì nó có tác động tiêu cực đến hiệu suất ổ cứng.

Các phân vùng đĩa không được căn chỉnh theo ranh giới 4K cũng có thể làm giảm hiệu suất.

  • Theo truyền thống, phân vùng đầu tiên trên đĩa cứng bắt đầu ở khu vực 63. Windows XP và các hệ điều hành cũ hơn phân vùng đĩa theo cách này. Các phiên bản Windows mới hơn sẽ tạo phân vùng trên ranh giới 1 MB, đảm bảo căn chỉnh phù hợp với các lĩnh vực vật lý. Điều này được gọi là Sắp xếp 0 .

    • Số lẻ này là một thành phần của địa chỉ trụ-trụ (CHS) được sử dụng trong INT 13h , API BIOS kế thừa được sử dụng để truy cập đĩa. Trên các hệ thống kế thừa và bộ tải khởi động đã sử dụng API INT 13h, tất cả các phân vùng phải bắt đầu và kết thúc trên ranh giới hình trụ. Ngay cả sau khi địa chỉ khối logic (LBA) được giới thiệu, các giá trị CHS giả (không tương ứng với hình dạng đĩa thực tế) đã được sử dụng để duy trì khả năng tương thích với API kế thừa. Do địa chỉ CHS ban đầu hỗ trợ tối đa 63 cung trên mỗi hình trụ, phân vùng đầu tiên sẽ bắt đầu trên khu vực 63. Windows XP (trước Gói dịch vụ 3) và các phiên bản Windows trước đó sẽ không khởi động nếu âm lượng hệ thống không nằm trên ranh giới hình trụ .
  • Do LBA 63 không phải là bội số của 8 (tám khu vực kế thừa 512 byte phù hợp với khu vực 4K), đĩa Định dạng Nâng cao được định dạng theo cách cũ sẽ có các cụm (đơn vị phân bổ dữ liệu hệ thống tệp nhỏ nhất, thường có kích thước 4K ) không được liên kết với các thành phần vật lý trên đĩa 4K, một điều kiện được gọi là Căn chỉnh 1 . Kết quả là, một hoạt động I / O liên quan đến 4K dữ liệu hiện kéo dài hai lĩnh vực dẫn đến hoạt động đọc-sửa đổi-ghi làm giảm hiệu suất.

Mặc dù thông tin về kích thước khu vực vật lý là không cần thiết nếu HĐH luôn ghi dữ liệu trên ranh giới 4K, thông tin này vẫn có thể cần thiết cho các ứng dụng thực hiện I / O cấp thấp.

  • Khi một ổ đĩa báo cáo rằng kích thước khu vực vật lý của nó là 4K, HĐH hoặc ứng dụng có thể cho biết đó là ổ đĩa Định dạng Nâng cao và do đó phải tránh thực hiện các hoạt động I / O không bao gồm các lĩnh vực vật lý đầy đủ. Một ổ đĩa báo cáo các thành phần gốc 512 byte không áp đặt hạn chế này. Mặc dù các hệ điều hành mới hơn thường sẽ cố gắng đọc hoặc ghi dữ liệu theo đơn vị 4K bất cứ khi nào có thể (làm cho thông tin này không liên quan), các ứng dụng thực hiện I / O cấp thấp có thể cần phải biết kích thước khu vực vật lý để chúng có thể điều chỉnh phù hợp và tránh bị sai lệch hoặc viết một phần của ngành gây ra chu kỳ RMW chậm.

SSD của bạn cung cấp khả năng thay đổi kích thước khu vực vật lý được báo cáo vì cần thiết để tương thích với các mảng lưu trữ nhất định.

  • Các trung tâm dữ liệu thường có các mảng lưu trữ bao gồm các ổ 512n cũ. Các ổ đĩa 4K, ngay cả những ổ đĩa mô phỏng các cung 512 byte, có thể không tương thích với các mảng như vậy, vì vậy tính năng này là cần thiết để đảm bảo khả năng tương thích. Xem chủ đề diễn đàn này :

    Chúng ta không thể chỉ gắn một ổ đĩa 4K trong một mảng được định dạng bằng các đĩa 512b. Nhiều mảng (đáng chú ý nhất là lưu trữ dựa trên ZFS, ngày càng phổ biến vì lưu trữ được xác định bằng phần mềm tạo sóng) sẽ không chấp nhận ổ đĩa thay thế với định dạng khu vực vật lý khác.

    Lưu ý rằng hiệu suất tốt hơn sẽ đạt được trên các hệ thống hiện đại nếu ổ đĩa được cấu hình để sử dụng các lĩnh vực 4K.


Điều trớ trêu là HĐH 'không biết cách căn chỉnh chính xác cũng sẽ không có khả năng truy vấn ổ cứng cho "kích thước khu vực vật lý". Hệ điều hành 'biết cách căn chỉnh chính xác, không cần truy vấn ổ cứng cho "kích thước khu vực vật lý" vì chúng được căn chỉnh đúng theo mặc định. Ví dụ: Windows sắp xếp thành 1MB.
misha256

1
Tôi phải nói rằng ... tôi bị đánh lừa. Tôi chưa bao giờ thấy một ổ đĩa cho phép bạn thay đổi cài đặt báo cáo "kích thước khu vực vật lý". Tôi không thể hiểu tại sao một cài đặt như vậy cần tồn tại, xem xét các tùy chọn duy nhất là 512b và 4K và xem xét rằng các hệ điều hành hiện đại làm mọi thứ theo cách 4K bất kể bạn sử dụng loại ổ đĩa nào.
misha256

Đây có lẽ là câu trả lời hay nhất trong số rất nhiều, nhưng tôi vẫn nghĩ rằng đã đến lúc tìm kiếm một kỹ sư Intel và nhận được câu trả lời có thẩm quyền. Có vẻ là một điều rất bí truyền.
misha256

3
Mặc dù có liên quan đến ổ đĩa cứng, câu trả lời này không liên quan đến SSD. Kích thước khối ghi / xóa của SSD là vài megabyte, do đó, ngay cả "vật lý" 4K cũng không gần với kích thước khu vực vật lý thực.
qasdfdsaq

1
Kích thước ghi @qasdfdsaq không nhất thiết phải giống như kích thước xóa. 4K sẽ là mức độ chi tiết của khối theo dõi "đang sử dụng". Trong khi đó Tôi bây giờ bị thuyết phục rằng phần cuối của câu trả lời này về ZFS là đúng nhất: utcc.utoronto.ca/~cks/space/blog/tech/...
pjc50

5

Hệ điều hành có được lợi ích gì khi nhận thức được kích thước của khu vực vật lý khi, bất kể, hệ điều hành đó phải nói chuyện với ổ đĩa trong các lĩnh vực 512 byte.

Kích thước logic là kích thước tối thiểu để truyền dữ liệu. Vì đây là một thiết bị khối, mọi chuyển dữ liệu giữa máy chủ và ổ đĩa sẽ có bội số của kích thước khối logic này.

Kích thước vật lý là kích thước tối ưu để truyền dữ liệu và phản ánh kích thước của các hoạt động đọcghi thực tế ở cấp điều khiển / ổ đĩa.

Khi máy tính chủ yêu cầu đọc một khu vực logic, bộ điều khiển / ổ đĩa sẽ thực hiện một hoạt động đọc của khu vực vật lý có chứa khu vực logic.
Khi kích thước khu vực logic bằng với kích thước khu vực vật lý, hoạt động đơn giản. Khi kích thước khu vực logic nhỏ hơn kích thước khu vực vật lý, khu vực logic phải được trích xuất từ ​​khu vực vật lý bằng bộ điều khiển để chuyển đến máy tính chủ.

Khi máy tính chủ yêu cầu ghi một khu vực logic, kích thước của khu vực vật lý quan trọng.
Khi kích thước khu vực logic bằng với kích thước khu vực vật lý, thao tác ghi đơn giản và có thể tiến hành trực tiếp. Điều kiện của các nội dung trước đó của ngành sẽ không ảnh hưởng đến hoạt động ghi.

Khi kích thước khu vực logic nhỏ hơn kích thước khu vực vật lý, trước tiên bộ điều khiển phải thực hiện thao tác đọc của khu vực vật lý có chứa khu vực logic.
Nếu việc đọc thành công, thì khu vực logic được chèn vào khu vực vật lý và khu vực vật lý được viết hoàn toàn.
Nếu việc đọc không thành công (ngay cả sau khi thử lại), thao tác ghi có thể được hoàn thành.

Nếu HĐH thực hiện các hoạt động đọc và ghi với kích thước khu vực vật lý (bằng cách sử dụng các hoạt động đa ngành có sẵn trong bộ lệnh ATAPI), các hoạt động ghi sẽ được thực hiện hiệu quả hơn (và không có cơ hội không hoàn thành không cần thiết).

Kích thước khu vực LOGICS hoàn toàn xác định cách một hệ điều hành có thể nói chuyện với một ổ đĩa. Không có ngoại lệ. Sử dụng gì khi biết kích thước khu vực vật lý, khi bạn chỉ được phép giao tiếp ở quy mô khu vực logic?

Sự tranh chấp của bạn về "không có ngoại lệ" là không chính xác.
Tập lệnh ATAPI, được giới thiệu với IDE HDD, luôn có khả năng thực hiện các thao tác đọc và ghi với một sector counttham số. Đây chỉ đơn thuần là một phần mở rộng của các giao diện điều khiển đĩa và đĩa mềm hiện có cũng có khả năng hoạt động đọc / ghi đa ngành (miễn là các cung nằm trên cùng một rãnh).


Đây có thể là câu trả lời chính xác ... nhưng tôi vẫn không bị thuyết phục. Hệ điều hành hiện đại hoạt động với các hệ thống tệp và kích thước khối I / O là 4K và bội số của 4K. Chúng đã được tối ưu hóa để sử dụng với các ổ đĩa cứng có các thành phần vật lý 4K. Hơn nữa, kích thước khối I / O được sử dụng vẫn là 4K và bội số 4K ngay cả trên ổ cứng vật lý 512b. Đưa cái gì?!
misha256

Chơi lô tô! Các sector counttham số bạn nói về ... ngay cả những cổ Windows XP lần đọc / viết trong I / O kích thước khối 8ngành hoặc bội số đó. Nó đã được tối ưu hóa hoàn toàn! Đó là lý do XP hoạt động rất tốt với SSD miễn là phân vùng được căn chỉnh. Nó cực kỳ thân thiện 4K. Vì vậy, câu hỏi vẫn chưa được trả lời. Có gì hơn có thể là một hệ điều hành làm biết kích thước ngành vật lý là 4K. Hãy nhớ rằng, hệ điều hành đã được tối ưu hóa cho 4K I / O.
misha256

1
"Chúng đã được tối ưu hóa ..." - Không nhất thiết. Khu vực "bắt đầu" sẽ phải luôn được liên kết với một khu vực vật lý. Điều đó không được đảm bảo là đúng khi HĐH không nhận thức được các lĩnh vực vật lý và logic, mà chỉ cố gắng hiệu quả hơn bằng cách sử dụng các hoạt động đa ngành.
mùn cưa

2
@ misha256 Không, nó không đơn giản. "Windows XP, Windows Server 2003 và Windows Server 2003 R2 không hỗ trợ phương tiện 512e hoặc 4Kn. Mặc dù hệ thống có thể khởi động và có thể hoạt động tối thiểu, có thể có các tình huống không rõ về sự cố chức năng, mất dữ liệu hoặc tối ưu phụ Do đó, Microsoft rất thận trọng khi sử dụng phương tiện 512e với Windows XP ... " msdn.microsoft.com/en-us/l
Ross Ridge

2
@ misha256 - Bạn đang chọn điều kiện, và sau đó tuyên bố rằng trong mọi trường hợp thông tin này là vô ích. Không phải ai cũng sẽ sử dụng ổ SSD như vậy với cụm Windows và NTFS và> 4k. "NTFS thậm chí không hỗ trợ ít hơn 4K I / O" - Không đúng. Kích thước cụm 512, 1024 và 2048 byte vẫn là các tùy chọn trong bản sao Win7 (cập nhật) của tôi cho NTFS. . .
mùn cưa

3

Nếu HĐH biết kích thước khu vực vật lý cơ bản, nó có thể tối ưu hóa các truy vấn của mình để yêu cầu càng ít thao tác vật lý càng tốt. Riêng với SSD, giới hạn hoạt động vật lý (giới hạn IOPS 4KB) thường là giới hạn cuối cùng của tốc độ thiết bị, vì vậy việc có thể sử dụng tốt nhất dung lượng này là rất quan trọng.


Argh, điều này không thể đúng. Hệ điều hành hiện đại ' vốn đã được tối ưu hóa. Tất cả chúng đều sử dụng các hệ thống tệp có kích thước "chặn" (còn gọi là cụm) có 2 ^ n byte, bắt đầu từ 2 ^ 12 (tức là 4K, nghĩ là mặc định NTFS). Theo đó, tất cả các hoạt động I / O cuối cùng là một số bội số của 4K. Dù một đĩa vật lý là 512-Byte hay 4K thì cũng không nên tạo ra sự khác biệt. Bạn không thể tối ưu hóa hơn thế này, chắc chắn?
misha256

Điều gì sẽ xảy ra nếu HĐH không điều chỉnh đúng và thao tác I / O kết thúc ở hai lĩnh vực vật lý? Bạn sẽ nhận được hiệu suất xuống cấp.
bwDraco

1
@ misha256 Không có sự không tương thích giữa những gì bạn nói và những gì tôi nói. Đúng là ngoài việc căn chỉnh đúng, hầu hết các hệ thống tập tin không được hưởng lợi nhiều từ việc biết kích thước khu vực vật lý. Một số cơ sở dữ liệu làm.
David Schwartz

@DavidSchwartz Phải, ok, vậy tất cả có thể là vì lợi ích của một số hệ điều hành bí truyền hoặc hệ thống tệp được sử dụng trong các trung tâm dữ liệu hoặc tương tự? Một số mảng RAID ưa thích có thể?
misha256

Nó dường như là về các bộ điều khiển hệ điều hành và RAID không phải windows ("bí truyền").
pjc50

1

Có hai cách khác nhau để truy cập một vị trí trong một ổ đĩa, một là sơ đồ CHS và hai là sơ đồ LBA.

CHS là viết tắt của Xi lanh, Đầu, Khu vực và là phương pháp cấp thấp nhất để xác định nơi đọc hoặc ghi từ ổ đĩa. Bạn bảo nó sử dụng hình trụ x, đầu y và sector z và đọc hoặc ghi nội dung của vị trí đó đến hoặc từ một địa chỉ trong bộ nhớ (bộ đệm). Nó có nguồn gốc từ các thành phần vật lý thực tế của một ổ cứng (truyền thống, quay gỉ), nơi bạn có các trụ vật lý và đầu đọc. Khu vực này là đơn vị địa chỉ nhỏ nhất và theo truyền thống được cố định ở mức 512 byte.

LBA là địa chỉ byte logic trong đó ổ đĩa đọc từ và ghi vào địa chỉ sector bằng phần bù của nó, ví dụ, đọc sector thứ 123837 trên đĩa hoặc ghi nó vào sector 123734 trên đĩa (bắt đầu từ số 0).

Vấn đề? Mỗi giá trị này được giới hạn trong phạm vi. Trên thực tế, do CHS bị hạn chế nghiêm trọng như thế nào, LBA phải được giới thiệu. Đối với CHS, các giá trị có thể có của C (hình trụ) là 1023, trong khi H (đầu) có thể tối đa 255 và S (sector) chỉ có thể lên tới 63, nghĩa là bạn có thể có tối đa 1024 hình trụ x 255 đầu x 64 sector x 512 byte được ánh xạ ở định dạng CHS truyền thống, mang lại cho bạn tổng cộng dưới 8 GiB! Sử dụng CHS, đơn giản là không thể truy cập đĩa lớn hơn 8 GiB!

Vì vậy, LBA được giới thiệu với giới hạn 32 bit cung cấp cho bạn 2 ^ 32 x 512 byte hoặc 2 TiB giới hạn về kích thước đĩa - đây là lý do đĩa MBR không thể vượt quá 2TiB vì nó sử dụng CHS và LBA để chỉ định kích thước phân vùng và không thể hỗ trợ bất cứ điều gì hơn 2TiB.

Các tùy chọn mới hơn, tốt hơn đã được giới thiệu như sơ đồ phân vùng GPT giúp mở rộng LBA lên 64 bit, mang lại cho bạn nhiều thứ hơn bao giờ hết bạn cần ở 2 ^ 64 x 512 byte - nhưng có một nhược điểm: rất nhiều di sản hệ điều hành phần cứng và di sản và các triển khai BIOS kế thừa và trình điều khiển cũ không hỗ trợ UEFI hoặc GPT, và nhiều người muốn có một cái gì đó có thể dễ dàng nâng cấp hơn để vượt qua giới hạn 2TiB mà không phải viết lại toàn bộ ngăn xếp từ đầu. Và, cuối cùng, chúng tôi đạt đến quy mô 4096 ngành.

Xem, trong tất cả các hạn chế được thảo luận ở trên, một điều đã được giả định cố định: quy mô ngành. Từ ngày đầu tiên, nó đã là 512 byte và nó vẫn như vậy kể từ đó. Nhưng gần đây, các nhà sản xuất đĩa cứng nhận ra có một cơ hội để thực hiện một số phép thuật: lấy LBA CHS hoặc 32 bit truyền thống và chỉ cần thay thế kích thước cung bằng 4096 (4k) thay vì 512 byte. Khi một hệ điều hành nói "cung cấp cho tôi khu vực thứ 2 trên đĩa" bằng cách yêu cầu LBA 1 (vì LBA 0 là đầu tiên), chúng tôi sẽ không cung cấp cho nó byte 512 - 1023 mà thay vào đó là byte 4096 - 8191.

Đột nhiên, giới hạn 2TiB của chúng tôi được nâng cấp lên 2 ^ 32 x 4096 byte hoặc 16 TiB mà không phải bỏ MBR, chuyển sang UEFI hoặc GPT hoặc bất cứ điều gì!

Điều hấp dẫn duy nhất là nếu HĐH không biết rằng đây là đĩa ma thuật sử dụng 4096 cung thay vì 512 byte, thì sẽ có sự không phù hợp. Mỗi lần HĐH nói "hey, bạn, đĩa, hãy viết cho tôi 512 byte này để bù xxx", đĩa sẽ sử dụng tới 4096 byte để lưu trữ 512 byte này (phần còn lại là dữ liệu không hoặc dữ liệu rác, giả sử bạn không kết thúc tràn bộ nhớ) bởi vì chúng không giao tiếp theo byte, chúng giao tiếp trong các cung.

Vì vậy, BIOS bây giờ (đôi khi) bao gồm một tùy chọn cho phép bạn chỉ định thủ công rằng nên sử dụng kích thước cung 512 byte thay vì kích thước cung 4096 byte gốc mà các đĩa mới hơn đang sử dụng - với lời cảnh báo mà bạn không thể sử dụng để truy cập nhiều hơn 2TiB của đĩa trên hệ thống MBR, giống như trong "ngày xưa tốt đẹp". Nhưng các hệ điều hành hiện đại có nhận thức 4k có thể tận dụng tất cả những điều này để sử dụng phép thuật này để đọc và viết thành các đoạn 4096 byte và voilà!

(Một lợi thế nữa là mọi thứ nhanh hơn rất nhiều bởi vì nếu bạn đang đọc và viết 4096 byte cùng một lúc, thì sẽ ít thao tác hơn để đọc hoặc ghi, giả sử, 4GiB dữ liệu.)


2
Điều này thực sự không trả lời câu hỏi. Giải thích CHS và LBT là không liên quan. Điều này đọc giống như một đống não của những gì bạn biết về "các ngành". "Từ ngày đầu tiên, nó đã là 512 byte ..." - Điều đó chỉ đúng với PC của IBM.
mùn cưa

1
@sawdust Tôi không đồng ý - Ngay cả khi bỏ qua nền tảng (quan trọng) về CHS và LBA, câu trả lời ngắn gọn cho câu hỏi của bạn nằm ở đoạn cuối thứ hai "Nhưng các hệ điều hành hiện đại có nhận thức 4k có thể sử dụng phép thuật này để sử dụng phép thuật này đọc và viết thành các đoạn 4096 byte và voilà! " - tức là giả định trong câu hỏi - rằng một hệ điều hành phải nói trong các đoạn 512 byte - là sai.
davidgo

@davidgo Ở cấp độ trình điều khiển, HĐH sẽ nói chuyện với ổ đĩa trong ncác khối 512 byte. Các nlà một số trong đó, từ Windows XP, là KHÔNG BAO GIỜ ít hơn 8, và luôn luôn là một bội số của 8. Có nghĩa là mỗi hệ điều hành từ Windows XP trở đi, và tôi tin rằng tất cả các distro Linux hiện đại quá, đã được tối ưu hóa cho 4K ổ đĩa. I / O nhỏ nhất là 4K và tất cả các kích thước I / O khác là bội số của điều đó.
misha256

Tôi nghĩ rằng tôi nói rất rõ rằng ngay cả khi bạn nhóm n thành một thao tác, bạn vẫn bảo đĩa tìm kiếm ở các đoạn 512 byte nghĩa là bạn bị giới hạn về số lượng bạn có thể tìm kiếm. 4096 ngành giải quyết vấn đề tìm kiếm. Tôi cũng đã làm rõ rằng kiến ​​thức hệ điều hành về kích thước khối là bắt buộc, nếu không 512 byte sẽ được lưu trữ trong 4096 khối!
Mahmoud Al-Qudsi 6/10/2015

Ngoài ra, tôi nghĩ rằng bạn đang nhầm lẫn về logic và vật lý. Vật lý luôn là 512 hoặc 4096. Nếu kích thước logic là 4096 nhưng HĐH giả định mù quáng là 512, bạn sẽ gặp phải các vấn đề tôi mô tả. Họ phải phù hợp.
Mahmoud Al-Qudsi 6/10/2015

0

512/4096 = Hệ điều hành chịu trách nhiệm căn chỉnh / tối ưu hóa,

512/512 = Ổ đĩa chịu trách nhiệm cho việc này

Xem thêm: http://support.microsoft.com/en-us/kb/2510009


Vui lòng trích dẫn các phần thiết yếu của câu trả lời từ (các) liên kết tham chiếu, vì câu trả lời có thể trở nên không hợp lệ nếu (các) trang được liên kết thay đổi.
DavidPostill

0

Chỉ muốn cho bạn biết về một tình huống mà các lĩnh vực 4K là một vấn đề đối với các hệ điều hành hiện đại.

Nhà văn VSS của Microsoft (Shadow Copy) không hoạt động tốt với các lĩnh vực 4K. Để sao lưu thư mục chia sẻ Bản sao DFS, phần mềm sao lưu "Exec Exec" của chúng tôi cần tạo một bản sao của thư mục Bản sao DFS. Công việc không thành công nếu thư mục DFS Replication nằm trên một ổ đĩa có các cung 4K do VSS không hoạt động chính xác với các lĩnh vực 4K.

Jim


2
Tôi không hoàn toàn chắc chắn điều này trả lời câu hỏi được đề xuất, nó trả lời một câu hỏi, chỉ không phải là câu hỏi của tác giả.
Ramhound

Đây là thông tin rất thú vị, nhưng nó dường như là một câu trả lời cho một câu hỏi hơi khác. Khi bạn có đủ danh tiếng, bạn sẽ có thể nhận xét ở mọi nơi. Đối với một giới thiệu đến trang web của chúng tôi, xem các tour du lịch .
Ben N

-3

Vật lý có nghĩa là của ổ đĩa thực tế, trong khi Logical là của các bộ phận được xác định trong nó. Từ logic của PC Mag so với vật lý:

Trong PC Windows, một ổ cứng vật lý duy nhất là ổ 0; tuy nhiên, nó có thể được phân vùng thành một số ổ đĩa logic, chẳng hạn như C:, D: và E :.

Để giải thích điều này ở dạng dễ tiêu hóa, hãy tưởng tượng một quả táo có chiều rộng bằng bàn tay của bạn. Đó là kích thước vật lý thực tế của quả táo. Đương nhiên, toàn bộ một quả táo sẽ không vừa trong miệng của bạn, vì vậy bạn quyết định cắt nó thành những lát bằng nhau, mỗi lát là chiều rộng của ngón tay bạn. Đây là kích thước hợp lý hoặc kích thước mà máy tính của bạn sẽ sử dụng.

Một số lý do cho điều này là tính toán dung lượng giá trị thực và ánh xạ và sửa lỗi, như được giải thích bởi Wikipedia:

Các ổ đĩa cứng thông thường cố gắng "ánh xạ lại" dữ liệu trong khu vực vật lý không thành công ở khu vực vật lý dự phòng được cung cấp bởi "nhóm khu vực dự phòng" của ổ đĩa (còn gọi là "nhóm dự trữ"), [41] trong khi dựa vào ECC để khôi phục dữ liệu được lưu trữ trong khi số lượng lỗi trong một khu vực xấu vẫn còn đủ thấp. Tính năng SMART (Công nghệ tự giám sát, phân tích và báo cáo) đếm tổng số lỗi trong toàn bộ ổ cứng được ECC sửa (mặc dù không phải trên tất cả các ổ đĩa cứng như các thuộc tính SMART có liên quan "Phục hồi ECC phần cứng" và "Sửa lỗi ECC mềm" không được hỗ trợ một cách nhất quán) và tổng số lần sửa chữa khu vực được thực hiện, vì sự xuất hiện của nhiều lỗi như vậy có thể dự đoán lỗi ổ cứng.

Giống như bạn không thể có những lát táo mà không có quả táo, bạn không thể có logic mà không có cơ sở vật chất làm cơ sở.


1
Nhưng tại sao một hệ điều hành cần phải biết kích thước khu vực vật lý, và nó sẽ làm gì khác đi, với điều kiện là nó phải nói chuyện với ổ đĩa trong các lĩnh vực logic? Có vẻ như thông tin hoàn toàn vô dụng cho một hệ điều hành để biết.
misha256

"Tại sao một hệ điều hành cần biết ..." - Kích thước logic là kích thước tối thiểu để truyền dữ liệu. Kích thước vật lý là kích thước tối ưu để truyền dữ liệu và phản ánh kích thước của hoạt động đọc / ghi thực tế ở cấp ổ đĩa .. "Có vẻ như thông tin hoàn toàn vô dụng ..." - Có lẽ nó "vô dụng" đối với bạn bởi vì Bạn không phát triển hoặc tham gia vào một hệ điều hành?
mùn cưa

1
@sawdust Nhưng HĐH không thể sử dụng kích thước truyền tối ưu mà bạn đang nói đến vì ổ đĩa được nối cứng với các thành phần logic 512-Byte. Các ổ đĩa 4K khác nhau, chúng có các khu vực logic 4K và một hệ điều hành hỗ trợ (ví dụ Win 8.1) buộc phải đọc và ghi trong các lĩnh vực logic 4K. Nhưng ổ đĩa của tôi không phải là ổ đĩa logic 4K. Đó là ổ đĩa logic 512 byte.
misha256

@ misha256 - Tôi đã đăng câu trả lời của riêng mình.
mùn cưa

Nhầm lẫn ổ đĩa vật lý / logic với kích thước khu vực vật lý / logic.
MSalters
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.