Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: 1 [2]  Все   Вниз
  Печать  
Автор Тема: Ситемный драйвер LPT и прерывания...  (Прочитано 53010 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #30 : 07-07-2003 08:18 » 

Цитата: SlavaI
Да, точно , на машине ACPI отключена или ее совсем нет.

 А как ее включить, или сделать чтоб она появилася?

И можно ли это сделать программно (из прилолжения или драйвера)? :?
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #31 : 07-07-2003 10:36 » 

Нет нельзя ее включить если ее нет, так как это должна системная плата поддерживать.
Если же она как-то отключена, то программно включить конечно можно, но знает как это сделать только майкрософт, и после этого нужна перезагрузка, так как ACPI свои фильтры в стеки ставит.
Записан
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #32 : 07-07-2003 10:52 » 

Цитата: SlavaI
Нет нельзя ее включить если ее нет, так как это должна системная плата поддерживать.
Если же она как-то отключена, то программно включить конечно можно, но знает как это сделать только майкрософт, и после этого нужна перезагрузка, так как ACPI свои фильтры в стеки ставит.


 Завтра принесут железяку--проверю будет ли она работать на подобном компутере без ACPI ... :?
Записан
Aleck D.Shadow
Опытный

tr
Offline Offline
Пол: Мужской

« Ответ #33 : 07-07-2003 11:08 » 

А что есть ставить 'свои фильтры в стеки' ?
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #34 : 07-07-2003 12:06 » 

Цитата: Aleck D.Shadow
А что есть ставить 'свои фильтры в стеки' ?


То и означает- если комп с ACPI то в стеках устройств(DEVICE_OBJECT) появляются девайсы, созданные драйвером ACPI, и для многих устройств(можно даже сказать для всех!) стеки начинаются с устройств, управляемых ACPI драйвером - это harddrives, cdrom, ports, pci и многое другое. А также появляются драйверы фильтры в стеках. Задач ACPI драйвера- реакция на коды управления питанием и настроек, поэтому он в каждый стек и лезет, если ACPI на компе нет, то нет и его DEVICE_OBJECT в стеках, а остальные драйвера остаются те же.
Записан
Aleck D.Shadow
Опытный

tr
Offline Offline
Пол: Мужской

« Ответ #35 : 07-07-2003 12:40 » 

Это типа очередь драйверов (т.е. стек), которая что-либо обрабытывает правильно?
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #36 : 07-07-2003 13:00 » 

Цитата

Это типа очередь драйверов (т.е. стек), которая что-либо обрабытывает правильно?


Каждый драйвер в системе создает DEVICE_OBJECT( DevObj), эти DevObj образуют односвязную цепочку(или список но не очередь!) посредством указателя AttachedDevice в DevObj, каждый нижний DevObj имеет указатель на верхний, но не наоборот. Подобная цепочка называется стеком драйверов и образует узел устройства(device node). В device node входит PDO(Physical Device Object), созданный и управляемый драйвером шины(или драйвером перечисляющим устройства- по сути это драйвера шин), верхние и нижние фильтры и FDO(Functional Device Object), созданный драйвером непосредственно управляющим устройством. Причем FDO сам может создать новые PDO и таким образом выступить в роли драйвера шины и породить новые стеки.
 Как пример- диски.
Сначала создается PDO диска драйвером IDE контроллера(atapi.sys), над этим PDO садится FDO диска(создается disk.sys), а между ними фильтр, созданный ACPI.sys, далее Disk.sys перечисляет все разделы на диске и создает для них PDO, над которыми садится FDO созданные ftdisk.sys. То есть выходит два стека. На самом деле DevObj от ftdisk напрямую не садятся над DevObj от Disk.sys, но по сути это так и есть, так как запросы от ftdisk передаются на disk.sys, просто они не связаны указателем AttachedDevice.
Записан
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #37 : 07-07-2003 13:32 » 

Цитата: SlavaI
Нет нельзя ее включить если ее нет, так как это должна системная плата поддерживать.
Если же она как-то отключена, то программно включить конечно можно, но знает как это сделать только майкрософт, и после этого нужна перезагрузка, так как ACPI свои фильтры в стеки ставит.


А как ручками включить ACPI, пускай и с перезагрузкой?
Просто у меня два компа с одинаковыми "мамами", на одном ACPI поддержка есть, на другом--нет. Вот на втором то у меня прерывания и не тикают  Так больше нельзя... .
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #38 : 07-07-2003 13:34 » 

Скорее всего где-то в BIOS, ведь как-то ее отключили.
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #39 : 07-07-2003 13:39 » 

А вобще-то прежде чем подключать ACPI попробуй найти в реестре настройки LPT порта, может в LPTENUM они есть, ведь не зря ACPI отключили, сорее всего из-за проблем с железом.
Записан
SlavaI
Главный специалист

ru
Offline Offline

« Ответ #40 : 07-07-2003 13:55 » 

Вот тут написано про выбор hal при установке винды http://support.microsoft.com/default.aspx?scid=kb;en-us;Q216251#1

А еще hal(от него ACPI зависит) можно в boot.ini менять. Параметр /HAL=.
Записан
Артем
Опытный

nz
Offline Offline
Пол: Мужской
Beware the wolf in sheep's clothing.


« Ответ #41 : 07-07-2003 14:07 » new

Цитата: SlavaI
Вот тут написано про выбор hal при установке винды http://support.microsoft.com/default.aspx?scid=kb;en-us;Q216251#1

А еще hal(от него ACPI зависит) можно в boot.ini менять. Параметр /HAL=.


Спасибо, SlavaI. В моем случае, похоже при установки Винды его выключили.... 8)
Записан
Страниц: 1 [2]  Все   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines