PDA

Показать полную графическую версию : [решено] HDD больше 2 ТБ на 945 чипсете будет работать?


Страниц : 1 [2]

IgNat
08-12-2012, 01:07
Как определить? »- посмотреть на маркировку, под маленьким радиатором :)
вот она с ICH7R »- невнимательно читаете, плата выпускается как с ICH7, так и с ICH7R:
• Intel® ICH7/ICH7R Chipset
...
- Serial ATA RAID 0/1/0+1 for ICH7R.
- Integrated AHCI controller for ICH7R.
...
On-Board IDE/SATA

• One Ultra DMA 66/100 IDE controllers integrated in ICH7/ICH7R
...
• SATAII controller integrated in ICH7/ICH7R
...
- Serial ATA RAID 0/1/0+1 for ICH7R.- т.е. если установлен ICH7R, то для этой платы и действуют пункты:for ICH7R Напротив этих пунктов стоит волшебная картинка: http://rghost.ru/42081974/thumb.png (http://rghost.ru/42081974/image.png) ;)

plvtor
08-12-2012, 03:13
В Bios ничего про RAID и AHCI, так что похоже ICH7

IgNat
08-12-2012, 11:54
plvtor, в принципе, ничего страшного. Можете взять по Money Back какой-нибудь WD, лучше RE4. Запросить в тех.поддержке программу WDSpeed, понизить до SATA Revision 2.0 или перемычкой до SATA Revision 12.0. Если никакие действия не помогут, то сдать по Money Back. :)

AMDBulldozer
08-12-2012, 12:21
Можете взять по Money Back какой-нибудь WD, лучше RE4. Запросить в тех.поддержке программу WDSpeed, понизить до SATA Revision 2.0 или перемычкой до SATA Revision 1.0. Если никакие действия не помогут, то сдать по Money Back. »


Простите, не совсем понял Ваш совет. Ну хорошо, понизит автор скорость соединения до 1.5Гбит/сек. Для этого даже не обязательно ставить джампер, то же самое легко делается программным путем (понижением скорости работы выбранного канала SATA-контроллера).
Но ведь на программно доступный объем диска это никак не повлияет. 1.5, 3, 6 Гбит/сек - неважно. Обращаться можно будет только к секторам в пределах 32-хбитной адресации.

IgNat
08-12-2012, 17:32
AMDBulldozer, Внутренние накопители с интерфейсом SATA 6 Гб/с не опознаются некоторыми системными платами. (http://wdc-ru.custhelp.com/app/answers/detail/a_id/7553/related/1/session/L2F2LzEvdGltZS8xMzU0OTcyMTY2L3NpZC9aNFRxWWRkbA%3D%3D)то же самое легко делается программным путем (понижением скорости работы выбранного канала SATA-контроллера). »- опять вы о своём :) Просьба, в подобных случаях, указывайте что это возможно в таких-то Linux-программах, возможно портированных в Windows. Автор темы, как и подавляющее большинство участников конференции работают в среде Windows ;).
Также, непонятно зачем понижать канал SATA-контроллера с 3.0 Гб/с до 1.5 Гб/с :confused: если в HDD так и будет скорость по умолчанию 6.0 Гб/с. В итоге, возможно, получим не определившийся HDD.

Tau_0
09-12-2012, 11:13
Обращаться можно будет только к секторам в пределах 32-хбитной адресации. »
Этот объём есть не ограничение контроллера, а ограничение разметки MBR. Просто в стандартную запись PT (таблицы разделов) большее число нельзя вписать --- не хватает разрядов... А при GPT --- нет проблем. Правда там другое ограничение по железу --- не так просто с такого харда загрузиться --- BIOS не поддерживает, но это уже другая история....

plvtor
09-12-2012, 21:21
Поскольку косенсуса в теоретической части найдено не было, перейдем к части практической.

Диск приехал 3 TB Seagate ST3000DM001
В BIOS, как и писали, виден лишь как 800 ГБ.
Загрузившись в Win7, она нашла новое устройство.
В "управлении дисками" для разбиения был доступен весь объем 2794,39 GB. Инициализировал его в GPT.
Разбил на три части 1250-1250-294 ГБ.
Скинул на последний раздел с десяток гигов, после чего сравнил с исходными. Т.е и читает и пишет из "недосягаемой" области.

mwz
10-12-2012, 01:16
Т.е и читает и пишет из "недосягаемой" области »

А теперь поаккуратнее с использованием загрузочных диагностических DVD и флэшек.

Поскольку 3 терабайта будет видеть только при драйвере msahci.sys от Микрософт, а также при драйвере IRST (Intel Rapid Storage Technology) iaStor.sys от Intel начиная с версии, если не ошибаюсь, 10.8.0.1003. При других драйверах может увидеть ок. 860 гигабайт с вытекающими неприятными последствиями.

IgNat
10-12-2012, 13:47
plvtor, вот и славненько :) Отмечайте Решено.

AMDBulldozer
10-12-2012, 14:00
Этот объём есть не ограничение контроллера, а ограничение разметки MBR. »

Вынужден разочаровать, но Вы ошибаетесь. Если не верите - возьмите любую достаточно старую материнскую плату и проверьте. Будете удивлены.

Интересно, почему некоторым людям никогда не приходит в голову простая и очевидная мысль, что аппаратная реализация тоже имеет свои ограничения? Загадка...

Tau_0
10-12-2012, 20:30
Вынужден разочаровать, но Вы ошибаетесь. »
Нет --- ошибаетесь Вы..., причём как минимум дважды...
Тут просто, как грабли...:gigi::gigi::gigi:

Смотрим формат классической MBR/PT хотя бы в Вики
Структура описания раздела --- табличка
Главная загрузочная запись
http://ru.wikipedia.org/wiki/Главная_загрузочная_запись

Только по четыре байта выделено на смещение первого сектора раздела и на количество секторов в разделе (смещения 0Bh, 0Ch). Max число --- FF FF FF FFh секторов. Учитывая, что длина сектора равна 1/2 KiB, при перемножении получаем пресловутые 2 TiB. Большее число никак не получить. Только и всего....

Старые контроллеры и BIOS поддерживали не 32 битную LBA адресацию, а 28 битную... Но теперь уже ВСЁ давно на 48 бит.

ЗЫ Контроллеру фиолетово 32 или 64 разрядная OS с ним работает, --- на 48 битах он далеко достанет... А то, что для поддержки хардов за 2 TiB нужна 64 разрядная Windows 7, так то ограничен6ие реализации самой Windows, но никак не контроллера.

ЗЗЫ Про аппаратные и програмные ограничения знаю не понаслышке...

AMDBulldozer
10-12-2012, 20:53
Tau_0, к сожалению, боюсь Вы не совсем понимаете то, о чем пишете.
Начнем с того, что MBR имеет отношение только к созданию разделов. А диск может их вообще не иметь. В тот момент, когда Вы смотрите данные по накопителям в BIOS, никакого чтения MBR не происходит. Так что она тут совершенно не при чем. Но BIOS покажет Вам 800 ГБ вместо 3000. Хотя накопитель действительно поддержвает адресацию LBA48.
Вся беда в том, что эта самая LBA48 - это интерфейс между диском и контроллером. А не между контроллером и процессором.
Разница понятна?

ЗЫ Контроллеру фиолетово 32 или 64 разрядная OS с ним работает, --- на 48 битах он далеко достанет... А то, что для поддержки хардов за 2 TiB нужна 64 разрядная Windows 7, так то ограничен6ие реализации самой Windows, но никак не контроллера. »

Эта фраза, к сожалению полностью лишена смысла. Поэтому даже комментировать нечего.

Tau_0
12-12-2012, 21:48
Tau_0, к сожалению, боюсь Вы не совсем понимаете то, о чем пишете. »
Конспективно наш ответ Кезону::gigi::gigi::gigi:
1. Операционная система работает с томами, а не с секторами на диске, поэтому без разделов никак не обойтись...
2. Хард работает с хостом (чипсетом или специализированным контроллером) по ANSI протоколу, описанному в документе AT Attachment
with Packet Interface - 6 (ATA/ATAPI-6) . Режим может быть DMA (без вмешательства CPU) или PIO (под правлением CPU). В этом нет никакой беды, --- только радость...
3. На BIOS ориентироваться не следует --- мало ли какой объём он показывает (ошибка потому, что написан ещё при царе Горохе...).
4. Для правильного определения объёма надо просто прочитать паспорт диска, --- здесь не важно 28-bit/48-bit контроллер. Паспорт правильно считает люой.

Вроде всё.

ЗЫ plvtor уже решил проблему без наших витийствований.] Не удержался вот...:(

misha2
12-12-2012, 22:56
Для правильного определения объёма надо просто прочитать паспорт диска, --- здесь не важно 28-bit/48-bit контроллер. »
Да, для того чтоб винт отдал свой паспорт - неважна вообще битность. Если винт старый и и поддерживает только 28 бит то он проигнорирует старшие регистры и все равно отдаст паспорт только 512 байт. Если более новый с 48 бит, то отдаст тоже. В современных винтах 2 адресации - 28 и 48. Замечено что во многих существует двойная адресация подачи команд, сначала подаётся 28 бит, следом 48. Но это уже правда лишь косвенно к определению паспорта винта. То есть старый винт увидится на старой мамке, а новый винт может некорректно отдать свои данные на старых матерях. На новой материнке любой винт покажет всё верно.

AMDBulldozer
13-12-2012, 17:26
1. Операционная система работает с томами, а не с секторами на диске, поэтому без разделов никак не обойтись... »

Неверно. Для работы ОС с диском разделы не обязательны. Впрочем, это не имеет отношения к данной теме.

2. Хард работает с хостом (чипсетом или специализированным контроллером) по ANSI протоколу, описанному в документе AT Attachment
with Packet Interface - 6 (ATA/ATAPI-6) . Режим может быть DMA (без вмешательства CPU) или PIO (под правлением CPU). В этом нет никакой беды, --- только радость... »

Вообще не понимаю, с какой целью Вы это написали. Если бы Вы потратили немного времени и прочитали стандарт, то могли бы заметить, что он включает в себя описание физического уровня интерфейса.
А команды, которые контроллер может выдавать диску включают в себя установку однобайтовых регистров HDD.
Так, 28-мибитный адрес логического сектора формируется программированием четырех регистров: LBA Low, LBA Mid и LBA High. Поскольку регистры 8-мибитные, таким образом можно задать 24 бита адреса. Поэтому оставшиеся старшие 4 бита хранятся в младшей половине другого 8-мибитоого регистра - регистра управления устройством (device control register).

32-хбитной LBA адресации, о которой Вы упоминали в своем сообщении, не существует в природе:

Старые контроллеры и BIOS поддерживали не 32 битную LBA адресацию, а 28 битную... Но теперь уже ВСЁ давно на 48 бит. »

Сейчас я потрачу немного времени на то, чтобы объяснить как функционирует LBA-48.
Для реализации такой схемы адресации, однобайтовые регистры накопителя были заменены FIFO-стеком, вмещающим два однобайтовых значения.
Для адресации секторов с помощью LBA-48 в регистры накопителя производится не одна, а две записи.
Названия ATA команд ориентированных на работу с 48-миразрядной адресацией, совпадают с названиями команд LBA-28 с добавленным к ним суффиксом "EXT". Например, аналогом команды "READ DMA" является команда "READ DMA EXT".
Первая запись в регистры формирует младшую половину адреса сектора (биты с 0 по 23). Вторая - старшую (биты с 24 по 47). Device control register в формировании адреса непосредственного участия не принимает, однако поле LBA (6-ой бит этого регистра) должен быть выставлен в 1.

Для чего я это рассказываю? Для того, чтобы стало понятно, что при выполнении дисковых операций контроллер выполняет работу по установке управляющих регистров накопителя.
А откуда контроллер узнает, какие именно команды необходимо выдать накопителю? Он, естественно, получает команды от операционной системы. Но вот беда - в "родном" для SATA-контроллеров режиме работы, они получают команды в формате CDB (command descriptor block), которые записываются CPU в непрерывную (в пространстве ввода-вывода) последовательность портов. Результат работы команды либо считывается из портов ввода-вывода, либо, в большинстве случаев, отображается на выделенный в адресном пространстве процессора участок памяти.
Отсюда легко понять две вещи:
1. Длина CDB должна быть достаточной для того чтобы вместить адрес логического блока. Эта длина не является постоянной и может быть 10, 12 или 16 байт.
Операционная система может сформировать команду любой длины. Это-то не проблема. Проблема в том, чтобы контроллер понимали умел интерпретировать эту команду.
Вся беда в том, что во-первых, в самом CDB для адреса сектора может быть отведено недостаточно места. Так, в 10 и 12-байтовых командах под адрес сектора выделено только 4 байта. Это делает невозможным адресацию секторов за пределами 2.1TiB.
Но и это еще не всё. Как мы уже выяснили, непосредственно ATA команды накопитель принимает только в режиме совместимости ("IDE"). В родном режиме работы контроллера (который часто называют AHCI, хотя это и неправильно) должна быть выполнена процедура трансляции команд (SAT - стандарт t10/2126-D). Эта процедура выполняется микропрограммой контроллера. К сожалению, в момент появления дисков ёмкостью более 2.1TiB, микропрограмма предусматривала хранение адреса сектора в 32-хбитном регистре.
В результате, контроллер оказывался не в состоянии транслировать полученные CDB в правильную последовательность ATA команд и итог оказывался тот же самый - секторы с адресами больше 2^32-1 оказывались недоступны.

amped
05-09-2014, 19:00
Подскажите, а на материнке с Intel 3000 + 6702PXH (PXH-V) + NH82801GR (ICH7R) можно собрать 6TB массив из хардов по 3TB?




© OSzone.net 2001-2012