Сейчас на форуме: UniSoft, laslo, bartolomeo (+5 невидимых) |
eXeL@B —› Программирование —› Ring0: Callgate, Driver |
Посл.ответ | Сообщение |
|
Создано: 05 августа 2006 14:40 · Личное сообщение · #1 Вообщем переписываю я библиотеку MS Rem'a c wasm.ru. Насчет драйвера: все загружается удачно, но при попытке записи в устройство, система падает. С калгейтами вообще ничего не получается, хотя вроде и все правильно делаю. Вообщем ищу помощи, если кто в этом разбирается, то могу прислать проект и драйвер. ГУРУ, отзовитесь, плиз, а то скоро крыша съедет.)) |
|
Создано: 05 августа 2006 16:13 · Личное сообщение · #2 |
|
Создано: 05 августа 2006 16:27 · Личное сообщение · #3 Библиотека вот эта www.wasm.ru/pub/21/files/ring0.rar (она на делфи, хочу получить на С++), но там много лишнего для меня, на данный момент хочу лишь выполнить код на уровне ринг0, не важно какой даже. Проблему я уже описал, а найти ее причины не могу. Создаю в реестре ключи, потом загружаю драйвер, причем все проходит без траблов. потом CreateFile(hDriver и тд), тоже все без траблов, хэнд возвращает. но при попытке записи WriteFile синий экран. |
|
Создано: 05 августа 2006 16:38 · Личное сообщение · #4 |
|
Создано: 05 августа 2006 16:42 · Личное сообщение · #5 |
|
Создано: 05 августа 2006 18:08 · Личное сообщение · #6 0x0000000A: IRQL_NOT_LESS_OR_EQUAL Была сделана попытка затронуть виртуальную память на внутреннем процессе IRQ уровня, который слишком высок. Наиболее частая причина возникновения - драйвер устройства использует неверный адрес. Параметры: 1 - адрес, по которому выполнено ошибочное обращение 2 - IRQL, который использовалcя для обращения к памяти 3 - тип доступа к памяти: 0 = операция чтения, 1 = операция записи 4 - адрес инструкции, которая затребовала доступ к памяти по адресу Вобщем где-то память неправитьно выделяется. На том уровне IRQL на котором крутится драйвер свопом нельзя пользоваться. |
|
Создано: 05 августа 2006 18:24 · Личное сообщение · #7 |
|
Создано: 05 августа 2006 23:36 · Личное сообщение · #8 |
|
Создано: 07 августа 2006 12:46 · Личное сообщение · #9 |
|
Создано: 16 августа 2006 14:57 · Личное сообщение · #10 |
|
Создано: 05 ноября 2011 10:53 · Поправил: bowrouco · Личное сообщение · #11 > С калгейтами вообще ничего не получается, хотя вроде и все правильно делаю. И не получится. При вызове колгейта не изменяются флажки. Тоесть не маскируются прерывания(IF), не сбрасывается TF etc. Прерывания не могут быть разрешены, покуда не сформирован т-фрейм. Шлюз вызова это способ закрэшить систему. > Все запарывается на ZwOpenSection Не сформирован т-фрейм. |
|
Создано: 05 ноября 2011 11:52 · Личное сообщение · #12 |
|
Создано: 05 ноября 2011 12:18 · Поправил: bowrouco · Личное сообщение · #13 |
eXeL@B —› Программирование —› Ring0: Callgate, Driver |