Глюки локального WinDbg
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 22.02.12 12:14
Оценка:
На двух разных компьютерах под XP SP3 запускаю WinDbg в локальном режиме (через windbg -kl или через livekd — разницы никакой). Хочу посмотреть значение переменной MmModifiedPageLifeInSeconds — отладчик говорит, что требуемый адрес недоступен. Смотрю через dd — и правда, выводит вопросики. Спрашиваю через !vtop — говорит, что страница не отображена (80566xxx). Предыдущая и следующая страницы отображены нормально.

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

В виртуалке с такой же XP, к которой WinDbg подключен удаленно, используется то же ядро, адреса переменных те же, страница отображена нормально.

Что может давать такой глюк?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: Глюки локального WinDbg
От: val3ntin  
Дата: 22.02.12 14:25
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>На двух разных компьютерах под XP SP3 запускаю WinDbg в локальном режиме (через windbg -kl или через livekd — разницы никакой). Хочу посмотреть значение переменной MmModifiedPageLifeInSeconds — отладчик говорит, что требуемый адрес недоступен. Смотрю через dd — и правда, выводит вопросики. Спрашиваю через !vtop — говорит, что страница не отображена (80566xxx). Предыдущая и следующая страницы отображены нормально.


ЕМ>При многократном вызове локального отладчика в разное время ничего не меняется.


ЕМ>В виртуалке с такой же XP, к которой WinDbg подключен удаленно, используется то же ядро, адреса переменных те же, страница отображена нормально.


ЕМ>Что может давать такой глюк?



а в контекст необходимого процесса/потока переключиться не нужно ?
Re: Глюки локального WinDbg
От: Ligen Украина http://zone-of-ambiguity.blogspot.com/
Дата: 22.02.12 15:09
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>На двух разных компьютерах под XP SP3 запускаю WinDbg в локальном режиме (через windbg -kl или через livekd — разницы никакой). Хочу посмотреть значение переменной MmModifiedPageLifeInSeconds — отладчик говорит, что требуемый адрес недоступен. Смотрю через dd — и правда, выводит вопросики. Спрашиваю через !vtop — говорит, что страница не отображена (80566xxx). Предыдущая и следующая страницы отображены нормально.


ЕМ>При многократном вызове локального отладчика в разное время ничего не меняется.


ЕМ>В виртуалке с такой же XP, к которой WinDbg подключен удаленно, используется то же ядро, адреса переменных те же, страница отображена нормально.


ЕМ>Что может давать такой глюк?


Проверь PE секцию
Viva el Junta Militar! Viva el Presidente!
Re: Глюки локального WinDbg
От: Ligen Украина http://zone-of-ambiguity.blogspot.com/
Дата: 22.02.12 15:27
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>На двух разных компьютерах под XP SP3 запускаю WinDbg в локальном режиме (через windbg -kl или через livekd — разницы никакой). Хочу посмотреть значение переменной MmModifiedPageLifeInSeconds — отладчик говорит, что требуемый адрес недоступен. Смотрю через dd — и правда, выводит вопросики. Спрашиваю через !vtop — говорит, что страница не отображена (80566xxx). Предыдущая и следующая страницы отображены нормально.


ЕМ>При многократном вызове локального отладчика в разное время ничего не меняется.


ЕМ>В виртуалке с такой же XP, к которой WinDbg подключен удаленно, используется то же ядро, адреса переменных те же, страница отображена нормально.


ЕМ>Что может давать такой глюк?


бгг, проверил сам в WRK:
#if defined (_X86PAE_)
#pragma alloc_text(INIT,MiCheckPaeLicense)
#endif
#pragma alloc_text(PAGELK,MiFreeInitializationCode)
#endif
...
ULONG MmModifiedPageLifeInSeconds = 300;

похоже на то
Viva el Junta Militar! Viva el Presidente!
Re[2]: Глюки локального WinDbg
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 23.02.12 11:34
Оценка:
Здравствуйте, val3ntin, Вы писали:

V>а в контекст необходимого процесса/потока переключиться не нужно ?


Ну, если подскажете адрес EPROCESS "процесса/потока" Memory Manager...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: Глюки локального WinDbg
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 23.02.12 11:44
Оценка:
Здравствуйте, Ligen, Вы писали:

L>бгг, проверил сам в WRK:

L>
L>#if defined (_X86PAE_)
L>#pragma alloc_text(INIT,MiCheckPaeLicense)
L>#endif
L>#pragma alloc_text(PAGELK,MiFreeInitializationCode)
L>#endif
L>...
L>ULONG MmModifiedPageLifeInSeconds = 300;
L>


Хм, у меня оно так выглядит в исходниках Win2k — там несколько переменных определяются подряд, следом за MmModifiedPageLifeInSeconds определяется MiModifiedPageLife, а она доступна. А вот сейчас заглянул в Wrk 1.2, а там уже вот такое:

#ifdef ALLOC_DATA_PRAGMA
#pragma data_seg("INITDATA")
#endif
ULONG MmModifiedPageLifeInSeconds = 300;
#ifdef ALLOC_DATA_PRAGMA
#pragma data_seg()
#endif

LARGE_INTEGER MiModifiedPageLife;


Вот теперь стало понятно — не подумал, что в XP они могли перенести переменную в секцию инициализации.
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.