драйвер 5 100 245 200 для broadcom скачать скачать драйвера принтера canon драйвера для принтера canon i sensys lbp3010b скачать бесплатно скачать драйвер hp 1120 mfp для windows 7 Welcome to Windows 7 Forums. Our forum is dedicated to helping you find support and solutions for any problems regarding your Windows 7 PC be it Dell, HP, Acer, Asus or a custom build. We also provide an extensive Windows 7 tutorial section that covers a wide range of tips and tricks. Windows 7: standard AHCI 1.0 serial ATA controller download??where standard AHCI 1.0 serial ATA controller download??where driver updater asked me to update this driver standard AHCI 1.0 serial ATA i cannot do it using the software coz my internet connection is, i want to download it can i get this driver?sumone please help? after driver at the device manager still using the older to update??? after driver at the device manager still using the older to update??? I have the same AHCI driver - it is fine. CPU P97002.8GHz 1066MHz FSB Monitors Displays 13.1 WXGA after driver at the device manager still using the older to update??? I have the same AHCI driver - it is fine. after driver at the device manager still using the older to update??? I have the same AHCI driver - it is fine. That is the default driver - either that or the AMD version is working here. CPU P97002.8GHz 1066MHz FSB Monitors Displays 13.1 WXGA correct me if Im wrong anyone and I probably am - again! Hi, Just did a fresh install of Win7 64 bit Home with the help of a Microsoft Tech. The pc seems to be working fine and still doing tons of windows updates. When I went to check my device manager I saw the yellow icon in Other devices serial Ata controller. I tried updating the driver and I Have Problem With This But I Not Connect Any Device Except My Mouse, Headset Xbox Controller What is This? Driver update program says new driver available 1.0. Any issues regarding updating this driver. No problems needed. Dell Inspirion laptop Win 7 Home Prem. 64bit 4gb ram done a clean install retail Windows 7 Home Premium OS and have not been able to locate driver for the above. I used the disc which came with the computer for drivers etc and managed to install everything that was showing driver needed except for this. I have not used any USB I had to change the motherboard to another brand and restored an image from the older Windows7 installation which used AHCI. I can boot using IDE in the BIOS and I noticed that the standard ahci 1.0 serial ata controller is missing in the device manager. The registry for is fine hey everyone im new. ive searched around and could not find the drivers for these two, Intel ICH8M 3 port Serial ATA Storage Controller - 2828 - need version 9.1.1.1016 Intel ICH8M Ultra ATA Storage Controllers - 2850 - need version 9.1.1.1016 i also looked at the intel site Windows 7 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. Windows 7 and related materials are trademarks of Microsoft Corp. Здравствуйте, Уважаемый посетитель нашего сайта! Как нам известно до недавнего времени разработчики жестких дисков искали различные пути увеличения производительности дисковой подсистемы, которая оставалась относительно медленной, а прогресс в среде накопителей заключался, в основном, в росте объема HDD. С появлением нового интерфейса и стандарта SATA, нам стали доступны некоторые новые технологии для ускорения дисковой подсистемы. Основных технологии, которые стали доступны, три: Hot Plug - горячая замена и установка накопителя. Позволяет удалять накопители на лету, не выключая компьютер, хотя для этого, необходимо использовать их программное отключение. Может быть интересна тем кто использует более одного накопителя, как быстрое подключениеотключение файловых или медиа хранилищ. NCQ - Native Command Queuing нативная поддержка очереди команд. NCQ повышает быстродействие механических жестких дисков, а в добавок существенно ускоряет SSD, которые очень хорошо справляются с глубокой очередью команд. TRIM - эта технология очень сейчас актуальна для новых SSD дисков. Она значительно увеличивает быстродействие и продлевает срок эксплуатации SSD. Так вот, чтобы задействовать все возможности интерфейса SATA, дисков HDD и SSD, а точнее получить прирост в скорости обработки команд дисковой подсистемой, нужно чтобы SATA-контроллер работал в режиме AHCI. AHCI - это сокращение от Advanced Host Controller Interface. Перевод SATA - контроллера в режим AHCI производится непосредственно до установки Windows 7. Если же этого не сделать, то при попытке перевести контроллер в режим AHCI на установленной ОС, мы получим невозможность загрузки Windows 7. Перед установкой операционной системы, перевод контроллера в режим AHCI производится в настройках BIOS, а точнее в настройках SATA Configuration. Заходим в BIOS, до загрузки системы многократным нажатием кнопки DELETE или F2, и переходим на вкладку Advanced/SATA Configuration и выставляем режим работы контроллера AHCI, в ASUS EFI BIOS Затем сохраняем настройки нажав F10. Если операционная система уже установлена, то перевести контроллер в режим AHCI можно следующим способом. На запущенной Windows 7 закрываем все работающие приложения и программы. Откроется реестр для редактирования. Переходим по пути HKEYLOCALMACHINESystemCurrentControlSetservicesmsahci. Сохраняем настройки и перезагружаем компьютер. Во время перезагрузки заходим в BIOS и меняем режим работы SATA-контроллера на AHCI. Затем производим повторную установку SATA-драйвера нашей материнской платы или ноутбука. Если всё выполнено правильно, то система оповестит о том, что найдено новое оборудование и произведёт его установку. Так что, использование новых возможностей SATA-интерфейса в режиме AHCI даст нам важные преимущества: Возможность горячей замены накопителей; Увеличение производительности дисковой подсистемы от технологии NCQ; Возможность полноценно использовать пропускную способность SATA III 6Gb/s; Очень важную поддержку команд TRIM. Так как TRIM работает только в режиме AHCI. Понравился материал - добавьте наш сайт в закладки! Публикацию посмотрели 122032 раза и написали 7 комментариев. А как произвести установку родного материнского драйвера? У меня материнская плата asus M3N78-VM. Диска с драйверами нет, скачал с сайта asus ACHI драйвера, а как их поставить на win 7? Помогите пожалуйста Спасибо за статью, Seryy! Все нормально включилось. Теперь не было зависания системы. Драйверы сами установились. Стандартный контроллер AHCI 1.0 Serial ATA появился в оборудовании. Пришлось заново отключить кэширование SSD остальные настройки не изменились. Индекс производительности Windows7 для диска увеличился с 7, 6 до 7, 9!!! Я рад что вам эта информация помогла. Стандартный - это windows-кий драйвер. Вам обязательно нужно установитьпереустановить родной от мат. платы, т.е. драйвер чипсета. Установку можно провести вручную, т.е. из диспетчера устройств, в разделе IDE ATA/ATAPI контролеры нажать обновить драйвера - вручную и указать папку где вы скачали и распаковали драйверы AHCI, система должна обновить. Или найти в скачанном архиве папку Make Disk запустить exe файл, вставить чистый диск в привод и создать диск с драйверами. Спасибо за помощь Вот только оценка работоспособности системы с дисками осталась прежней 5.9 Странный этот ACHI Может нужно еще и RAID обновить. правда я не знаю. что это Без SSD диска оценка Windows выше 5, 9 не поднимется никак. На обычном HDD это предел. При включении ACHI, вашему диску стало легче работать, но не настолько, чтобы повысить оценку. Не заморачивайтесь этими оценками, они не несут никакой пользы. Мужики вы классный сайт замутили, для себя узнал много полезного, начал читать статьи и не мог остановиться! Вам бы ещё свой магазин открыть по продаже и сборке компов, а то порой приходишь в магазины и понимаешь, что продавцы знают ещё меньше тебя:- Парни можете в скайп позвонить? объяснить что да как, просто у меня в реестре стоит значение 0 и в биосе стоит значение ahci, а в диспетчере устройств саты нет что не так?? Все сделал, четко установились драйверы, производительность везде осталась прежней, у HDD 5, 9 остальные выше 7, 4 до 7, 8. Окна, папки стали открываться медленнее, обычно мгновенно открываются, ОЗУ 16 Гб, 1600, DDR 3. Может такое быть или мне показалось у меня две графические программы стоит? Спасибо. У меня при переключении в режим AHCI в БИОСе, win7 при установке не видит диск SSD. При отключении AHCI - все норм. Как победить эту беду не подскажете? У меня при переключении в режим AHCI в БИОСе, win7 при установке не видит диск SSD. При отключении AHCI - все норм. Как победить эту беду не подскажете? Укажите модель мат платы и SSD. К какому порту вы подключаете SSD? Попробуйте обновить БИОС мат. платы на самый новый, также обновить прошивку SSD если установленная не самая последняя. Для обычного HDD оценка в 5, 9 является максимальной, выше можно получить только установив SSD: AHCI не увеличивает скорость чтения/записи HDD, а оптимизирует алгоритм работы, алгоритм очерёдности команд.//Может такое быть или мне показалось у меня две графические программы стоит?//Какие именно прогаммы?? Уточните. Прописал в реестре 0 вместо 3-йки перегруз, включение ACHI итог BSOD Кроме того что изменить в реестре 3 на 0, также, во время перезагрузки, нужно зайти в настройки BIOS в раздел SATA Configuration SATA Mode и выставить там режим работы ACHI, затем сохранить нажав F10. в биосе тоже надо настроить achi. Правильно, первым делом прописываем в реестре 0 вместо 3, затем отправляем на перезагрузку компьютер и сразу заходим в настройки BIOS и выставляем режим работы SATA-контроллера как ACHI, сохраняем настройки через F10 и завершаем перезагрузку компьютера. Хорошая статья!! Стоит SSD 120gb под винду, раньше оценка на семерке показывала 7.3, а теперь стала 7.9, винда грузиться ещё быстрее. А прочитал последние абзацы, значит нужно Здравствуйте! Проблема такая - выставляю режим AHCI, устанавливаю систему на SSD kingston 120gb, делаю настройку и оптимизацию твердотельника, далее всё летает, видит и SSD в разъёме SATA3 и HDD в разъёме SATA2, оценка 7, 9. НО! после установки драйверов мат. платы P8h77-V система перезагружается и синий экран 0x0000007B Явно Я упускаю что-то важное, подскажите пожалуйста решение! Заранее спасибо. AHCI В восьмерке по умолчанию оно AHCI само определяется, у ССД дисков по крайней мере на новых материках. Если не знаете, не лезьте в биос. Это не на производительность влияет! Если у вас ССД, и вы ему педали программно не разбираясь в этом, никак не прикрутите, чтоб он летал как ракета. Это по большей степени для долгой жизни его. Чтоб WINDOWS не снашивала ячейки в Всё сделал, как в статье, после перезагруза дрова встали сами! До этого никак не хотел загружать с ACHI.Понимал, что дело в дровах на SATA, но как сделать не знал! Простейший способ! СПАСИБО!!! Все мы знаем что узким местом в скорости запуска и работы ноутбука является жёсткий диск, т.е. HDD. Производители пытаются ускорить процесс запуска методом использования гибернации, спящего Кто первый раз сталкивается с установкой SSD на компьютер, очень часто задают вопрос как прикрепить SSD, ведь в большинстве моделей корпусов системного блока отсутствуют для него На новых материнских платах компании ASUS серии P8P67 установлен новый интерфейс вместо традиционного БИОСа графический интерфейс Extensible Firmware Interface EFI и переводится, как Зарегистрирован: 18.11.2012 Спасибо за статью, Seryy! Все нормально включилось. Теперь не было зависания системы. Драйверы сами установились. Стандартный контроллер AHCI 1.0 Serial ATA появился в оборудовании. Пришлось заново отключить кэширование SSD остальные настройки не изменились. Индекс производительности Windows7 для диска увеличился с 7, 6 до 7, 9!!! Зарегистрирован: 2.09.2010 Я рад что вам эта информация помогла. Стандартный - это windows-кий драйвер. Вам обязательно нужно установитьпереустановить родной от мат. платы, т.е. драйвер чипсета. Зарегистрирован: 23.07.2013 А как произвести установку родного материнского драйвера? У меня материнская плата asus M3N78-VM. Диска с драйверами нет, скачал с сайта asus ACHI драйвера, а как их поставить на win 7? Помогите пожалуйста Зарегистрирован: 2.09.2010 Установку можно провести вручную, т.е. из диспетчера устройств, в разделе IDE ATA/ATAPI контролеры нажать обновить драйвера - вручную и указать папку где вы скачали и распаковали драйверы AHCI, система должна обновить. Или найти в скачанном архиве папку Make Disk запустить exe файл, вставить чистый диск в привод и создать диск с драйверами. Зарегистрирован: 23.07.2013 Спасибо за помощь Вот только оценка работоспособности системы с дисками осталась прежней 5.9 Странный этот ACHI Может нужно еще и RAID обновить. правда я не знаю. что это Зарегистрирован: 2.09.2010 Без SSD диска оценка Windows выше 5, 9 не поднимется никак. На обычном HDD это предел. При включении ACHI, вашему диску стало легче работать, но не настолько, чтобы повысить оценку. Не заморачивайтесь этими оценками, они не несут никакой пользы. Зарегистрирован: 12.11.2013 Мужики вы классный сайт замутили, для себя узнал много полезного, начал читать статьи и не мог остановиться! Вам бы ещё свой магазин открыть по продаже и сборке компов, а то порой приходишь в магазины и понимаешь, что продавцы знают ещё меньше тебя:- Парни можете в скайп позвонить? объяснить что да как, просто у меня в реестре стоит значение 0 и в биосе стоит значение ahci, а в диспетчере устройств саты нет что не так?? Зарегистрирован: 11.08.2014 У меня при переключении в режим AHCI в БИОСе, win7 при установке не видит диск SSD. При отключении AHCI - все норм. Как победить эту беду не подскажете? Зарегистрирован: 2.09.2010 У меня при переключении в режим AHCI в БИОСе, win7 при установке не видит диск SSD. При отключении AHCI - все норм. Как победить эту беду не подскажете? Укажите модель мат платы и SSD. К какому порту вы подключаете SSD? Попробуйте обновить БИОС мат. платы на самый новый, также обновить прошивку SSD если установленная не самая последняя. Все сделал, четко установились драйверы, производительность везде осталась прежней, у HDD 5, 9 остальные выше 7, 4 до 7, 8. Окна, папки стали открываться медленнее, обычно мгновенно открываются, ОЗУ 16 Гб, 1600, DDR 3. Может такое быть или мне показалось у меня две графические программы стоит? Спасибо. Для обычного HDD оценка в 5, 9 является максимальной, выше можно получить только установив SSD: AHCI не увеличивает скорость чтения/записи HDD, а оптимизирует алгоритм работы, алгоритм очерёдности команд.//Может такое быть или мне показалось у меня две графические программы стоит?//Какие именно прогаммы?? Уточните. Прописал в реестре 0 вместо 3-йки перегруз, включение ACHI итог BSOD Зарегистрирован: 2.09.2010 Кроме того что изменить в реестре 3 на 0, также, во время перезагрузки, нужно зайти в настройки BIOS в раздел SATA Configuration SATA Mode и выставить там режим работы ACHI, затем сохранить нажав F10. в биосе тоже надо настроить achi. Правильно, первым делом прописываем в реестре 0 вместо 3, затем отправляем на перезагрузку компьютер и сразу заходим в настройки BIOS и выставляем режим работы SATA-контроллера как ACHI, сохраняем настройки через F10 и завершаем перезагрузку компьютера. А прочитал последние абзацы, значит нужно Зарегистрирован: 3.05.2015 Здравствуйте! Проблема такая - выставляю режим AHCI, устанавливаю систему на SSD kingston 120gb, делаю настройку и оптимизацию твердотельника, далее всё летает, видит и SSD в разъёме SATA3 и HDD в разъёме SATA2, оценка 7, 9. НО! после установки драйверов мат. платы P8h77-V система перезагружается и синий экран 0x0000007B Явно Я упускаю что-то важное, подскажите пожалуйста решение! Заранее спасибо. AHCI В восьмерке по умолчанию оно AHCI само определяется, у ССД дисков по крайней мере на новых материках. Если не знаете, не лезьте в биос. Это не на производительность влияет! Если у вас ССД, и вы ему педали программно не разбираясь в этом, никак не прикрутите, чтоб он летал как ракета. Это по большей степени для долгой жизни его. Чтоб WINDOWS не снашивала ячейки в Хорошая статья!! Стоит SSD 120gb под винду, раньше оценка на семерке показывала 7.3, а теперь стала 7.9, винда грузиться ещё быстрее. Всё сделал, как в статье, после перезагруза дрова встали сами! До этого никак не хотел загружать с ACHI.Понимал, что дело в дровах на SATA, но как сделать не знал! Простейший способ! СПАСИБО!!! Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации. 2010 - 2014 Copyright, На этом сайте Вы найдете практические советы по настройке Windows 7, которые помогут оптимизировать и повысить производительность Вашего компьютера. Узнаете, как подключить два компьютера к Интернету, выбрать хороший бесплатный антивирус и скачать обновления, подберете себе утилиты и программы для Windows 7 необходимые для повседневной работы. Вы собираетесь купить ноутбук или компьютер, но не знаете что выбрать? Мы поможем Вам рассказав о преимуществах и недостатках тех или иных материнских плат, процессоров и т.д. Потратив всего лишь немного времени на нашем сайте, Вы сможете подобрать ноутбук или собрать для себя без труда сбалансированную систему, купить видеокарту для игр или сделать хороший апгрейд компьютера самостоятельно. Ну а если у Вас компьютер уже есть, тогда Вам будут интересны статьи с пошаговыми инструкциями об усовершенствования системы охлаждения процессора или системного блока, уход за ноутбуком и материнской платой, восстановления жестких дисков и многое другое. Портал обо всем электронном, программном и ремонтируемом Вы купили новый винчестер. Конечно, с интерфейсом Serial ATA. И, конечно, много слышали о новой интересной функции, реализованной в последних моделях NCQ. Предвкушая заметный прирост скорости загрузки Windows и программ, а также снижение шума винчестера, вы подключаете винчестер, устанавливаете операционку и Теперь вам потребуется проделать дополнительные манипуляции, чтобы включить поддержку AHCI и установить подходящие драйверы. Иначе технология NCQ, равно как и другие интересные функции, останется незадействованной. Идея, лежащая в основе технологии NCQ Native Command Queuing, уже не раз была реализована в жестких дисках и контроллерах, но не в тех, что применяются в обычных персоналках. Итак, вот какой принцип лежит в основе NCQ. Как известно, жесткий диск работает довольно медленно, по сравнению с другими устройствами ПК ввиду его механической природы. Особенно много времени тратится на перемещение головок между дорожками, на которых расположены запрошенные системой сектора с данными. Чтобы эти перемещения минимизировать, можно применить хорошо известный в информатике метод переупорядочивания очереди команд. В данном случае в качестве критерия перестройки используется расстояние между дорожками, к которым будет производиться доступ. Команды на чтение, поступающие к жесткому диску со стороны системы, выполняются не по порядку, а накапливаются в очереди. Там они меняются местами таким образом, чтобы головка при выполнении соседних запросов смещалась как можно меньше. За счет этого и достигается ускорение. Обычно для иллюстрации эффекта от переупорядочивания приводится классический пример лифт в здании. Представьте, что он перемещается по этажам в том порядке, в каком были нажаты кнопки на панели. Но лифт работает гораздо эффективнее он открывает двери на этажах по ходу движения. Да, некоторым из пассажиров приходится ожидать дольше, но другие попадают на нужный этаж намного быстрее. Собственно, некоторые минусы после приведения примера с лифтом вам стали очевидны. Не все запросы будут выполнены быстрее некоторые могут застрять в очереди, пропуская другие запросы. А появление запроса на запись вообще осложняет обработку очереди команд, так как возможна ситуация нарушения целостности данных. Кроме того, подобная технология даст выгоду только в том случае, если команды винчестеру поступают плотным потоком и намного быстрее, чем он успевает их выполнить. В условиях современных ПК такая ситуация происходит не очень часто в основном в момент загрузки ОС и больших программных пакетов. Поэтому за реализацию технологии NCQ взялись только в последнее время, хотя в серверной среде интеллектуальное переупорядочивание команд применяется давно и успешно. Следует заметить, что возможность изменения порядка команд и обработки очередей заложена и в протоколе интерфейса ATA технология TCQ. И даже есть примеры вполне успешной ее реализации. Но сделано это не очень красиво и удобно. Дело в том, что протокол интерфейса ATA, по которому работают жесткие диски с обычным, параллельным интерфейсом, основан на протоколе работы шины ISA. Процедура инициализации и передачи команды, а также слежение за состоянием и ошибками довольно длительная и сложная процедура, требующая анализа нескольких регистров. Поэтому разработчики решили реализовать поддержку данной технологии в винчестерах, использующих новый интерфейс Serial ATA. Контроллер Serial ATA, согласно требованиям этого стандарта, должен поддерживать, как минимум, два режима работы. Первый режим эмуляции стандартного контроллера ATA Legacy Mode. В этом режиме контроллер полностью повторяет протокол обращения к жесткому диску ATA и, с точки зрения операционной системы и драйверов, не отличается от контроллера параллельного интерфейса. При этом подключенные к нему винчестеры эмулируются либо как устройства Master на отдельном канале, либо, если операционная система не понимает более двух каналов как пары устройств Master и Slave. Этот режим включен по умолчанию, он полностью поддерживается всеми операционными системами и BIOS. Проблема в том, что в режиме эмуляции реализация дополнительных функций Serial ATA частично или полностью невозможна, иначе совместимость с классической реализацией ATA будет нарушена. Поэтому контроллер имеет возможность переключиться в родной Native режим Serial ATA, который не имеет сковывающих его родственных обязательств по отношению к ATA. Протокол AHCI Advanced Host Controller Interface как раз описывает поведение контроллера в режиме Native с точки зрения системы. Он описывает, каким образом контроллер обрабатывает очередь команд, где и как они хранятся, как программист должен помещать команды в очередь и где получать результаты их выполнения. Все условности протокола ATA отброшены, все сложности с манипулированием регистрами и флагами упразднены за ненадобностью. Реализация всех дополнительных функций Serial ATA, включая NCQ, Hot Swap, Port Multiplier, Staggered Spin-Up и т.д., теперь ничем не ограничивается. Native Mode нацелен для работы с операционными системами Windows 2000, XP, Vista, Windows 7. Иначе говоря, функции протокола AHCI работают только в Native Mode Serial ATA. Данный протокол был разработан специальной инициативной группой во главе с Intel. Он является дополнением к стандарту Serial ATA, который, в общем-то, не описывает требования к хост-контроллерам контроллерам со стороны вычислительной системы, к которой подключен винчестер. Вместе с AHCI стандарт Serial ATA является законченным решением для организации дисковой подсистемы в ПК нового поколения. Вместе с тем теряется совместимость с программным обеспечением, не поддерживающим Serial ATA изначально. Работать в двух режимах одновременно контроллер не может. Переключаясь в режим Native, он теряет возможность принимать команды от программного обеспечения, не понимающего протокол AHCI. Напомним, что Windows XP не работает изначально с Serial ATA в Native Mode AHCI, а Vista и Windows 7 его поддерживают. Способ первый, классический. Как и при создании RAID, вы используете установочную дискету, идущую в комплекте с материнской платой или созданную самостоятельно. Начинаете установку Windows, доходите до первой перезагрузки, а когда появляется надпись Press F6 внизу синего экрана, нажимаете F6 и предлагаете дискету. Следует выбрать правильный вариант драйвера и продолжить установку Windows. Впоследствии, когда установка успешно завершится, будет нелишним еще раз установить драйверы и утилиты они позволят проделать некоторые настройки и убедиться, что NCQ включена. Второй способ сложнее, но он позволяет обойтись и без дискеты, и без переустановки Windows. Для этого в BIOS вашего компьютера должна быть возможность отключения AHCI или Native Mode, что в данном случае синонимы. При включенном режиме эмуляции вы проводите установку Windows, а потом устанавливаете драйверы от производителя контроллера чипсета материнской платы. Если они не ставятся автоматически, делаете это вручную. Потом включаете AHCI в BIOS, и система начинает использовать преимущества NCQ. В чипсетах Intel поддержка AHCI появилась еще в серии 915. Правда, только в южных мостах с суффиксами R, M и DH: ICH7R, ICH7M, ICH7DH, ICH7MDH чипсеты серии 945/955/975; Такими мостами комплектуются только ноутбуки на платформе Centrino, начиная со второго поколения, и материнские платы на чипсетах серии 925, 955, Как правило, если AHCI поддерживается, то в BIOS будет соответствующая строчка. В крайнем случае, можно заглянуть в руководство к материнской плате. Вам понадобятся драйверы Intel Matrix Storage, бывшие Intel Application Accelerator, а также установочная дискета к ним. Ее образ можно скачать с сайта Intel. Драйверы с этой дискеты пригодятся и для установки Windows, и для включения AHCI уже после установки. В последнем случае не забудьте обязательно установить Intel INF Update перед тем, как начинать манипуляции с другими драйверами. После того, как драйверы стандартного контроллера Serial ATA будут заменены на драйверы с установочной дискеты Intel, можно включать AHCI. Windows сможет загрузиться, и дальше можно продолжить установку комплекта Matrix Storage без включения AHCI он запускаться откажется. Для контроллеров других производителей процедура аналогичная сначала установка драйверов, потом включение AHCI. Винчестер в данном случае не затрагивается форматировать, перешивать и т.п. ничего не нужно. Пошаговая инструкция для m/b Intel с южными мостами ICH6R, ICH6M, ICH7R, ICH7DH, ICH7M, ICH8R, ICH9R Примечание: ниже речь идет о 32bit версиях Windows. Само собой, драйвер есть и для x64. Найти его просто. Убедитесь, что в BIOS отключен AHCI и не забудьте сделать backup папки Windows. Также советую сделать запасной загрузочный диск. Скачайте и распакуйте, например, в C:DRIVERSWINSATA В случае, если у Вас ICH7M, перейдите к шагу 5 Отредактируйте заменив все DEV27C5 на значения, соответствующие Вашему южному мосту: Нажмите WinR, введите, нажмите Ok В случае Windows XP выберите No, not this time, затем Install from a list or specific location Advanced и в качестве пути укажите C:DRIVERSWINSATA В случае Windows 2000 выберите Search for a suitable driver for my device recommended, затем Specify a location и укажите C:DRIVERSWINSATA для установки Windows XP при включеном AHCI необходимо заблаговременно создать дискету с драйвером AHCI. Всё необходимое для этого имеется на диске, идущим в комплекте с материнской платой. При установке Windows XP SP 2 помещаем дискету с драйвером в устройство чтения FDD. В момент запроса установщика Windows Нажмите F6 для установки специального драйвера SCSI или RAID жмём F6 и из предложенного списка выбираем драйвер AHCI. в том случае, если у Вас нет устройства чтения дискет, либо Windows XP уже установлена в режиме работы SATA IDE можно интегрировать необходимый драйвер прямо в операционной системе. Делается это следующим образом. Заходим в диспетчер устройств и находим в списке IDE ATA/ATAPI контроллеры. Обновляем драйвера для контроллеров по умолчанию их 2. Для этого, выбираем пункт Обновить драйвер Не выполнять поиск. Я сам выберу нужный драйвер. Указываем путь к папке DriversChipsetIntelmakediskDOSF632 на установочном диске к материнской плате. ICH8R/D0/DH SATA AHCI Controller. так для обоих контроллеров!!!. Система попросит перезагрузку выполняем. При перезагрузке в BIOS выбираем режим контроллера AHCI. Как признаются разработчики этой операционной системы в специальном документе , дисковая подсистема всех версий Windows, вышедших до версии Vista, поддерживать AHCI не будет. Объясняют они это наличием особенностей в реализации AHCI производителями разных контроллеров. В будущем в ядре Windows будет реализован новый механизм подключения драйверов Ataport, и в составе драйверов будет идти стандартный минипорт для Native-режима контроллера Serial ATA. А пока, увы, нужно устанавливать специальный драйвер или SCSI-минипорт непосредственно от производителя контроллера. Эта проблема сложнее, чем кажется на первый взгляд. Операционная система Windows устроена таким образом, что при старте она должна обязательно подхватить правильный драйвер для контроллера жестких дисков. Иначе старт прерывается пресловутым синим экраном, избавиться от которого можно только переустановкой системы. Мало того, процесс установки тоже прервется этим же синим экраном, если вовремя не предоставить Windows дискету с нужным драйвером. Владельцам ноутбуков вообще не позавидуешь им и дискету-то вставить некуда, а другие носители Windows в данном случае не принимает. В большинстве случаев, попытка установки ХР в режиме эмуляции приводит в появлению BSOD синего экрана смерти со следующей ошибкой: Как уже было сказано, существует 2 способа установки Windows XP с включенным в BIOS SATA Native Mode: подкидывание драйверов дистрибутиву при загрузке через F6 или модификация операционной системы таким образом, чтобы уже интегрировать нужные драйвера в дистрибутив. В первом случае, поскольку флопика в ноутбуке нет, то единственный выход использовать USB Floppy Drive, который не так уж и дёшев. Интеграция драйверов в дистрибутив более сложна, но экономически более целесообразна. Дистрибутивов сборок с уже интегрированными драйверами достаточно много, достаточно скачать такой из Интернета и записать на болванку. Если же вы не можете найти такую сборку, то остается только интегрировать драйвера самостоятельно в дистрибутив с помощью программы nLite. Например, для платформы Intel с ICH7-ICH8 Intel Во время установки Windows Vista все неиспользуемые драйверы запоминающих устройств отключаются. Это позволяет увеличить скорость запуска операционной системы. При замене драйвера загрузочного диска на драйвер, который был отключен, необходимо включить новый драйвер перед изменением конфигурации SATA в BIOS. Предположим, выполняется установка Windows на компьютер с контроллером, который использует драйвер. Затем пользователь выполняет изменение режима SATA на AHCI. Теперь для диска должен загружаться драйвер Однако прежде чем вносить такие изменения, необходимо включить драйвер. Данная проблема имеет отношение только к загрузочному диску. Если изменение выполняется для диска, который не является загрузочным, данная проблема не возникает. Для устранения неполадок перед изменением режима SATA загрузочного диска включите драйвер AHCI в реестре. Для этого выполните следующие действия: Запустите редактор реестра regedit. На правой панели щелкните правой кнопкой мыши параметр Start в столбце Имя, затем нажмите Изменить. Закройте редактор реестра. Способ профессиональный. Вместо интеграции драйверов в дистрибутив можно попробовать написать файл и положить его в дистрибутив, в котором прописать пути к папкам с дровами. OemPnpDriversPath ;DriversjMicron;DriversATK100;DriversATK110 Пожалуйста, авторизируйтесь. Чтобы сразу найти то, что вам нужно, введите ключевое слово в форму. Стандартный контроллер ahci 1.0 serial ata скачать драйвер Чтобы загрузить Стандартный контроллер ahci 1.0 serial ata скачать драйвер, нужно ввести код, указанный на картинке и нажать СКАЧАТЬ ФАЙЛ. Я решил, что в самом деле ведь волшебницы всемогущи и что моя keygen для eset smart security 4.0.424.0 меня хоть на краю света. Я пошел к отцу и поклялся слепо повиноваться всем приказаниям. Из Туниса мы отправились в Загуан, маленький городок, славившийся кейген корел 14 красных шапочек так называемых фесок. Мне сказали, что неподалеку от города находится своеобразнейшее строение, состоящее из маленького храма и галереи, окружающей скачать кряк для win rarc небольшое озерцо. Из храма бьет струей вода, наполняя озерко. В древности вода из озерка поступала в водопровод и шла по нему в Карфаген. Говорили также, что храм посвящен какому то божеству источника. Я, безумец, вообразил, что это божество моя волшебница. Я отправился к источнику и стал ее изо всех сил призывать. Ответом было только эхо. В Загуане мне сообщили также о дворце духов, скачать crack filerecovery for sd card v1.2 которого можно видеть, углубившись на несколько миль в пустыню. Я пошел и увидел круглое здание, выстроенное в необычайно красивом стиле. На развалинах кряк кис 2010 скачать bookcat скачать русский crack то человек и рисовал. Я спросил его по испански, правда ли, что этот дворец построили духи. Из Загуана мы отправились в Кайруан, прежнюю столиц махди. Это огромный город, с населением в сто тысяч человек, неспокойных и каждую минуту готовых восстать. Мы прожили crack patch лекарство для true image enterprise server 8.0 скачать целый год. Из Кайруана переехали в Гадамес, маленькое insaniquarium deluxe кряк скачать государство, составлявшее часть Белед эль Джери, то есть страны фиников. Так называется местность, протянувшаяся между горным хребтом Атласа и песчаной пустыней Сахарой. А вечером пошел к шейху и попросил его рассказывать дальше, и он приступил к делу. ПРОДОЛЖЕНИЕ ИСТОРИИ ШЕЙХА ГОМЕЛЕСОВ Я тебе сказал, что получил от отца письмо, из которого узнал, что моя волшебница простая смертная. Я был в это время в Гадамесе. Сид Ахмед переехал со мной в Фесан, страну большую Гадамеса, но не столь плодородную и населенную чернокожими. Оттуда мы направились в Оазис Аммона, где должны были ждать вестей из Египта. Через две недели наши посланцы вернулись с восемью дромадерами. Поступь этих животных невыносима, однако пришлось ее выдерживать восемь часов подряд. Финиковые пальмы так обильно heroes of might and magic 5 nocd 1.6 там, что одно дерево может прокормить круглый год человека умеренного, а тамошний народ состоит из таких людей. Однако и в других видах пищи нет недостатка, там есть зерновой злак, называемый дурро, и также бараны на длинных ногах и без шерсти, мясо которых превосходного качества. В Гадамесе мы увидели большое количество мавров родом из Испании. Я понял, что моя волшебница была такая же смертная, как я, и эта мысль немного успокоила мое воображение. HDD - AHCI, или как использовать преимущества Serial ATA AHCI, или как использовать преимущества Serial ATA Вы купили новый винчестер. Конечно, с интерфейсом Serial ATA. И, конечно, много слышали о новой интересной функции, реализованной в последних моделях - NCQ. Предвкушая заметный прирост скорости загрузки Windows и программ, а также снижение шума винчестера, вы подключаете винчестер, устанавливаете операционку Теперь вам потребуется проделать дополнительные манипуляции, чтобы включить поддержку AHCI и установить подходящие драйверы. Иначе технология NCQ, равно как и другие интересные функции, останется незадействованной. Идея, лежащая в основе технологии NCQ Native Command Queuing, уже не раз была реализована в жестких дисках и контроллерах, но не в тех, что применяются в обычных персоналках. Итак, вот какой принцип лежит в основе NCQ. Как известно, жесткий диск работает довольно медленно, по сравнению с другими устройствами ПК ввиду его механической природы. Особенно много времени тратится на перемещение головок между дорожками, на которых расположены запрошенные системой сектора с данными. Чтобы эти перемещения минимизировать, можно применить хорошо известный в информатике метод переупорядочивания очереди команд. В данном случае в качестве критерия перестройки используется расстояние между дорожками, к которым будет производиться доступ. Команды на чтение, поступающие к жесткому диску со стороны системы, выполняются не по порядку, а накапливаются в очереди. Там они меняются местами таким образом, чтобы головка при выполнении соседних запросов смещалась как можно меньше. За счет этого и достигается ускорение. Обычно для иллюстрации эффекта от переупорядочивания приводится классический пример - лифт в здании. Представьте, что он перемещается по этажам в том порядке, в каком были нажаты кнопки на панели. Но лифт работает гораздо эффективнее - он открывает двери на этажах по ходу движения. Да, некоторым из пассажиров приходится ожидать дольше, но другие попадают на нужный этаж намного быстрее. Собственно, некоторые минусы после приведения примера с лифтом вам стали очевидны. Не все запросы будут выполнены быстрее - некоторые могут застрять в очереди, пропуская другие запросы. А появление запроса на запись вообще осложняет обработку очереди команд, так как возможна ситуация нарушения целостности данных. Кроме того, подобная технология даст выгоду только в том случае, если команды винчестеру поступают плотным потоком и намного быстрее, чем он успевает их выполнить. В условиях современных ПК такая ситуация происходит не очень часто - в основном в момент загрузки ОС и больших программных пакетов. Поэтому за реализацию технологии NCQ взялись только в последнее время, хотя в серверной среде интеллектуальное переупорядочивание команд применяется давно и успешно. Следует заметить, что возможность изменения порядка команд и обработки очередей заложена и в протоколе интерфейса ATA технология TCQ. И даже есть примеры вполне успешной ее реализации. Но сделано это не очень красиво и удобно. Дело в том, что протокол интерфейса ATA, по которому работают жесткие диски с обычным, параллельным интерфейсом, основан на протоколе работы шины ISA. Процедура инициализации и передачи команды, а также слежение за состоянием и ошибками - довольно длительная и сложная процедура, требующая анализа нескольких регистров. Поэтому разработчики решили реализовать поддержку данной технологии в винчестерах, использующих новый интерфейс - Serial ATA. Контроллер Serial ATA, согласно требованиям этого стандарта, должен поддерживать, как минимум, два режима работы. Первый - режим эмуляции стандартного контроллера ATA. В этом режиме контроллер полностью повторяет протокол обращения к жесткому диску ATA и, с точки зрения операционной системы и драйверов, не отличается от контроллера параллельного интерфейса. При этом подключенные к нему винчестеры эмулируются либо как устройства Master на отдельном канале, либо, если операционная система не понимает более двух каналов - как пары устройств Master и Slave. Этот режим включен по умолчанию, он полностью поддерживается всеми операционными системами и BIOS. Проблема в том, что в режиме эмуляции реализация дополнительных функций Serial ATA частично или полностью невозможна, иначе совместимость с классической реализацией ATA будет нарушена. Поэтому контроллер имеет возможность переключиться в родной Native режим Serial ATA, который не имеет сковывающих его родственных обязательств по отношению к ATA. Протокол AHCI Advanced Host Controller Interface как раз описывает поведение контроллера в режиме Native с точки зрения системы. Он описывает, каким образом контроллер обрабатывает очередь команд, где и как они хранятся, как программист должен помещать команды в очередь и где получать результаты их выполнения. Все условности протокола ATA отброшены, все сложности с манипулированием регистрами и флагами упразднены за ненадобностью. Реализация всех дополнительных функций Serial ATA, включая NCQ, Hot Swap, Port Multiplier, Staggered Spin-Up и т.д., теперь ничем не ограничивается. Данный протокол был разработан специальной инициативной группой во главе с Intel. Он является дополнением к стандарту Serial ATA, который, в общем-то, не описывает требования к хост-контроллерам контроллерам со стороны вычислительной системы, к которой подключен винчестер. Вместе с AHCI стандарт Serial ATA является законченным решением для организации дисковой подсистемы в ПК нового поколения. Вместе с тем теряется совместимость с программным обеспечением, не поддерживающим Serial ATA изначально. Работать в двух режимах одновременно контроллер не может. Переключаясь в режим Native, он теряет возможность принимать команды от программного обеспечения, не понимающего протокол AHCI. Таким программным обеспечением, как ни странно или что неудивительно, является операционная система Windows. Как признаются разработчики этой операционной системы в специальном документе , дисковая подсистема всех версий Windows, вышедших до версии Vista, поддерживать AHCI не будет. Объясняют они это наличием особенностей в реализации AHCI производителями разных контроллеров. В будущем в ядре Windows будет реализован новый механизм подключения драйверов - Ataport, и в составе драйверов будет идти стандартный минипорт для Native-режима контроллера Serial ATA. А пока, увы, нужно устанавливать специальный драйвер или SCSI-минипорт непосредственно от производителя контроллера. Эта проблема сложнее, чем кажется на первый взгляд. Операционная система Windows устроена таким образом, что при старте она должна обязательно подхватить правильный драйвер для контроллера жестких дисков. Иначе старт прерывается пресловутым синим экраном, избавиться от которого можно только переустановкой системы. Мало того, процесс установки тоже прервется этим же синим экраном, если вовремя не предоставить Windows дискету с нужным драйвером. Владельцам ноутбуков вообще не позавидуешь - им и дискету-то вставить некуда, а другие носители Windows в данном случае не принимает. Способ первый, классический. Как и при создании RAID, вы используете установочную дискету, идущую в комплекте с материнской платой или созданную самостоятельно. Начинаете установку Windows, доходите до первой перезагрузки, а когда появляется надпись Press внизу синего экрана, нажимаете F6 и предлагаете дискету. Следует выбрать правильный вариант драйвера и продолжить установку Windows. Впоследствии, когда установка успешно завершится, будет нелишним еще раз установить драйверы и утилиты - они позволят проделать некоторые настройки и убедиться, что NCQ включена. Второй способ сложнее, но он позволяет обойтись и без дискеты, и без переустановки Windows. Для этого в BIOS вашего компьютера должна быть возможность отключения AHCI или Native Mode, что в данном случае синонимы. При включенном режиме эмуляции вы проводите установку Windows, а потом устанавливаете драйверы от производителя контроллера чипсета материнской платы. Если они не ставятся автоматически, делаете это вручную. Потом включаете AHCI в BIOS, и система начинает использовать преимущества NCQ. В чипсетах Intel поддержка AHCI появилась еще в серии 915. Правда, только в южных мостах с суффиксами R, M и DH: ICH6R, ICH6M - чипсеты серии 915/925; ICH7R, ICH7M, ICH7DH, ICH7MDH - чипсеты серии 945/955/975; Такими мостами комплектуются только ноутбуки на платформе Centrino, начиная со второго поколения, и дорогие материнские платы на старших чипсетах серии - 925, 955, 975. Как правило, если AHCI поддерживается, то в BIOS будет соответствующая строчка. В крайнем случае, можно заглянуть в руководство к материнской плате. Вам понадобятся драйверы Intel Matrix Storage, бывшие Intel Application Accelerator, а также установочная дискета к ним. Ее образ можно скачать с сайта Intel. Драйверы с этой дискеты пригодятся и для установки Windows, и для включения AHCI уже после установки. В последнем случае не забудьте обязательно установить Intel INF Update перед тем, как начинать манипуляции с другими драйверами. После того, как драйверы стандартного контроллера Serial ATA будут заменены на драйверы с установочной дискеты Intel, можно включать AHCI. Windows сможет загрузиться, и дальше можно продолжить установку комплекта Matrix Storage - без включения AHCI он запускаться откажется. Для контроллеров других производителей процедура аналогичная - сначала установка драйверов, потом включение AHCI. Винчестер в данном случае не затрагивается - форматировать, перешивать и т.п. ничего не нужно. установить драйверы и утилиты - они позволят проделать некоторые настройки и убедиться, что NCQ включена Материнка Asus P5LD2 i945. Как узнать включена NCQ или нет? Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. dascon Ты не все понял, NCQ начинает работать при условии, что твой чипсет поддерживает режим AHCI а у тебя он его поддерживает и что он включён. Кроме того если ты сейчас переключишься в этот режим у тебя просто не загрузится Windows. По этому поводу посмотри последний абзац. Мать ASUS P5KDeluxe-AHCI включается и диск SATA SAMSUNG 2504C работает замечательно и NCQ включается с ней.его вообще не слышно в этом случае пропадает DVD-RW который висит на шлейфе IDE причём как из системы так и из BIOS причина мне кажется в контроллере Jmicron но вот что и как с ним сделать-не знаю HDD: Toshiba SSD 256Gb THNSNH256GBST; WD HDD 1Tb WD10EARS-00Y5B1 Прочее: APC Back-UPS RS 1000 Logitech MK260 Logitech c310 Tp-link TL-WR841N Creative Inspire 5.1 Digitall 5700 LG 47LM580T вероятно, ты его IDE-контроллер отключаешь в БИОСе, проверь. В благодарность за помощь нажимаем ссылочку Полезное сообщение внизу этого самого сообщения подробнее. Помните: админ конфеты НЕ ПЬЁТ ; Втом то и дело что драйвера последние стоят, другое дело может надо рэйдовские ставить? может надо рэйдовские ставить? Только если контроллер используется в режиме RAID. Сообщение оказалось полезным? Поблагодарите автора, нажав ссылку Полезное сообщение чуть ниже. Подскажите пожалуйста, что такое режим эмуляции, и ещё: на маме P5GD2-X SATA заработает? Заранее спасибо! Copyright 2000 - 2016, Jelsoft Enterprises Ltd. Universal ATA driver for Windows NT3.51/NT4/2000/XP/2003/Vista/7/ReactOS Зачем и кому нужен такой драйвер? Рассказываю: UniATA имеет смысл поставить, если к новой материнской плате не прилагаются драйвера для вашей старой операционки. Или наоборот - есть старая плата, на которую нужно водрузить новую винду. Конечно, есть стандартные встроенные драйвера, которые наверняка это железо опознают и будут с ним работать. Но В PIO режиме, т.е. 0.5-3 Мб/сек. А UniATA будет работать в DMA или UltraDMA режиме, что существенно иногда даже в 10 раз быстрее. А вот еще одна проблема - новые винты объемом больше 128 Гб LBA-48 или BigLba. В старых операционках их поддержка не предусмотрена вообще, а новые требуют последних Service Packов. Поддержка таких винтов в UniATA встроена. И наконец - ситуация смены материнской платы. Обычно это нетривиальная задача. Если просто сделать замену, драйвера от предыдущей платы не опознают новый IDE контроллер и система не загрузится. Придется возвращать плату назад, принудительно менять драйвера на стандартные, снова менять плату и устанавливать новые. О том, чтобы ходить со своим загрузочным винчестеров к друзьям в гости или на работу можно забыть либо довольствоваться скоростью 0.5-3 Мб/сек. Поскольку UniATA поддерживает большой список контроллеров и в дополнение к списку понимает почти любые стандартные обычные onboard primary/secondary, такая проблема тоже оказывается решенной. UniATA также понимает новые SATA и AHCI контроллеры. Ниже можно почитать более подробный и более технический список полезностей. поддержка жестких дисков объемом больше 128Gb LBA-48, EnableBigLba поддержка жестких дисков объемом больше 2Tb SCSI READ16, WRITE16 поддержка SerialATA SATA, SATA-2, SATA-3 поддержка NT3.51 в т.ч. на i386, NT4, 2000, XP, 2003, 2005, Vista, 7, ReactOS поддержка AHCI rev. 0.95 - 1.30 поддержка большого списка IDE controllers, а также любых других ATA/ATAPI совместимых контроллеров. user-mode утилита atactl для управления ATA/ATAPI устройствами. Можно находу менять режим передачи данных PIO/DMA/UDMA. настройки кеширования, скорости и многого другого в Registry список плохих/ненадежных блоков, чтобы драйвер не мучал диск, а сразу возвращал ошибку Nikolai Vorontsov. Поддержка RAID mirror, stripping, mirrorstripping Поддержка RAID mirror, stripping, mirrorstripping Поддержка Win 9x/ME есть уже частично работающая сборка, спасибо Xeno эмуляция MODE SENSE/MODE SELECT на IDE устройствах винтах для управления кешированием, спящим режимом и т.п. уже в разработке вопрос совместимости DMA/UDMA режима точнее драйвера, сей режим поддерживающего с разнообразными программами записи на CD-R/RW см. CD-R/RW DMA drivers отсутствие user-level средств для работы с IDE устройствами: переключение/просмотр режимов PIO, UDMA, получение характеристик устройства. отсутствие в NT4 поддержки работы с IDE устройствами, подключенными к одному каналу, в различных режимах PIO vs UDMA. желание реализовать command reordering для повышения производительности надеюсь все знают, почему SCSI обходит IDE по производительности на многозадачных системах мысли об организации LBA-based sector cache, естественно, кешировать блоками хотя бы по 64k вечные проблема выбора между возможностью загрузки ОС на любой материнской плате и использованием UDMA. Особенно актуально при необходимости поддерживать парк компьютеров с различным железом, но абсолютно одинаковым софтом пользователи NortonGhosts знают. Особенно актуально стало в w2k, где смена контроллера IDE автоматически ведет к незагружаемости. Кстати, по этому поводу, особенно касательно w2k/XP планируется сделать одно очень существенное изменение. Читать здесь. Поддержка RAID mirror, stripping, mirrorstripping Поддержка NT3.51 уже сделано И еще куча других вещей, смотрите выше, в планах. Обчитавшись спецификаций винтов, ATAPI и ATA/IDE контроллеров и сорцов от NT4 и FreeBSD я нарисовал версию BusMasterv8aok. rartgz 52.1 Kb/60.5 Kb v 0.8a, успешно понявшую все доступные мне контроллеры, а именно: By design, драйвер инициализирует любое PCI устройство, считающее себя IDE Controllerом, а также well-known Mass-storage Controllers: Проверить все это многообразие устройств достаточно трудно. Но некоторые матрицы совместимости к-во проверенных машин можно посмотреть здесь. решены проблемы медленного детекта отсутствующих устройств, особенно на виртуальных машинах. поддержка AHCI контроллеров в режиме совместимости без BAR5. Промежуточная версия, боремся со странными проблемами инициализации некоторых ATAPI устройств на некоторых SATA/AHCI. Общие полезные изменений: оптимизирован алгоритм инициализации ATAPI: если SCSIOPMECHANISMSTATUS вызывает зависание - больше попытки ее использования не предпринимаются. добавлена обработка странных ATAPI устройств, которые не отдают правильную сигнатуру на шине в регистрах WordCount. Исправлена проблема с настройкой DMA на ICH4. Из-за этой ошибки получалась несимметричная скорось передачи в UDMA 5 - 80/16 Мб/с чтение/запись Добавлена обработка параметра реестра Exclude для отдельных каналов Compatible и AHCI контроллеров. Частитчно сделана обработка Exclude для ATA/SATA влияет только на общее количество каналов согласно результирующей битовой маске. Добавлен параметр PortMask для избирательной инициализации каналов AHCI и частично для SATA как Exclude. исправлена поддержка AHCI - зависание на контроллерах, не имеющих legacy регистров управления прерываниями. улучшена обработка ошибок в режиме AHCI. ATAPI команды READCD и READCDMFS могут работать в DMA. Управляется ключем реестра AtapiDmaRawRead. Добавлена корректная поддержка Marvell 9123 AHCI, сообщающего неверное количество каналов 8 вместо реальных 4х. Добавлена экспериментальная поддержка опции BIOS Handoff для AHCI контроллеров. Исправлена ошибка с выпаданием в PIO на SIS 961. Исправлен бесконечный цикл в обработке PIO запросов на IDE устройствах, генерирующих промежуточные прерывания в процессе передачи и устанавливающих статус transfer completed в конце. Проблема была вызвана неправильной отсутствующей обработкой счетчика переденных байтов в этой ветке кода. Переработан код ожидания готовности ATAPI после сброса. В результате устранена задержка, возникающая в случае, если устройство быстро устанавливает и сбрасывает BUSY. Исправлена обработка ошибок при отправке ATAPI команд. Ряд устройств устанавлювают статус ошибки сразу после приема некорректной пакетной команды. В этом случае нельзя запускать DMA, т.к. получим таймаут и reset. С другой стороны, есть устройства, которые не сбрасывают статус ошибки до генерации прерывания о завершении операции. Т.е. если одна команда завершилась с ошибкой, при отправке следующей мы не будем точно знать, была ли она принята устройством. Решение - при появлении бита ERR на стадии отправки команды делать запрос SENSEINFO, который гарантированно отработает и сбросит статус ошибки. После этого можно пытыться отправить следующую команду. Исправлен поддержка Intel ICH7 со специфическим способом обращения к регистрам и их и размещением в SATA режиме. Исправлен поддержка Intel ICH7 со специфическим способом обращения к регистрам и их и размещением в SATA режиме. Сделана более безопасная работа с регистром PCI Command. Прежний код вызывал interrupt storm на некоторых контроллерах Intel Сделана очистка статуса прерывания на стадии опроса устройств. Прежний код также вызывал interrupt storm на некоторых контроллерах Intel. Исправлена работа с SATA ATAPI устройствами, не умеющими обрабатывать сервисные команды кроме READ/WRITE в DMA режиме. добавлен код захвата PCI части Legacy контроллеров. Это предотвращает конфликт с другими драйверами. Т.к. ранее сисетме сообщалось только об ISA ресурсах, для PCI части контроллера мог быть загружен другой драйвер, что приводило к падению или нарушению работоспособности системы. Проверено в NT4 и Win 2003. Исправлен -файл для UniATA virtual communication port. Теперь драйвер опознается и устанавливается автоматически. Исправлен -файл в каталоге для XP, подходит также для 2003. Дело было в том, что %12% не указывает на каталог с драйверами, как это было ранее. Сейчас используется %10% System32drivers. Добавлен -файл для UniATA virtual communication port. Добавлен код активации режима AHCI для случаем, когда это не сделано BIOSом Код сброса контроллера изменен в соответствии с рекомендациями по работе с включенным MSI. При установке скорости передачи проверка максимально возможного режима привязывается к каналу, т.к. существуют контроллеры с физически разными каналами например, PATA и SATA Внесены последние изменения из ReactOS и FreeBSD. реализована экспериментальная эмуляция параметров Immediate, StartStop и PowerCondition в коменде SCSIOPSTARTSTOPUNIT. Используются ATA команды IDLE, SLEEP выключение и STANDBY остановка шпинделя. Возврат из состояния Sleep осуществляется сбросом шины HardReset Исправлен код определения типа PATA шлейфа 80/40 pin для контроллеров VIA и Intel, а также устройств, не поддерживающих HwRes в Identify. В предыдущих версиях случалось необоснованное занижение скорости до UDMA2. Исправлен, унифицирован и дополнен последними фичами код SMART, SCT и ATA PASSTHROUH. Теперь smartmontools работает с UniATA. Добавлены настройки AdvancedPowerMode и AcousticMgmt. По умолчанию применяются минимальное потребление без standby без остановки диска. Окончательно исправлен и унифицирован код отдачи статуса SRBSTATUSDATAOVERRUN в различных ветках отбаботки прерывания. Исправлен баг с ожиданием готовности после ATAPI Soft Reset. На некотором оборудовании BUSY устанавливается спустя некоторое время после команды RESET. Добавлена проверка размера буфера во все IOCTLы UniATA. Исправлен ряд багов с проверкой PATA кабеля на предмет 80-пиновости. Исправлено отображение скорости в atactl, разделены понятия скорости шины и режима работы устройства PIO/DMA Исправлены ошибки с нумерацией физических и логических каналов на контроллерах в Legacy режиме в AtapiChipInit. Исправлен баг с отдачей статуса SRBSTATUSDATAOVERRUN в AHCI ATAPI. В MS Windows системах это делало диск нечитаемым получался неожиданный статус SUCCESS от READ TOC. ReactOS оказалась нечувствительной к этой ошибке. Первые тесты AHCI ATAPI прошли успешно. SATA и AHCI ATAPI теперь не переключаются в PIO-режим для исполнения команд отличных от чтения и записи. Добавлена поддержка эмуляции SCSI-команд READ16/WRITE16/VERIFY16/READCAPACITY16. Это нужно для расширения адресного пространства LBA до 64 бит, что дает возможнлсть работать с дисками более 2Тб, которые используют более 32 бит для LBA. Note: дисковые драйверы верхнего уровня тоже должны поддерживать эту возможность. продолжается работа над поддержкой AHCI ATAPI. Уже не виснет, не падает, но и не работает. немного наведен порядок в коде AHCI. Поправлены ошибки в логике. исправлена ошибка в коде AHCI, касающаяся дисков, использующих LBA28 от 32 до 128Гб. исправлен и улучшен код ожидания готовности устройства после прерывания. исправлен баг с инициализацией UDMA режимов на Intel PATA. Ранее из FreeBSD был перенесен неудачный код. На данный момент эти изменения отменены. Из-за ошибки скорость передачи на ATAPI падала с 18Мб/с до 3Мб/с. исправлен баг с инициализацией ISA без или с нерабочими регистров DMA. исправлен баг с отсутствующей декларацией 2го диапазона портов на ISA. теперь в комплекте с исходниками поставляется со списком всех изменений от версии к версии в т.ч. промежуточные. Thanks to KtP for testing. Сделана поддержка AHCI! thanks to KtP for testing. оптимизирована работа DMA соседние физ. блоки объединяются в 1 дескриптор добавлена подстройка таймингов для старых машин i386 isa и виртуальных машин. в ISR теперь используется BaseStatus вместо AltStatus для предотвращения прерываний. исправлен ряд ошибок, возникающих в случае, если контроллер имеет не более 1 устройства на канале. Промежуточная версия. Исправлены ошибки обращения за пределы выделенной памяти при инициализации ISA контроллеров. Также проявлялос в случае, если Primary или Secondary IDE канал по каким-либо причинам не был инициализирован с поддержкой DMA/BusMaster. Thanks to Caemyr for bug report an testing. Добавлена поддержка новых Intel овский контроллеров Patsburg и Panther Point. Исправлен и список файлов. Также выложена обновленная ветка v0.40 с исправлениями найденных ошибок из v0.41b4. У целой линейки Intel специфический способ общения с SATA регистрами. И как раз для этого случая некорректно отрабатывалось ветвление SATA/PATA. Могло тормозить систему, особенно при работе с ATAPI. Слуайно наткнулся на проблему 128Гб у нового Hitachi 1Tb HDD. При обращении в режиме адресации LBA28 к блокам начиная с LBA 0xfffff80 чуть-чуть не доходя до границы 128Гб операции чтения/записи более 1 сектора вызывали ошибку, хотя граница при этом не пересекалась. Пришлось немного уменьшить размер области, адресуемой в режиме LBA28. Просмотрел ряд bug-reportов в в BugZilla ReactOS и сделал ряд изменений. Исправлена ошибка в работе UDMA2 на контроллерах линейки Intel ICH1/2/3/4/5. Экспериментальные правки в коде автоматического снижения скорости передачи. Код старый, но как оказалось - не совсем работает. Сделан код автоопределение виртуальных машин на основе сканирования PCI шины. Определяются VirtualBox, VMWare, QEmu. См. также ключ реестра VirtualMachineType для принудительной установки типа VM. Проверил на своей машине включение/выключение HDD на ходу по NT4. Работает. Для безопасности процедуры нужно с помощью atactl - h спрятать диск и в течение 20 секунд отключить шлейф данных. После этого на всякий случай выполнить сброс с помощью atactl - r. запустить еще раз Disk Administrator. Предпринята попытка синхронизировать изменения с веткой ReactOS, Revision 50985 В ветке ReactOS в ф-ции AtapiSendCommand исправлена ошибка с ненужным вызовом AtapiEnableInterrupts в случае, если не дождались DRQ. Это гарантировано вызывало зависание в случае, если устройство протормозило с ответом. Т.к. в логах я видел VERIFY VOLUME для CD, а далее - отмена запроса CancelIrp, могу предположить, что зависания при работе с CD связаны именно с этой частью кода. Для управления работой с прерываниями ATAPI в реестр добавлена опция AtapiSendDisableIntr. В реестре сделана настройка таймингов ожидания BUSY и DRQ. Сделана оптимизация под VirtualBox включается ключем VirtualBox в реестре. Устанавливает тайминги и максимаьлно совместимые опции работы с ATAPI CD/DVD устройствами. Сделал объявление ULONGIOPTR 32-битный указатель на I/O порт вместо ULONGPTR. Для ReactOS ULONGIOPTR превращается в ULONGPTR, для NT DDK - в ULONG. Иначе у меня собираться не будет, т.к. ULONGPTR - относительно новый тип, в старых DDK его не было. Добавил явное указание формата вызова NTAPI в объявления ф-ций. Внес изменения, касающиеся типов PCCH, SCHAR, PCWSTR. Внес изменения в CheckDevice. Действительно, потерялся кусок кода Hard Reset. Промежуточная версия, поддержка AHCI пока уперлась в то, что PIO в AHCI работает почти также как и DMA. Нужно писать соответствующий код. Исправлено падение в синий экран при работе с SATA/AHCI контроллерами линеек Intel. Добавлена поддержка контроллеров с разным числом устройств на канале. Такое себе архитектурное изменение. Добавлена поддержка новых SATA/PATA контроллеров ITE, Intel, VIA. Исправлено падение в синий экран при работе с неизвестными контроллерами линеек VIA. Исправлен ряд ошибок в поддержке VIA SATA. Спасибо RoyTam за тестирование и сбор логов. Добавлена поддержка еще ряда новых SATA/PATA контроллеров, в т.ч. Marvell, AMD, ATI, nVidia, VIA. Исправлено падение в синий экран при работе с любыми SATA контрллерами. Исправлен ряд ошибок в поддержке VIA SATA. Исправлен баг повисание в работе с винтами больше 128Гб. Переписан код работы с портами в PIO режиме для повышения производительности. Спасибо KtP. Исправлен ряд ошибок в коде роботы с вирт. коммуникационным устройством. Драйвер эмулирует на каждом канале доп. виртуальное устройство, которое позволяет работать со спрятаными/невидимыми для системы ATA устройствами. Это сделано для обхода ограничений стандартного, который не позволяет обращаться к несуществующим с его точки зрения устройствам. Исправлены ошибки в поддержке PIO на Intel. Исправлена в коде обнаружения контроллеров. Не работыли известные контроллеры, имеющие нестандартные PCI Device Class и SubClass. Исправлена ошибка в тексте подсказки Вместо ключа a было написано c. Исправлена ошибка в поддержке ATAPI устройств, генерирующих отдельное прерывание, сообщающее о готовности принять командный пакет. При наличии таких устройств в системе иногда наблюдались странные повисания при обращении к CD/DVD. Наиболее ярко проявилось на контроллере ICH2 с 2мя приводами на одном канале, причем именно на Release версии. Спасибо KtP за тестирование и сбор логов на этих железках. Реструктурирован каталог с INF-файлами. Теперь для каждой ОС свой каталог, чтобы не путаться. И несколько дополнены сами INFы. Пробуйте. Добавлена опция ReadOnly для ATA устройств. Исправлены падения в синий экран при обращении по неправильных слишком больших адресам устройств. Добавлена экспериментальная поддержка ISA-PNP и PCMCIA контроллеров. Сделана поддержка прятанья устройств. Т.е. устройство становится невидимым, но к нему можно достучаться специальным образом. Например, очень хорошо подойдет для диагностических и восстановительных утилит. Кроме того, так можно реальзовать безопасное подключение и отключение устройств. Сделана возможность перевода жестеого диска в режим только чтение - ReadOnly. Пока только настройками реестра. Исправлен злой глюк в коде поддержки ATI. Вместо сравнения типа контроллера стояло присваивание. В результате управление передавалось не Спасибо ReactOS. Начаты работы по поддержке WDM PnP модели. Т.е. чтобы драйвер работал в 2000 и старше идеологически правильно и не мешал делать hibernate и sleep. Сделана поддержка ISA IDE контроллеров с нестандартными диапазонами портов ввода-вывода и прерываниями. Например, IDE контроллер от карточки ESS-1868. Изменена логика определения типа IDE кабеля 80/40 pin. Теперь по умолчанию принимаается, что контроллер умеет определять тип. Если же не умеет, или мы не знаем как - то в случае ошибок DMA скорость автоматически сбрасывается до UDMA-33. А делать так нужно потому, что многие жесткие диски неправильно отдают информацию о типе кабеля. Они вообще тоже должны были это уметь проверять, но некоторые вместо текужего типа кабеля рассказывают о предпочитаемом: Убраны дублирующиеся куски кода в инициализации контроллеров и отдельных каналов. Еще одно исправление в is anobody home. Касается некоторых винтов с поддержкой LBA48 даже меньших 128Гб. Починил поддержку SATA, которую поломал в предыдущей версии. Оказывается, метод поверки наличия устройства по возможности записи/чтения в регистры винта is anobody home на nForce SATA не работает. Исправлен страшный баг: UniATA пытался перепрограммировать все PCI устройства, относящиеся к классу Storage Controller. Даже если потом оказывалось, что это устройство не относится к поддерживаемым. В результате по непонятным на 1й взгляд причинам страдали всякие Promise RAID, некоторые Card-readers и т.п. В панели управления это выглядело как Resource conflict. Починил! Сделаная грамотная проверка наличия устройства на шине без бессмысленного ожидания заведомо отсутствующей железки. В служебных утилитах называется is anybody home есть кто дома? На SATA контроллерах убран ненужный поиск Slave устройств. Их там нет и быть не может. Только одно Master-устройство. А разветвители во-первых иначе программируются, а во-вторых пока не поддерживаются. В добавлен вывод доп. информации об ATA устройствах по результатам чтения пасспорта командой ATAIDENTIFY. Сделан поиск новых устройств и удаление подключеных из командной строки. Работает во всех версиях Windows, включая NT3.51/NT4. В теории это должно давать возможность горячей замены. Добавлена поддержка списка плохих/ненадежных блоков, чтобы драйвер не мучал диск, а сразу возвращал ошибку by Nikolai Vorontsov. Поправлена поддержка стааарых PIO0 винтов. Thanks to KtP for testing. Поправлена поддержка PIO-xxx винтов, не умеющих переключать режим передачи т.е. работают к примеру только в PIO-2. Добавлена поддержка NT3.51 на i386. Thanks to KtP for testing. В результате перехода на v0.2 в основной ветке наконец-то появилась поддержка NT3.51. Исправлен мега-глюк в работе с контроллерами, у которых порт данных отображем в память. В первыю очередь это коснулось ATI и SII SATA. Машинка просто вешалась при считывании блока данных в PIO-режиме. А без этого даже нельзя узнать, что за устройство перед нами. Исправлен целый ряд мелких глючков, из-за которых на SATA контроллерах с нестандартным размещением управляющих регистров использовался только PIO режим. Изменен порядок инициализации. В более правильную сторону. В наследство от достался код, в котором инициализация происходила на стадии опознавания. И это работало, пока не наткнулся на контроллер, который в ответ на команды инициализации генерирует прерывание, которое некому ловить, т.к. с точки зрения ОС контроллер еще не инициализирован. Привел в порядок код опознавания прерываний, в т.ч. неожиданных. Это особенно актуально для SATA, где прерывание может приходить не только в следствие действий драйвера, а и для оповечения о полезных событиая типа появления/ухода устройства. Поубирал немного лишних кусков кода, а для некоторых сделал правильные условия исполнения. Например, в SATA режиме не нужны некоторые задержки, проверки и команды инициализации. Исправлен глюк с неинициализироваными адресами регистров SATA/SATA-2. Ошибка касалась всех контроллеров кроме NVIDIA. В результате драйвер не находил подключенные устройства, а винда не находила загрузочного диска и говорила INACCESSIBLEBOOTDEVICE. Сделана, но пока еще не проверена, работа в DMA-режиме с 64-битными физическими адресами больше 4Гб на контроллерах, которые этого еще не понимают. Для этого пр инеобходимости выделяется временный буфер в памяти ниже 4Гб. Введена поддержка SATA/SATA-2 для VIA, SII, SIS, INTEL кроме AHCI режима, ATI, NVIDIA, SERVERWORKS, ALI. Это серьезное изменение номер 1. Сделана виртуальная адресация регистров контроллера. Это позволяет очень легко добавлять поддержку контроллеров с нестандартным расположением управляющих регистров. Все SATA не AHCI таковыми являются. Это серьезное изменение номер 0. Теперь драйвер использует спец. библиотеку из комплекта DbgDump, которая позволяет обходить различия API разных версий NT. Сделана поддержка более 2х каналов на одном контроллере. Сделана проверка физ. адресов на 32битность. А то систем с физ. памятью больше 4Гб становится все больше. А контроллеров, умеющих такое пока мало. Не прошло и года, как вышла новая версия: Наконец я сделал представление стандартного 2х-канального контроллера в виде 2х логических устройств в системах Win 2000 и старше. Ранее этот контроллер представлялся как одно устройство с 2мя прерываниями у каждого канала свое. Работало это когда как. Вероятно, в зависимости от фазы луны и высоты над уровнем моря. Это серьезное изменение номер 1. Понял и научился правильно использовать SCSIPORTовое API для отложеной обработки прерываний. Оказалось, что пользоваться стоит только таймером. А и не годятся. Хотя они и понижают IRQL и тем самым дают зеленый свет другим прерываниям, совместное использование их с таймером приводит к повисанию. А ожидание готовности ATAPI устройства - процесс иногда длительный. И лучше применять отложеную обработку по таймеру. Что и было сделано. И никаких больше танцев с бубном: Это серьезное изменение номер 2. Найдена и исправлена страшная ошибка в коде сброса контроллера. Если сброс произошел во время обработки рекурсивного запроса, то сообщение об отмене операции не отправлялось для верхнеуровневого исходного запроса. А это часто происходит при инициализации ATAPI устройств, и как следствие - ставим UniATA и не можем загрузить систему. Исправлен код реинициализации PIO/DMA режима перед передачей ATAPI команд. Как оказалось, не все безобидные на вид команды можно исполнять в DMA режиме. Даже если не требуется передача данных. Поэтому приходится для таких команд переключать устройство в PIO, а потом обратно. В коде установки режимя передачи данных при проверке готовности устройства теперь не проверяется бит IDESTATUSERROR, т.к. он свидетельствует только о том, что предыдущая операция завершилась с ошибкой. Исправлена ошибка с неинициализированной переменной вектор прерывания в коде поиска старых ISA IDE контроллеров. На некоторых системах это приводило к синему экрану. Из кода поиска контроллеров убран опрос подключенных устройств. Для ускорения загрузки ОС. Все равно опрос устройств инициируется системой после того, как мы сообщаем ей об обнаружении контроллера. Это было наследие исходного драйвера, который по задумке разработчиков не должен был инициализировать контроллер при отсутствии ATAPI устройств, вместо него этим должен был заниматься Сейчас же это только тормозит двойная работа все-таки. Оптимизированы функции длительного ожидания готовности устройства. Добавлен сброс DMA контроллера выполняется последовательность действий для завершения DMA операции после сброса контроллера, т.к. иначе в некоторых случаях могут возникать unexpected interrupts при этом устройства возвращают статус IDLE. Улучшена проверка источника прерывания. Во-первых обязательно проверяется BMSTATUSINTR в регистре статуса DMA вне зависимости от того, была ли это PIO или DMA операция. Во вторых, при наличии установленого BMSTATUSINTR игнорируется бит BUSY в регистре статуса IDE устройства, и канал переводится в состояние ожидания готовности устройства. Ранее такая ситуация считалась unexpected interruptом, что не соответствует действительности. Также убрано требование отсутствия BMSTATUSACTIVE при наличии BMSTATUSINTR. В случае ошибок устройства это вполне реальная комбинация и прерывание должно быть обслужено. Улучшен порядок преверки каналов на готовность для многоканальных контроллеров. Теперь в первую очередь проверяются каналы, ожидающие прерывание. Исправлена ошибка с парностью вызовов запрещения/разрешения прерываний при отложеной обработке DPC, Timer DPC. Как правило, обработка откладывается на некоторое время и передается в другой поток с более низким приоритетом если требуется подождать готовности устройства. Реализована возможность исполнения не ATAPI команд в DMA режиме помимо READ/WRITE BLOCK для них это уже давно сделано. Добавлена проверка статуса IDE устройства на 0xff перед отправкой очередной команды. Это значение говорит либо о повисании устройства, либо о его отсутствии. Исправлен ряд ошибок со сменой начального DMA режима и в процессе работы. Где-то забыл флаг DMA операции сбросить, где-то сравнил знаковые числа как беззнаковые и т.п. Мелочи, а из-за них не все работает. Добавлена проверка на готовность устройства с приему команды переключения режима передачи. В сделаны более осмысленные сообщения об ошибках. Исправлена ошибка в коде поддержки семейства nForce. Эти контроллеры отличаются от VIA и AMD тем, что адреса управляющих регистров смещены на 16 байт. В процессе эволюции для этих контроллеров из внутреннего списка поддерживаемых устройств был убран флаг NVIDIA как избыточный все равно ведь можно по VensdorId определить. А вот в том месте, где контроллер программируется, проверка осталась старой по флагу. В результате при подключении устройств на secondary канал контроллер просто вешался от действий драйвера не в те регистры записали. Почему это все работало с primary каналом мне непонятно, Типа чудо: В добавлена возможность определения режима PIO/DMA/UDMA даже при отсутствии драйвера UniATA. Начаты изменения связаные с портированием в NT3.51 спасибо KtP и ReactOS спасибо Root. Добавлена поддержка новых ICH6 и ICH7, а также VIA 6421. Исправлена ошибка в коде поддержки nForce и nForce2. По ошибке для этих контроллеров во внутреннем списке поддерживаемых устройств был установлен флаг AMDBUG. Изменены параметры инициализации timings для семейства HighPoint. Исправлена ошибка в установке логической геометрии для больших дисков. Было 255 секторов, 63 головки, а должно быть наоборот. Добавлена поддержка точнее трансляция в из SCSI в ATA команды SCSIOPMEDIUMREMOVAL для не-ATAPI устройств. Исправлена ошибка в коде поддержки старых жестких дисков, которые на сбрасывают DRQ после окончания передачи данных. Исправлен ряд ошибок в коде инициализации устройств. Там была путаница с наследованием ограничений скорости передачи данных в иерархии дескрипторов controller-channel-device. Улучшен код переключения между режимами PIO/DMA. Исправлена ошибка файле для NT4. UniATA устанавливался как System Bus Extender, а надеялся, что загрузится хотя бы 1 SCSI miniport. В результате система не грузила и не могла найти свой boot device. Спасибо Axxie. Сделал более стандартный метод вычисления логической геометрии. Для лучшей совместимости с предыдущими версиями в Registry settings добавлена возможность указать этот метод вручную. Подробности читайте в описании параметра GeomType. Вместе с Debug версией теперь идет отладочная информация в Кроме того, для тоже автоматически создается при сборке. Исправлен еще ряд ошибок в коде обработки неправильного адреса устройства на шине. Исправлена ошибка в коде проверки правильности адреса на шине. Написал вместо. Как следствие - crash при обращении к несуществующему каналу N2 это тот, что идет после N0 и N1. Расширил Registry settings для управления поддерживаемыми устройствами. Теперь можно отдельно включать/выключать поддержку PCI, ISA, ISA/PCI Compat, MCA. В список устройств добавлено HiNT VXPro II. Правда, мы с ним пока еще не работаем: Note: не устанавливайте Debug версию в Win 2000 и старше без DbgPrint Dump, настроенного следующим образом: Нашел и исправил неинициализированую структуру. Это был DEVICEEXTENSION в который входят перемынные состояний каналов, подключеных устройств и обработчиков прерываний. На большинстве машин, участвовавших в тестировании там изначально были нули. А вот на некоторых достоверно известна только одна машинка, за что спасибо Axxie, память была уже чем-то заполнена. Также поступило интересное сообщение от Mike. У него UniATA работает на ICH4 в NT4sp6a. Полностью переписан код по борьбе с ATAPI устройствами, генерирующими INTR не сбрасывая BSY. Thanks to Root за терпение при тестировании: Исправлена последовательность действий по отправке ATAPI команд. В одном месте не сбрасывался interrupt status, а в другом слишком рано разрешались прерывания. Добавлен сброс interrupt status при сбросе контроллера. На всякий случай. Исправлен глюк тормоза в сбросе кэша винта при shutdownе. Добавлен экспериментальный код взято из свежей FreeBSD для борьбы с ATAPI устройствами, генерирующими INTR не сбрасывая BSY. Thanks to Root Добавлен код для борьбы со следующим глюком в NT4: если первая попытка инициализировать Compatible Mode IDE контроллер заканчивается ошибкой при проверке правильности списка запрошеных ресурсов, не сбрасывается флаг, говорящий о том, что этот контроллер уже инициализирован. В результате вторая попытка не проходит, т.к. драйвер видит, что контроллер уже кем-то занят. Thanks to Vitaliy Vorobyov aka remove X за обнаружение и исправление. Снова выложена специальная Debug-версия с включенными логами. Убрал слишком длинное ожидание готовности устройства в случае возникновения ошибки. Сделал сброс кэша винта при shutdownе. Влил исправление от Root, может теперь глючить перестанет: В добавлена возможность resetа отдельного устройства - ключ -r. Полезно при повисании ATAPI устройств. Также выложен специальная Debug-версия с включенными логами. Note: не устанавливайте эту версию без DbgPrint Dump, настроенного следующим образом: Обнаружил и исправил глюк: в некоторых ситуациях драйвер пытался перепрограммировать режим передачи данных одного из устройств на IDE канале, в то время как второе устройство обрабатывало команду. Это также иногда проявлялось при поступлении новой команды в очередь. Выражался глюк очень просто: система висла намертво. На моей машине устойчиво проявлялось только в очень специфических условиях. Но это при том, что на каждом IDE канале висит только одно устройство. При наличии 2х устройств все могло вылазить еще при загрузке ОС. Похоже, что LBA48 уже работает нормально. А вот Intel ICH4 - все еще нет: сделана утилика , позволяющая получать список IDE, SCSI и RAID контроллеров, а также информацию о подключенных к ним устройствах. Если в системе установлен драйвер UniATA, с помощью можно менять режим передачи данных для произвольного IDE/ATAPI устройства PIO, DMA, UDMA. немного оптимизирован код установки DMA режима для различных контроллеров. В результате удаления дублирующегося кода см. ф-цию AtaSetTransferMode обнаружилось несколько несоответствий режима работы ATA/ATAPI устройства и контроллера. Исправил глюк в поддержке LBA48 - т.е. дисков объемом больше 128Gb. Проблема была в коде определения реального размера винта и смены логической геометрии. Некоторые винты после resetа ограничивают свой размер до 32Gb например мой Seagate Barracuda IV 40 или до 128Gb живых примеров не знаю. И есть команды READNATIVELASTLBA/SETMAXLBA, которыми винт можно перевести в нормальное состояние полный объем. Плюс для винтов 128Gb появились их 48-битные братья. А я и не знал: Получилось, что винт перепрограммировался на 128Gb. Огромное спасибо Александру Спелицину - remove X за тестирование на 160Gb винте да еще и со старым контроллером - i440BX. Исправил глюк в обработке флага UNIATANODPCATAPI - обход глюка с повисанием CMD-649 при подключении некоторых новых CD/DVD-приводов. Уже в который раз переписан код поддержки Intel ICH4. Точнее говоря, я вернул его к тому состоянию, в котором все как будто хорошо работало. Пока ничего не обещаю, посмотрим на результаты тестирования. Пока нет правильной, идеологичной и 100% работы с ScsiPort драйвером, сделан хитрый workaround. А именно - пробуем инициализировать основной Onboard IDE controller 2-мя способами хаки, о которых я писал раньше и жаловался, что на разных машинах по необяснимым причинам одни работают а другие нет. Пока опыт показывает, что хотя бы 1 из них работает. Опять таки - посмотрим. Багфикс в коде распознавания SiS контроллеров. Там вообще интересный алгоритм опознания. Есть 1 PCI IDE Controller c навечно прибитым гвоздями DeviceId/VendorID. И есть еще всякие Bridge Devices, по наличию которых определяется, что это за IDE Controller. Это так как и у VIA. А вот для еще некоторых моделей есть хитрая проверка: У IDE контроллера меняется 1 байт в PCI Config Space и проверяется, не изменился ли у него DeviceID !. Вообще, смена DeviceID на лету - это какой-то бред, но она таки происходит на некоторых SiSах и в частности на Mikeовском. Проблема была в том, что при переносе кода я потерял строчку, которая после проверки восстанавливает этот самый байт. Спасибо Mike у за терпение в тестировании глючных версий и отправку вот таких баг-репортов 181 Kb. Устранено еще несколько ошибок в коде для Intel, Acer и еще каких-то контроллеров. Довольно глупый баг оказался: поставил break в switch/case вместо return. В результате, после успешного перевода контроллера в UDMA режим, вызывался default код для переключения устройства не контроллера! в PIO-0. Улучшена поддержка SiS контроллеров. за что большое спасибо Ivano Guerra. И конечно же, все это предстоит еще проверить на практике. Предлагается на пробу Версия 0.29i3 rartgz - 67.6 Kb/72 Kb. Все в том-же коде поддержки Intel овских контроллеров ICHxxx найден еще баг. Похоже что по моему недосмотру. Приводит к повреждению данных на диске. Так что выход v29i отменяется до устранения. В коде поддержки Intel овских контроллеров найден баг. Баг этот был скопирован из FBSD 5.2.1 и все еще там присутствует. Я внимательно сравнил с очень старой версией и обнаружл, что в 16-битный регистр PCI Config Space 0x54 записывается 32-битное значение 0x10000 Переписан код поддержки Intel овских контроллеров. Надеюсь, то что работало раньше работать не перестанет, а ICH4 - наконец-то заведется. Перетянута поддержка еще целого ряда контроллеров из FBSD 5.2.1. Исправил глюк в device include/exclude registry settings. Сделана поддержка simplex-mode. Это когда IDE каналы работают поочереди. Для некоторых контроллеров этот режим просто необходим. Помимо автоопределения, simplex-mode может быть включен при помощи значения Registry DWORD:ForceSimplex в ключе HKLMSystemCurrentControlSetServicesUniATAParameters или в подключе, специфичном для данного контроллера. Сделана поддержка IDE устройств, отдающих в неактивном состоянии статус 0x40 IDESTATUSDRDY вместо привычных 0x50 IDESTATUSIDLE. Такое нблюдалось в последней версии VMWare 4.5.1 build-7568. Спасибо Виталию за информацию и тестирование. Переписан код балансировки загрузки IDE каналов в simplex-mode и устройств, подключенных к одному канало. Наконец-то разобрался, что за проблемы были при подключении некоторых новых CD/DVD-приводов к контроллерам CMD-64x. Висла винда при загрузке и с моими дровами и XP с MSовскими. Те же самые CD замечательно работали на onboard VIA IDE. Стал разбираться - оказалось виноват код, делающий Reset контроллера после опроса устройств. После этого возможно еще из-за того, что DVD стоял slave, а драйвер перед окончанием инициализации принудительно выбирал master. Убрал - все зажужжало. Этот глючный код был взят из стандартного atapi драйвера еще от NT4, и по всей видимости MS его не меняла в новых виндах. Проверил под XP. Работает, но PNP и как следствие hibernate с UniATA пока несовместимы. В w2k - то же самое. Буду разбираться. Исправлен код для работы с VIA 8235 и VIA 8233A. На сей шаг меня сподвигли дивные глюки, наблюдавшиеся на машинке VIA 8235. Тормозит, и работает с переменным успехом данные то читаются, то нет. Посмотрел последнюю версию ATA дров от FBSD. Там никаких особенностей для этого контроллера. Зато в форумах стоит ругань на глюки с UDMA на VIA 8235. Посмотрел в Linuxе и уведел, что именно для VIA 8235 и VIA 8233A не перепрограммируется регистр PCI 0x4с. Я сделал точно также. Жалко только, что проверить пока не могу. Еще при пересмотре кода увидел, что как-то неправильно не так, как в FBSDшном оригинале вычислялся номер регистра для установки режима на Secondary channel в SiSах. Тоже поправил. Добавлена поддержка кучи новых контроллеров. Особенно это коснулось SiS и Promise. Сделаны device/vendor-specific настройки в Registry. В ключе HKLMSystemCurrentControlSetServicesUniATA можно создавать следующую иерархию ключей с настройками. Paramaters - наиболее глобальные настройки. ParamatersVenVVVV - где VVVV - код производителя см. PCI Dump ParamatersVenVVVVDevDDDD, DDDD - код устройства. См. туда же. ParamatersVenVVVVDevDDDDSlotXXXXXXXX, XXXXXXXX - адрес на шине PCI. По хорошему. нужно было бы сделать удобный Сделаны Include/Exclude опции. Теперь можно создать DWORD значение с именем Include или Exclude в указанных выше ключах для включения/выключения UniATA на определенных контроллерах. Поправил файлики и Успешно добавил UniATA во время установки w2k и поставил ее на винт, подключеный к CMD649 IDE контроллеру. Надо сказать, что w2k сама по себе об этом контроллере ничего не знает. Из этого я сделал вывод, что теперь эти файлы правильные. Enjoy. Исправлен код включения/выключения прерываний раньше работал только для Primary канала. Наконец-то окончательно убрана зависимость поддержки DMA от системного ScsiPort драйвера. Теперь UniATA самостоятельно транслирует виртуальные адреса в физические что необходимо для работы DMA. За счет этого во первых ушла потребность в использховании хакерских методов при инициализации приходилось прикидываться PCI устройством, имея на самом деле ISA интерфейс. А во вторых, ушло копирование данных между DMA буфером и пользовательским. Исправлен код обработки ошибок для ATAPI устройств CD-ROM/RW, etc. На некоторых устройствах после получения ошибки необходимо дождаться установки бита DRQ в регистре статуса. Thanks to Vitaliy Vorobyov aka remove X. Thanks to Vitaliy Vorobyov again, за переписывание INF. файла для NT4. Код, использующий задержки, вынесен из обработчика прерываний ISR в отдельный поток DPC. Исправил код обработки ошибок передачи данных в DMA режиме. Предыдущие версии вешались наглухо в такой ситуации. Как показал эксперимент, проблема состояла в том, что после ошибки необходимо дождаться сигнала готовности от HDD перед повторным исполнение команды. Отдельное спасибо Alex Y. Matiash за сообщение об ошибке. Отключил поддержку Promise и HighPoint RAID по умолчанию, так как RAID мы пока не умеем. Оставил возможность работать с этими контроллерами как с обычными 2-канальными ATA контроллерами. Включаетс ключиком Добавил в дистрибутив утилитку для -файла для w2k, которая сканирует PCI устройства и добавляет в список совместимые, но не вошедшие в список на момент сборки драйвера IDE контроллеры. Исправил глюк при работе DMA на некоторых видах CD-ROMов. Исправлена бага, из-за которой под w2k не работал второй канал onboard контроллеров. Проблема состояла в том, что NT4 позволяла в процессе инициализации обходными путями зарегистрировать 2 PCI устройства, имеющих одинаковые адреса на PCI шине, но использующих разные системные ресурсы порты ввода/выводи и прерывания. В w2k такой фокус не работает, поэтому там создается одно устройство, использующее два прерывания. Добавил поддержку для AdapterControl - включение/выключение контроллера прерываний по желанию операционной системы w2k и старше. Тестирование показало, что функциональность PnP под w2k пока не работает. Основная трудность - для поддержки PnP необходимо создать в Registry и файле список поддерживаемых устройств. Это плохо сочетается с универсальностью. Возможно будут сделаны утилиты, создающиефайл и/или записи в Registry на основе результатов опроса PCI шины. Возможно также придется создать 2 сервиса, использующие один, но в разных режимах: второй в Legacy режиме, который будет подхватывать все остальные контроллеры Оказалось, что работать с onboard контроллерами мешал, который как раз такими контроллерами и занимается. Поэтому я сделал простенький BAT-файл, который копирует, создает необходимые ключи в Registry и отключает загрузку PciIde. Навел порядок в readme файлах. Они теперь есть для w2k и NT4, плюс сохранена старая версия. Все это переехало в каталоги XXXDist. В процессе прикручивания поддержки w2k обнаружил, что даже довольно старые версии работают в этой самой w2k. Но к сожалению только с дополнительными контроллерами. Сейчас думаю, как бы обмануть стандартный для w2k/XP IDE miniport, чтобы он не пыталься работать с onboard Compatible Mode IDE. Добавлена поддержка Acard и nForce2 IDE контроллеров. Исправлены неточности в коде поддержки DMA для Promise IDE. Сделана проверка использования DMA перед обращением к регистрам контроллера. Отключена поддержка DMA для ATAPI устройств на контроллерах ServerWorks. Не работает: Нормально отрабатывается ситуация с поддержкой DWordIO 32bit на тех же оччень старых винтах. Утверждают, что умеют. Пробовал под w2k. Не работает. Добавлен код для правильной работы с некоторыми устройствами Yamaha-CRW2100, имеющими привычку генерировать Unexpected Interrupt в процессе инициализации несколько позже, чем можно было предположить. в добавлен новый target PKG c параметром VER. Например текущая версия вместе с дистрибутивами собиралась так: сделана новая инструкция по инсталяции внутри архива. Исправлена жирная бага, способная ронять машину при исполнении DSC-restrictive commands Таких как SEEK, PLAYCD, immediate LOAD/UNLOAD, etc. Обнаружилась при попытке послушать Audio-CD. Эта же бага могла приводить к неработоспособности сдвоенных контроллеров. Это когда несколько IDE каналов видятся через одно PCI устройство. Только брать ее не надо, она глючная ;. Есть 0.23b BusMasterv23bok. rartgz 148.9 Kb/198.7 Kb, которая хорошая, но я ее еще не Оптимизирован по размеру код инициализации большинства контроллеров. Сделаны независимые очереди команд для Master и Slave устройств. Теперь command reordering осуществляется для каждого конкретного устройства более эффективно. Очередь, из которой выбирается следующая команда определяется по отдельному алгоритму. Пока учитывается только размер очереди, но в ближайшее время я планирую сделать нечто более умное. Исправлен код инициализации VIA - compatible chipsets. Теперь нормально отрабатывается вариант неизвестной версии Revision Id контроллера. Исправлен код инициализации некоторых указателей при поиске контроллеров. Иногда они оказывались Написан человеческий механизм уменьшения скорости передачи при высоком CRC Error-rate. Теперь не падаем сразу в PIO, а плавно снижаем скорость. Если обнаруживается, что ошибок намного меньше в каком-то определенном режиме, устройство окончательно переводится в этот режим и не поднимается выше. Это решает trouble с использованием 40-проводникового кабеля вместо 80 для устройств, понимающих UDMA66, но не устанавливающих бит, соответствующий типу кабеля в IDENTIFYINFORMATION. Опять Ура! Получилась новая версия BusMasterv21dok. rartgz 87.8 Kb/108.2 Kb v 0.21d. Буду очень признателен всем, кто возьмет потестить и расскажет, где оно работает, а где не очень у меня дома - работает. В качестве единственного драйвера для onboard и additional PCI IDE контроллеров. Вместо и прочего. Добавлено DMA/UDMA для ATAPI устройств. Очень поменялась идеология работы с контроллерами, предоставляющими достум к обоим каналам через 1 PCI устройство. При проектировании NT в идеологию не была заложена возможность параллельной работы 2х каналов на 1 устройстве. Пришлось пользоваться обходными путями Создавать дополнительный DeviceObject, который бы во время обслуживания одного канала ловил прерывания от другого и складывал их в очередь. Сделана сортировка запросов при помещении в очередь. Теперь быстрее работает сканирование больших деревьев директорий, даже при параллельном доступе 6.00 минут - 5.30. Пробовал мерять для простого копирования - результаты неустойчивые при более-менее одинаковых условиях. Буду еще эксперементировать с методом сортировки. Собственно запущен DMA engine!!! Поправлен механизм инициализации Primary/Secondary на одном контроллере. Добавлена поддержка Generic DMA Single Word DMA, mode 0 на случай, если другое режимы не инициализируются например на неизвестном типе контроллера. Согласно спецификации, BusMaster должен автоматически переводиться в этот режим после включения питания или resetа. Уменьшено с 5 до 0.05 секунд время ожидания ответа от устройства в обработчике прерывания. Это очень неправильно - блокировать прерыванияпереключение threadов при повисшем устройстве. Особенно учитывая тот факт, что без этого можно и даже, согласно рекомендациям Microsoft, нужно обходиться. Сделан идеологически правильный алгоритм поиска и инициализации устройств. Исправлены баги с инициализацией MasterIde controller это тот, что onboard и обычно работает через ISA-to-PCI bridge. Как оказалось, работать с этим счастьем через PCI шину нельзя. Контроллер виден, но IRQ и IO-range для него не выделены подозреваю, что сделано для какой-то совместимости. Вместо этого следует пользоваться стандартными IRQ/IO-rangres: По дороге обнаружил интересную вещь: некоторые винты в частности мой Seagate Barracuda ATA 4 by default занижают свой размер до 32Gb, что требует использования специальных команд для правильного определения размера см. спецификации, keywordREAD/SET NATIVE MAX LBA Автор: Alter Александр А. Телятников

2015 стандартный контроллер ahci 1 0 serial ata скачать драйвер windows 7

Спасибо за доверие!