Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

RtlCopyUnicodeString и IRQL


Страницы:   1 2 3

Riply ©   (2008-09-26 11:11:00) 

Здравствуйте !
В описании процедуры RtlCopyUnicodeString MSDN указывает следующее:
Requirements
IRQL: >= DISPATCH_LEVEL


Поясните, пожалуйста, что имеется ввиду ?
Неужели надо понимать буквально ?
(т.е. при IRQL < DISPATCH_LEVEL, с ней нельзя работать)


Городской Шаман   (2008-09-28 06:37:00) [21]


> Игорь Шевченко ©   (27.09.08 21:42) [26]
>
> >  Тоесть приводятся адекватные решения в режиме ядра того
> > что человек привык делать в пользовательском режиме. Так
> > что особо переучиваться даже не нужно будет
>
> В печке место такой книжке.


Видел я драйвера написанные только по DDK причем студентами. У Dlink все драйвера такие. Если установить девайсину от Dlink на компьютер, то как минимум раз в день синий экран гарантирован.

А в книжках автор делится опытом, как все таки правильно применять эти 1024 функции в режиме ядра чтобы не было потом горько и обидно пользователю этих драйверов.

Это тоже самое что Delphi учить по help-у, не прочитав ни одной книжки перед этим. Я так делал. Просмотрел свои программы, которые я писал в самом начале, понял что я похожее повторил в них все антипаттерны. Но они работают, хоть и с глюками.

Так что книга полезна тем что автор делится секретами когда использовать различные паттены, а когда точно нельзя использовать определенные паттерны.


Игорь Шевченко   (2008-09-27 21:42:00) [22]

Городской Шаман   (27.09.08 21:23) [25]


> Там не готовые шаблоны драйверов, а готовые шаблоны различных
> решений для тех кто привык к работе в пользовательском режиме.
>  Тоесть приводятся адекватные решения в режиме ядра того
> что человек привык делать в пользовательском режиме. Так
> что особо переучиваться даже не нужно будет


В печке место такой книжке.


Городской Шаман   (2008-09-27 21:23:00) [23]


> Игорь Шевченко ©   (27.09.08 14:37) [24]
>
> Даже не смешно. Готовых решений там не видно днем с огнем.


Там не готовые шаблоны драйверов, а готовые шаблоны различных решений для тех кто привык к работе в пользовательском режиме. Тоесть приводятся адекватные решения в режиме ядра того что человек привык делать в пользовательском режиме. Так что особо переучиваться даже не нужно будет, ну и пару тонкостей запомнить.

Плохо что в режиме ядра нельзя ООП заюзать, свой менеджер памяти писать придётся, а это долго :(


Игорь Шевченко   (2008-09-27 14:37:00) [24]

Городской Шаман   (27.09.08 02:42) [23]


> проще воспользоваться готовыми шаблонами решений того же
> Солдатова.


Даже не смешно. Готовых решений там не видно днем с огнем.


Городской Шаман   (2008-09-27 02:42:00) [25]


> Игорь Шевченко ©   (26.09.08 23:42) [21]
>
> Для написания драйверов за глаза хватает документации DDK,
>  никаких Солдатовых и Шрайберов не требуется


Хватает. Но когда нужно быстро разобраться в отличиях написания программ между пользовательским режимом и ядром и быстро написать рабочий драйвер (который будет работать в реальной системе) то проще воспользоваться готовыми шаблонами решений того же Солдатова.

Ну а потом можно уже подбирать свой стиль, внимательно читая DDK.

Это раньше люди годами занимались изучение чего-то сложного, а сейчас "встал и сделал" и "это должно было быть сделано вчера"...


Игорь Шевченко   (2008-09-26 23:45:00) [26]


> Если у MS куча багов в ОС, то почему вы считаете что не
> может быть багов в документации.


Да потому что ее читают на несколько порядков больше народу и шлют свои фидбэки. Там на каждой странице есть ссылка: Send feedback to Microsoft - как думаешь, зачем придумана ?
И в том числе по этим фидбэкам в документацию вносятся исправления.


Игорь Шевченко   (2008-09-26 23:42:00) [27]

Городской Шаман   (26.09.08 21:56) [20]


> MSDN писали индусы, а солдатов каждую свою строчку проверил
> на своём опыте.


Строчку "Hello, world" ? Так ее многие проверяли на своем опыте. Не доверяю я книгам русских авторов - это либо переводчики либо последователи Фленова и Архангельского.

Для написания драйверов за глаза хватает документации DDK, никаких Солдатовых и Шрайберов не требуется. Опять же, хорошие и проверенные массой народу драйверы с исходниками и картинками есть у Руссиновича.


Городской Шаман   (2008-09-26 21:56:00) [28]


> Riply ©   (26.09.08 20:11) [18]
>
> > [16] Городской Шаман   (26.09.08 19:37)
> > Если у MS куча багов в ОС, то почему вы считаете что не
> может быть багов в документации.
>
> Я так не считаю. Разумеется есть.
> "Не ошибается только тот, кто ничего не делает" (с) (К сожалению,
>  не помню чья)
> Но если меня спросят: "Где вероятнее встретить ошибку ?


MSDN писали индусы, а солдатов каждую свою строчку проверил на своём опыте.

Хотя, если сравнивать Фленова и MSDN, то вы правы.


Городской Шаман   (2008-09-26 21:54:00) [29]


> Rouse_ ©   (26.09.08 19:42) [17]
>
> Эммм... у меня по крайней мере на сейте всплывающих окон
> с порнухой нет :)
> http://rouse.drkb.ru/books.php#soldatov


У меня тоже нет, так как FireFox.


Riply   (2008-09-26 20:11:00) [30]

> [16] Городской Шаман   (26.09.08 19:37)
> Если у MS куча багов в ОС, то почему вы считаете что не может быть багов в документации.

Я так не считаю. Разумеется есть.
"Не ошибается только тот, кто ничего не делает" (с) (К сожалению, не помню чья)
Но если меня спросят: "Где вероятнее встретить ошибку ?
У Солдатова(ничего против него не имею, просто как пример) или в MSDN ?",
то я думаю, ответ - очевиден :)

P.S.
"Солдатова" скачала. Спасибо.


Rouse_   (2008-09-26 19:42:00) [31]


> Все таки скачайте книгу Солдатова "Программирование драйверов
> Windows"
> http://www.cyberinfo.ru/index.php?newsid=671

Эммм... у меня по крайней мере на сейте всплывающих окон с порнухой нет :)
http://rouse.drkb.ru/books.php#soldatov


Городской Шаман   (2008-09-26 19:37:00) [32]


> Riply ©   (26.09.08 11:11)
>
> Здравствуйте !
> В описании процедуры RtlCopyUnicodeString MSDN указывает
> следующее:
> Requirements
> IRQL: >= DISPATCH_LEVEL


Если у MS куча багов в ОС, то почему вы считаете что не может быть багов в документации.

Все таки скачайте книгу Солдатова "Программирование драйверов Windows"
http://www.cyberinfo.ru/index.php?newsid=671


Riply   (2008-09-26 18:57:00) [33]

> [11] Игорь Шевченко ©   (26.09.08 17:24)
> Вопрос из серии "Чем вредно для программы сообщение:
> Программа выполнила недопустимую операцию и будет закрыта" ?
> Да ничем не вредно, это информация.

Это просто здорово !

Ну... я себе это так представляла:
аварийно все закрывается, останавливается.
А всякие выключения/включеня для железа не очень полезны :)
Насчет системы, может она в этот момент что-то важное делала,
а я с ней вот так вот, по-свински :)

>  [12] slow!alfamoon!com   (26.09.08 17:35)
> BSOD это остановка работы системы при возникновении нештатной ситуации.

Об этом я догадывалась :)

> [13] Rouse_ ©   (26.09.08 17:36)
> Срочно покупать виртуалку :)
> Мне например решение от http://www.parallels.comнравиться.

Спасибо. Подумаю.
> но у меня на момент экспериментов сгорел ровно 1 комп и 4 USB разветвителя
Ну нельзя же так людей пугать :)


Rouse_   (2008-09-26 17:36:00) [34]


> У меня такой вопрос: а чем BSOD вреден для компьютера(в
> смысле железа) и для системы ?

0_о ты что на живой машине эксперементируешь? Фига-се...
Срочно покупать виртуалку :) Мне например решение от http://www.parallels.comнравиться. Да и стоит копейки 45 чтоли долларов...
А по поводу вредно-не вредно, в принципе как Игорь сказал, вредно быть не должно (я тоже так думал).

Воть...
так-то оно так, но у меня на момент экспериментов сгорел ровно 1 комп и 4 USB разветвителя (я собственно гдето год назад жаловался на форуме как раз) :)
Мошт комп был дохлый, мошт разветвители кривые, то что руки были кривые,  это-то понятно, но мне больше эксперементировать не охота на чистом железе - тестирование только под ВМ :)


slow!alfamoon!com   (2008-09-26 17:36:00) [35]

Цвет экрана и шрифта при бсоде настраивается. Вроде на сисинтерналсах утиль видел.


slow!alfamoon!com   (2008-09-26 17:35:00) [36]

BSOD это остановка работы системы при возникновении нештатной ситуации.


Игорь Шевченко   (2008-09-26 17:24:00) [37]


> а чем BSOD вреден для компьютера(в смысле железа)


ничем


> и для системы ?


перезапускать надо, а так не вреден.

Вопрос из серии "Чем вредно для программы сообщение: Программа выполнила недопустимую операцию и будет закрыта" ? Да ничем не вредно, это информация.


Riply   (2008-09-26 16:45:00) [38]

> [9] slow!alfamoon!com   (26.09.08 16:36)
> Ты понимаешь что такое BSOD?

Судя по вопросу - нет. И вообще он у меня не синий а черный.
Даже нормальный BSOD и тот получить не могу :)


slow!alfamoon!com   (2008-09-26 16:36:00) [39]

Ты понимаешь что такое BSOD?


Riply   (2008-09-26 16:20:00) [40]

> [7] Игорь Шевченко ©   (26.09.08 15:10)
> Знакомься. Количество вопросов сократится, а количество синих сообщений возрастет.
> Driver Verifier нужен для того, чтобы получать синие сообщения.

У меня такой вопрос: а чем BSOD вреден для компьютера(в смысле железа) и для системы ?
Ведь, когда она бедненькая падает только из-за того,
что я, например, на автомате вызвала что-нибудь типа Move,
у меня сердце кровью обливается. Так ее жалко :)


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо