Ребята, подскажите как через порты можно получить доступ к дисковому пространству винта за 8-м гектаром.
Интересует именно работа с "большими" винтами, а не в целом. Как через LBA32 я знаю.
Заранее спасибо.
Здравствуйте, latemic, Вы писали:
L>Ребята, подскажите как через порты можно получить доступ к дисковому пространству винта за 8-м гектаром. L>Интересует именно работа с "большими" винтами, а не в целом. Как через LBA32 я знаю. L>Заранее спасибо.
Так LBA32 хватает до 128ГБ. В чем проблема ?
Re[2]: HDD >8Gb access
От:
Аноним
Дата:
06.04.06 06:37
Оценка:
сначала читаем на форуме www.rom.by статью про доступ к большим винтам, а потом ищем исходники биоса
Здравствуйте, h0rnet, Вы писали:
H>Здравствуйте, latemic, Вы писали:
L>>Ребята, подскажите как через порты можно получить доступ к дисковому пространству винта за 8-м гектаром. L>>Интересует именно работа с "большими" винтами, а не в целом. Как через LBA32 я знаю. L>>Заранее спасибо.
H>Так LBA32 хватает до 128ГБ. В чем проблема ?
Прошу прощения, не точно выразился. Для LBA28 ограничение в 128Гб. Мне нужна информация о том как я могу работать с большими дисками (>128Gb) через порты. Во многих статьях что я читал написано такое дело:
Номер порта CHS LBA Read Write
1F0h (170h) Порт данных Порт данных
1F1h (171h) Порт ошибок Порт свойств
1F2h (172h) Счетчик секторов Счетчик секторов
1F3h (173h) Номер сектора Адрес 0-7
1F4h (174h) Цилиндр [0:7] Адрес 8-15
1F5h (175h) Цилиндр [8:15] Адрес 16-23
1F6h (176h) Номер головки и устройства Адрес 24-27, устройство
1F7h (177h) Регистр состояния Регистр команды
3F6h (376h) Регистр состояния Управление
Из этого следует что максимальный LBA адрес сектора задаётся 28-р числом. Однако я слышал о LBA48. Подскажите, что это такое и с чем его едят.
Здравствуйте, latemic, Вы писали:
L>Здравствуйте, h0rnet, Вы писали:
H>>Здравствуйте, latemic, Вы писали:
L>>>Ребята, подскажите как через порты можно получить доступ к дисковому пространству винта за 8-м гектаром. L>>>Интересует именно работа с "большими" винтами, а не в целом. Как через LBA32 я знаю. L>>>Заранее спасибо.
H>>Так LBA32 хватает до 128ГБ. В чем проблема ?
L>Прошу прощения, не точно выразился. Для LBA28 ограничение в 128Гб. Мне нужна информация о том как я могу работать с большими дисками (>128Gb) через порты. Во многих статьях что я читал написано такое дело:
М-да! Крутой драйвер написать хочешь Да?
У меня есть книжка "Программирование дисковых подсистем" но там только описана работа работа с винтами до 128 GB.
Это стандарт IDE (до 128 GB). А вот больше это уже наверно Extended IDE или как там его называют.
Не даром win2k бочит винты размером больше 128 GB.У людей разделы внезапно слетают и т.д. Чтоб такого не было там какой-то параметр в реестре прописывают.
В общем нужно порыться на сайтах производителей винтов или...
Здравствуйте, onyx2, Вы писали:
L>>Мне нужна информация о том как я могу работать с большими дисками (>128Gb) через порты.
O>Не даром win2k бочит винты размером больше 128 GB.У людей разделы внезапно слетают и т.д. Чтоб такого не было там какой-то параметр в реестре прописывают. O>В общем нужно порыться на сайтах производителей винтов или...
Рррррр...........!
Апдейты накатывают, иначе реестр не поможет.
И стандарты читать надо. Гугл очень даже рулит в вопросе их поиска. ftp://ftp.t13.org/index.html
И там в ATA/ATAPI стандартнах все описано. Нашару.
Предельно просто. В регистры заносится сначала старшая часть адреса, а потом — младшая.
убедительная просьба следить за объемом цитирования — модератор
... << RSDN@Home 1.2.0 alpha rev. 648>>
Valery A. Boronin, RSDN Team, linkedin.com\in\boronin
R&D Mgmt & Security. AppSec & SDL. Data Protection and Systems Programming. FDE, DLP, Incident Management. Windows Filesystems and Drivers.
L>Прошу прощения, не точно выразился. Для LBA28 ограничение в 128Гб. Мне нужна информация о том как я могу работать с большими дисками (>128Gb) через порты. Во многих статьях что я читал написано такое дело:
L>
L>Номер порта CHS LBA Read Write
L>1F0h (170h) Порт данных Порт данных
L>1F1h (171h) Порт ошибок Порт свойств
L>1F2h (172h) Счетчик секторов Счетчик секторов
L>1F3h (173h) Номер сектора Адрес 0-7
L>1F4h (174h) Цилиндр [0:7] Адрес 8-15
L>1F5h (175h) Цилиндр [8:15] Адрес 16-23
L>1F6h (176h) Номер головки и устройства Адрес 24-27, устройство
L>1F7h (177h) Регистр состояния Регистр команды
L>3F6h (376h) Регистр состояния Управление
L>
L>Из этого следует что максимальный LBA адрес сектора задаётся 28-р числом. Однако я слышал о LBA48. Подскажите, что это такое и с чем его едят.
Для использования LBA48 есть дополнительные команды READ_DMA_EXT (0x25), WRITE_DMA_EXT (0x35), FLUSH_CACHE_EXT (0xEA) и т.п. Нужно пользоватся ими. Но это ещё не всё. Запись LBA в соответствующие порты производится почти также, но в два захода — сначала старшие биты адреса, а потом младшие. Подробности должны быть в документации по ATA-6, я их уже не могу вспомнить сходу.