-1

Если на компьютере установлена 32-битная копия Windows, можно использовать максимум 4 ГБ ОЗУ. Но почему тот же компьютер может использовать 500+ ГБ дискового пространства? Если существует ограничение на ОЗУ, не должно ли существовать такое же ограничение для хранилища?

2 ответа2

5

Было несколько ограничений размера хранилища, которые были введены и работали в течение многих лет.

Из пределов истории BIOS и IDE мы видим следующие ограничения:

  • Спецификация ATA (для дисков IDE) - ограничение в 137 ГБ

  • BIOS Int 13 - ограничение в 8,5 ГБ

  • Лимит 528 МБ

  • Лимит в 2,1 ГБ (апрель 1996 г.)

  • Ограничение в 3,2 ГБ

  • Ограничение в 4,2 ГБ (февраль 1997 г.)

  • Лимит 7,9 ГБ

  • Ограничение в 8,4 ГБ

  • Лимит 33,8 ГБ (август 1999 г.)

  • Ограничение в 137 ГБ (сентябрь 2001 г.)

  • Предел 2 TiB

Прочитайте связанную статью для деталей каждого ограничения. Обычно они отличаются от ограничений памяти из-за 512-байтового сектора и 4096 (по умолчанию) размеров кластеров в сочетании с другими факторами.

Мы уже прошли перечисленное ограничение "2 ТБ", и оно относится только к MBR-дискам. GPT-разделенный диск не имеет этого ограничения.

2

В основном нет. Процессор напрямую не работает с дисковым хранилищем так же, как использует оперативную память, то есть не имеет специальных инструкций, которые бы принимали номера секторов жесткого диска.

Вместо этого ОС должна отправлять команды контроллеру диска, чтобы извлечь некоторые сектора и скопировать их в ОЗУ (или наоборот, записать некоторые данные из ОЗУ в сектора диска). Только один раз в ОЗУ данные становятся доступными для ЦП - и ЦП не имеет значения, как он туда попал.

(Помните, что "битность" ЦП в основном описывает те инструкции, которые имеют дело с адресами памяти, но не обязательно те, которые имеют дело с простыми числами. Таким образом, 32-разрядный процессор все еще может работать с большими числами, чем это. Например, когда нужно вычислить адрес 64-битного сектора. Это может занять несколько больше инструкций, чем работа с 32-разрядным числом, но это все же выполнимо.)

Тем не менее, могут быть ограничения хранения в другом месте. Например, изначально на IDE-дисках были только команды, которые принимали 22-битные адреса секторов. Для поддержки дисков большего размера в IDE требовались новые команды для 28-битных и, в конечном итоге, 48-битных адресов секторов. Но это никак не связано с процессором.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .