Максимальное количество жестких дисков на компьютере

Сколько жестких дисков можно поставить в один системный блок?

На самом деле, количество жестких дисков которых можно поставить в системный блок зависит только от физических и технических возможностей самого системного блока.

В материнской плате есть разъемы «SATA» (возьму к примеру их, это более современные разъемы, есть еще IDE — более старый). Так вот, от количества этих разъемов напрямую зависит количество подключенных жестких дисков.

Еще один момент — это вместимость самого корпуса. Если туда входят четыре жестких диска и разъемов для подключения их хватает, то они спокойно подключатся и будут работать!

У меня, к примеру, подключено на моем ПК три жестких диска и есть еще разъемы для подключения, но места под еще одно места для диска в корпусе нет.

А так, теоретически, можно подключить хоть десять дисков, если объединить две материнские платы в одну, к примеру и сделать большой корпус.

Максимальное количество жестких дисков на компьютере

Не понял («Папка куда подключить»)
NET USE «Папка куда подключить» \compC$

Вообще если уже в «Моем компьютере» у меня подключено 26 дисков, и я подключаю еще, то зайдя в Сервис—> Отключить сетевой диск я увижу подключенные но не отображаемые диски, а как их отобразить в Моем компьютере или где-нить еще!?

Максимальное количество жестких дисков в 64-битном Linux?

Существует ли максимальное количество жестких дисков, которое можно подключить к 64-разрядной машине Linux? Меня не волнует практичность, так как моя ситуация связана с ВМ.

Linux не устанавливает произвольных ограничений на количество жестких дисков.

Это легко. После /dev /sdz следует /dev /sdaa. И я только что проверил это, сделав и войдя в 800 целей ISCSI на моем ноутбуке, после /dev /sdzz приходит /dev /sdaaa. 🙂

Для дисков SATA и SCSI под современное ядро Linux применяется то же, что и выше, за исключением того, что код для получения имен работает должным образом за пределами sdzzz до (в теории) sd, за которым следует 29 z!

Итак, теоретически есть пределы, но на практике они недоступны.

На самом деле существует ограничение на количество дисков, предоставляемых абстрактной подсистемой SCSI Linux, которая включает в себя диски SATA и USB. Это связано с тем, что файлы устройств помечены парами основных / второстепенных номеров устройств, и схема, выделенная для подсистемы SCSI, имеет этот неявный предел.

Выделены следующие основные коды операций: с 8, 65 по 71 и с 128 по 135, в результате всего получается 16 выделенных блоков. Дополнительный код операции ограничен 256 возможными значениями (диапазон 0..255). Каждый диск получает 16 последовательных второстепенных кодов операций, где первый представляет весь диск, а следующие 15 представляют разделы.

Ранее я видел, как люди пишут 128 как предел. Я верю, что Linux совсем недавно 128..135, что объясняет расхождение.

Схема именования ( /dev/sdbz7 ) выбирается пользователем, а не ядром Linux. В большинстве случаев ими управляют udev, eudev или mdev (хотя в прошлом они создавались вручную). Я не знаю их схемы именования. Не обязательно полагаться на все устройства именования систем на основе Linux одинаково, поскольку системный администратор может изменять политики именования устройств.

Материнские платы ASUS:

Несмотря на то, что материнские платы ASUS с последним поколением чипсетов Intel используют EFI BIOS, производитель тоже задумался об обеспечении работы HDD большого объема на остальных своих платах и выпустил бесплатную утилиту ASUS Disk Unlocker с тем же функционалом, что и у конкурента. Также можно создавать GPT или MBR разделы, правда, ни одна версия операционной системы Windows не сможет грузиться с раздела с GPT-оглавлением.

support

ASUS Disk Unlocker может работать с материнскими платами, сделанными на основе следующих чипсетов:

ASUS Disk Unlocker

Какие есть ограничения

В спецификации AT и ATX, как и в коде Windows, не прописаны никакие ограничения ни относительно количества винчестеров, которые можно поставить в один системный блок, ни относительно их суммарной емкости. Теоретически, цифра может быть огромной. На практике пользователь сталкивается с такими ограничениями:

Мощность блока питания. Если установить в ПК слишком много HDD, то с учетом энергопотребления прочих компонентов ее может оказаться недостаточно, и компьютер будет вырубаться при малейшем увеличении нагрузки(встречается редко, но имеет место быть).

Количество посадочных мест и свободное пространство внутри корпуса. Винчестеры размером 3.5 дюйма, которые используются в системном блоке, монтируются в соответствующие карманы. В среднем, на одном шасси их от 2 до 8 в зависимости от форм-фактора. Устанавливать жесткий диск на весу крайне нежелательно.

Количество портов SATA. На материнской плате их обычно от 4 (в бюджетных моделях) до 8 (в геймерских модификациях от ASUS или MSI). Если портов нужно больше, придется докупить HBA/RAID контроллер.

Эффективность системы охлаждения. Большое количество HDD будет греть корпус изнутри несколько сильнее, чем один или два, что может повлиять на работу остальных компонентов. Нормальная циркуляция воздуха внутри также затрудняется. Потребуется несколько мощных кулеров для охлаждения такой системы.

Проблема больших винчестеров на старых платах

В далёких 80-х годах первые 10 Mb винчестеры казались просто гигантскими. Потом казались гигантскими на сотни мегабайт. Ну а после взятия рубежа в 10 Gb объём винчестеров стал расти просто до неприличия быстро. Однако такой резвый прогресс в области винчестеростроения породил так называемую «проблему больших дисков».

Дело в том, что обычно каждая новая версия ПО редко переписывалась начисто — в ее «теле» оставались ранее написанные подпрограммы. В результате наследовались различные ограничения, связанные с использованием старых кусков кода. (Например, даже в том же Award BIOS для современных плат многие важные подпрограммы были написаны в далёком 1990 году.) А каждый такой «кусок», имея собственные ограничения на максимальную используемую емкость винчестера, и порождал каждый раз всё новую проблему. И совершенно неправильно в многочисленных «железных» интернет-форумах многие пытаются объяснить проблему «больших» дисков чем-то одним, найти одного конкретного виновника. Мы же подойдём к проблеме комплексно, чтобы окончательно расставить все точки над «Ё».


Как система работает с диском

Чтобы разобраться с ограничениями на объем жестких дисков, нужно достаточно чётко представлять всю структуру работы с диском: от приложения до самих головок чтения/записи. Схематически процесс взаимодействия можно представить в следующем виде:

Рассмотрим «форматы» каждого из слоев.

1. Винчестер физически состоит из одной или нескольких пластин, покрытых магнитным слоем. С обеих сторон пластины (иногда — только с одной) располагаются головки чтения/записи информации. Информация записывается на «дорожки», которые в случае нескольких головок образуют цилиндр. Дорожка разбита на секторы, каждый из которых и представляет тот минимальный блок информации, который можно записать на диск. Стандартный размер сектора — 512 байт. Самые первые винчестеры имели постоянное количество секторов на дорожку на всём диске. Однако это не позволяло эффективно использовать всю поверхность диска — каждая следующая внешняя дорожка длинней внутренней, соответственно, на ней может поместиться больше информации. Поэтому современные винчестеры разбиты на «зоны», то есть совокупности соседних дорожек с одинаковым количеством секторов на дорожку, и с приближением к центру винчестера количество секторов в зоне дискретно уменьшается. Именно поэтому график линейного чтения винчестера (исправного) выглядит в виде нисходящих ступенек.

2. Контроллер винчестера управляет работой головок чтения/записи. Он переводит команды «интерфейса» в электрические сигналы на головках. Интерфейсы бывают разные: «доисторические» ST506 и ESDI, современные ATA (IDE) и SCSI, «будущие» Serial ATA и Serial SCSI. Нас, естественно, интересует IDE-винчестеры, потому и рассмотрим интерфейс ATA.

Исторически первой появилась CHS-адресация (C — Cylinders, H — Heads, S — Sectors). В интерфейсе ATA предусмотрено:

  • для «С» — два байта (16 бит);
  • для «S» — один байт минус 1 сектор (8 бит — 1);
  • для «H» — полбайта (4 бита).

Итого, максимальный винчестер для CHS-адресации:

2 16 x (2 8 -1) x 24 = 65536 x 255 x 16 = 267386880 секторов. В секторе 512 байт, значит:

HDDmax (CHS) = 65536 x 255 x 16 x 512 = 136902082560 байт = 136.9 Gb (127,5 ГБ)*

Все современные винчестеры используют линейную LBA-адресацию. В этом случае номер каждого сектора представляет собой одно 28-битное число, и максимальным диском для LBA будет:

HDDmax (LBA) = 2 28 x 512 = 137438953472 байт = 137.4 Gb (128 ГБ)

3. BIOS по вышеописанной «иерархии» находится между ОС и контроллером винчестера. В его функцию входит перевод команд запроса на работу с диском от ОС в команды контроллера винчестера.

Большинство программного обеспечения использует CHS-адресацию. Поэтому с появлением LBA-винчестеров, чтобы не переписывать имеющееся ПО, поступили следующим образом. BIOS в случае определения LBA-винчестера переводит его параметры в CHS-версию, и ОС «думает», что работает с CHS-винчестером. То есть 28-битное значение LBA «раскладывается» следующим образом: «цилиндрические» 16 бит + «секторные» 8 бит + «головчатые» 4 бита (итого 16+8+4=28). Или конкретно:

  • биты 0-7 — сектор (+1 шт., т.к. адресация CHS начинается с 1-го, а не 0-го сектора);
  • биты 8-15 — цилиндр, младший байт;
  • биты 16-23 — цилиндр, старший байт;
  • биты 24-27 — головка.

При получении запроса на работу с диском BIOS переводит для контроллера это значение обратно в LBA:

LBA = (цилиндр * число головок + номер головки) * количество секторов на дорожку + (номер сектора — 1)

4. В далекие, еще DOS’овские времена, разработчики не подозревали, что когда-то емкость винчестеров будет измеряться десятками и даже сотнями гигабайт. Ведь самый богатый в мире человек (и самый проклинаемый компьютерной братией в одном лице) тоже как-то рассуждал «о бесконечности» 640 кБ оперативной памяти. В результате для адресации CHS в DOS (int 13h) была выбрана следующая «трёхбайтовая» система:

  • один байт — для младших битов значения цилиндров (0-7 биты);
  • один байт — для двух старших бит значения цилиндров (8-9 биты) и шесть битов значения сектора;
  • один байт — для значения головок.

Итого получалось, что «C» = 0-1023, «H» = 0-255 и «S» = 1-63. Следовательно, максимальным винчестером, с которым способен работать DOS, будет:

HDDmax (DOS) = 1024 x 256 x 63 x 512 = 8455716864 = 8.46Gb (7,88 ГБ)

Или для LBA-адресации это получается 24-битное (3 байта) число:

HDDmax (DOS-LBA) = 2 24 x 512 = 8589934592 = 8.59 Gb (8 ГБ)

5. Приложения используют определённую файловую систему, которая также имеет свои ограничения. Например, в случае с FAT16 объем раздела зависит от величины кластера, и максимальное количество кластеров ограничено числом 2 16 . Кластер — это совокупность секторов, и его максимальный объем — 64 сектора («нестандартные» 128 и больше позволяют делать лишь linux-образные утилиты), т.е. 32 кБ. Максимальный раздел для FAT16 получается таким:

FAT16max = 2 16 x 32 кБ = 2147483648 = 2.15 Gb (2 ГБ)


Барьеры емкости

Теперь, зная все моменты, попробуем восстановить хронологию возникновения проблем «больших» дисков.


134 Mb, год 1990-й

Самая старая и, наверное, уже мало кому известная проблема касается времен 100 Mb (не Gb!) винчестеров. Использовалась тогда FAT12, для которой максимальным был раздел:

FAT12max = 2 12 x 32 кБ = 134217728 = 134 Mb (128 МБ)

Способ решения простой — переход на FAT16 (для этого-то она и создавалась).


528 Mb, год 1993-й

Самая первая, самая известная и самая серьёзная проблема, затронувшая CHS.

Дело в том, что все первые биосописатели не рассчитывали, что когда-то в их детища кто-нибудь попытается засунуть такие «гигантские» винты. Проблема была из-за того, что в BIOS’е для CHS было выделено:

  • для С — 10 бит, итого 210 = 1024 максимум;
  • для H — 4 бит, итого 24 = 16 максимум;
  • для S — 6 бит, итого 26 — 1 = 63 максимум.

При таком подходе максимальный установленный винчестер мог быть:

HDDmax (oldBIOS) = 1024 x 16 x 63 x 512 = 528482304 = 528 Mb (504 МБ)

«Почему так мало выделялось?» — спросите вы. Всё просто: 10+4+6 и ещё 4 управляющих бита позволяли «вписаться» в три байта (24 бита). В то время с памятью была «напряженка», вот и экономили на каждом бите.;)

Решение проблемы имело три пути. Первый — это форматирование «слишком большого» винчестера с помощью встроенной в BIOS утилиты на 528 Mb. Такой способ был достаточно распространённым в своё время (из-за неопытности пользователей ;). Второй — использование специального ПО — Disk Managers (типа OnTrack, EZ-Drive и др.), заменяющего подпрограммы BIOS для работы с дисками своими собственными. Как правило, для работы такие программы модифицировали MBR диска. Однако это не позволяло корректно работать с диском при загрузке с другого винчестера (или даже дискеты), а также возникали большие проблемы с установкой нескольких ОС на такой диск.

Ну и третий — обновление BIOS. Однако флэш-память для микросхем BIOS не была тогда распространена, да и интернет не был развит, соответственно, и прошивок никто не делал и не выкладывал. Поэтому из-за малой практической эффективности всех этих способов плату нужно было просто заменить на «поддерживающую LBA».


2.11 Gb, год 1996-й

Многие биосописатели не учли предыдущего опыта и добавили в BIOS всего 2 бита на цилиндры. Итого получалось:

HDDmax (1996) = 2 12 x 16 x 63 x 512 = 2113929216 = 2.11Gb (1.97ГБ)

Причём некоторые версии определяли только «часть» винчестера (например, 2.5 Gb определялся как 425 Mb), а некоторые просто зависали при автоопределении винчестера из-за неправильного перерасчёта головок.

Решение проблемы — обновление BIOS (либо использование disk managers).


2.15 Gb, год 1996-й

Только появившаяся Windows95 (версия «A», не OSR) использовала DOS-овские FAT16 и потому наследовала все его проблемы — вышеописанное ограничение в 2.15 Gb на один раздел.

Решение проблемы — установка Windows95B (OSR2), которая позволяла использовать FAT32. У FAT32 максимальный раздел:

FAT32max = 2 32 x 32 кБ = 17042430230528 = 17042 Gb (15872 ГБ)


4.23 Gb, год 1997-й

Не всем известное ограничение. Оно вытекает из способов решения «проблемы 528 Mb». Так вот, чтоб преодолеть барьер 528 Mb, BIOS’ы могли использовать один из двух способов: «LBA Assist Translation» и «Bit Shift Translation (так называемый «Large» режим трансляции).

Метод LBA-трансляции при наличии в системе LBA-винчестера для совместимости со старым ПО (int 13h) высчитывал значение CHS по следующему алгоритму. Число секторов принималось равным 63. Число головок выбиралось исходя из объема диска (от 16 до 255). Число цилиндров вычислялось как частное от деления общего числа секторов на количество головок и секторов, то есть объема «виртуального» цилиндра.

Однако до появления LBA-трансляции на рынке было много винчестеров с ёмкостью больше 528 Mb. Для работы с такими винчестерами использовался следующий пересчет цилиндров. Выбирался коэффициент, кратный степени двойки (2, 4, 8 и т.д.). На него делилось реальное число цилиндров и умножалось число головок. В результате BIOS’ы, использующие такую трансляцию для винчестеров емкостью более 4.23 Gb, использовали в качестве коэффициента числа 16, 32, 64 и т.д. При умножении количества головок на коэффициент получалось число, большее или равное 256. Однако старое ПО (DOS, Windows95) «понимали» только значения 0-255, поэтому 256 головок воспринималось как 0.

Решение проблемы — обновление BIOS.


8.46 Gb, год 1998-й

Вышеописанное ограничение Int 13h. Правда, конфигурации с 256-ю головками не встречались, потому реальное ограничение:

HDDmax (Int13h/DOS) = 1024 x 255 x 63 x 512 = 8422686720 = 8.42 Gb (7.84 ГБ)

Решение — обновление BIOS.


33.8Gb, год 1999-й, лето

Самая актуальная нынче проблема. После исправления в BIOS’е «проблемы Int 13h», ограничивающей объем диска восемью гигабайтами, схема адресации стала аналогичной внутреннему формату ATA-интерфейса:

  • С — два байта (16 бит), максимум 216 = 65536;
  • H — один байт (4 бит), максимум 24 = 16;
  • S — один байт (8 бит), максимум 28 = 255;
  • или в режиме LBA — 16+4+8=28 бит.

То есть теоретически можно было работать с самыми большими дисками объемом до 137.4 Gb. Однако опять биосописатели ошиблись. Они не учли, что при пересчёте цилиндров по старой схеме им просто «не хватит» даже 16 разрядов на цилиндры. Для решения проблемы нужно было заменить все инструкции 16-битного деления на 32-битные и добавить условие: если LBA-значение количества секторов диска превышает 65536 x 16 x 63 = 66060288, то количество секторов приравнивается к 255. Это и было сделано в версиях Award BIOS после июня 1999 года.

Остановимся на решении этой проблемы подробнее. Итак, главное и самое простое решение проблемы — обновить BIOS. Однако для подавляющего большинства Socket7-плат (кроме «последних» на чипсетах VIA MVP3/MVP4, ALI V, SiS 530/540) производители не выложили новых версий BIOS с поддержкой «больших» винчестеров. Поэтому если вы — счастливый обладатель какой-нибудь i430VX/TX или VIA VPX, не мучайтесь с поисками в интернете «нового» BIOS’а для вашего не определяющегося свежекупленного винчестера. Ведь даже самый признанный «биосописатель», ASUS, не выложил новых версий для своей линейки плат на чипсете i430TX. Исправить, как вы уже видели, нужно было совсем немного, поэтому причина «забывчивости» всех производителей одна — маркетинг: мол, покупайте наши новые платы, там все без проблем.

Вот что можно посоветовать, если вы уже купили такой «большой» диск:

  1. На некоторых винчестерах есть перемычки для конфигурирования винчестера на 33.8 Gb. Вы получите полностью работоспособную систему, но, к сожалению, с меньшим объёмом.
  2. Windows (98 и выше) применяет свои подпрограммы для определения винчестера, у которых нет проблем для работы с винчестерами больше 33.8 Gb. Поэтому если вы хотите использовать «большой» диск просто в качестве «второго» (т.е. будете грузиться не с него, а с другого, меньшего, чем 33.8 Gb), то можно просто выключить в BIOS’е автоопределение «большого» винчестера (т.е. поставить Disabled). Тогда компьютер не повиснет в BIOS, а Windows при загрузке сама определит «невидимый BIOS’у» диск, и можно будет совершенно корректно использовать весь его объём. Однако, во-первых, вы не сможете пользоваться «большим» диском из-под DOS (его разделы будут просто там отсутствовать), а во-вторых, очень вероятно, что скорость работы с таким «невидимым в BIOS» диском будет существенно более низкой из-за «неинициализации» его контроллера (т.е. он может работать только по протоколу PIO-4, скорость которого ограничена 16 Мб/с).
  3. В некоторых редких BIOS’ах «проблему 32 ГБ» удаётся обойти установкой параметров «большого» диска вручную (как для старых винчестеров).
  4. Ну и, наконец, старые, знакомые и такие неудобные disc managers.

От себя лично, правда, могу добавить, что на моём сайте www.ROM.by я постепенно выкладываю «коллекцию» BIOS под старые платы с поддержкой «больших» винчестеров. Например, если у вас плата Asus или Acorp, можете смело заходить — там есть все их модели под Socket7-Pentium-II. Вскоре собираюсь выложить исправленные BIOS’ы под все самые распространённые в наших широтах платы (Socket7 и первые P-II) — от MSI и Gigabyte до «Акорпа» и «Зиды».


65 Gb, год 2000-й, зима

В некоторых BIOS’ах была (да и есть) ошибка с определением винчестеров больших, чем 65 Gb.

Решение — обновление BIOS.


137.4 Gb, год 2002-й

Современные диски достигли предела стандарта ATA. Для его преодоления уже нужно будет менять сам интерфейс. Что, например, и сделала та же Maxtor: разработанная этой фирмой технология BigDrive была предложена одновременно со спецификацией протокола UltraDMA/133. Она предполагает применение не 28-, а 48-битной адресации секторов.

Решение проблемы аналогично предыдущим — замена BIOS. Правда, для подавляющего большинства все же это совсем не проблема. Пока.

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector