Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
Очень такие простые баги в драйвере 01.08.06 13:52 Число просмотров: 5179
Автор: Killer{R} <Dmitry> Статус: Elderman Отредактировано 01.08.06 14:01 Количество правок: 4
|
Например разработчики очень легко могли не юзать спинлоки положившись на выский IRQL. Такой драйвер будет прекраснейшим образом работать на однопроцессорной системе и глючить как только появится второй процессор который будет исполнять несинхронизированный код на том же IRQL.. Думаю большинство ширпотребных драйверов написанных до появленния НТ не писалось с учетом того что они будут работать на мультипроцессорной системе. А на НТ, как массовой МР системе, стали вылезать баги. А ламеры стали гнать на НТ.
А если еще добавить специфику написания драйверов корректно работающих с PAE, за учетом того что массовый РАЕ появился недавно и как правило системы поддерживающие РАЕ еще и с НТ...
Аналогичные баги с синхронизацией могут быть и не в драйверах а в обычных программах. Разница лишь в том что драйвер может быть таким что на однопроцессорной системе работает нормально а на МР - глючит. А программа с кривой синхронизацией будет падать и на однопроцессорной сситеме и на МР. Но на МР в 1000 раз чаще. Это не значит что МР (и НТ как кастрированный подвид МР) хуже. Просто под МР лучше проявляются баги, появившиеся изза того что программеры писал код "лишь бы работало", а не так как надо.
|
|
|