Windows Mobile 6 plus VirtualQuery
От: 4ekin Россия  
Дата: 04.11.10 00:12
Оценка:
Доброго времени суток, господа!
Передо мной стоит задача исследовать виртуальное адресное пространство своего же процесса под управлением чудной ОС Windows Mobile 6.
Памятуя о великом Рихтере, взял его реализацию VMQuery, пошаманил с ней, в итоге получил сносные результаты, но к сожалению только для своего слота памяти (доходит только до 0x02000000). Если пробовать двигаться дальше, то VirtualQuery, а значит и VMQuery возвращает 0.
Как известно виртуальная память в WM 6 (как и в WinCE 5) имеет размер 4 Гб, 2 отданы на откуп системе, 1 отдан еще на разделяемые файлы, на процессы остается 1 гигабайт, который разделен на слоты для каждого процесса.
В связи с этим встает вопрос, каким образом получить доступ к остальным слотам?
Заранее спасибо за ответы
c++ wince рихтер virtualquery
Re: Windows Mobile 6 plus VirtualQuery
От: 4ekin Россия  
Дата: 09.11.10 15:53
Оценка:
Здравствуйте, 4ekin, Вы писали:

4>Доброго времени суток, господа!

4>Передо мной стоит задача исследовать виртуальное адресное пространство своего же процесса под управлением чудной ОС Windows Mobile 6.
4>Памятуя о великом Рихтере, взял его реализацию VMQuery, пошаманил с ней, в итоге получил сносные результаты, но к сожалению только для своего слота памяти (доходит только до 0x02000000). Если пробовать двигаться дальше, то VirtualQuery, а значит и VMQuery возвращает 0.
4>Как известно виртуальная память в WM 6 (как и в WinCE 5) имеет размер 4 Гб, 2 отданы на откуп системе, 1 отдан еще на разделяемые файлы, на процессы остается 1 гигабайт, который разделен на слоты для каждого процесса.
4>В связи с этим встает вопрос, каким образом получить доступ к остальным слотам?
4>Заранее спасибо за ответы

апну тему, неужели никто советом не поможет?
Re[2]: Windows Mobile 6 plus VirtualQuery
От: superlexx  
Дата: 09.11.10 16:31
Оценка:
низя: http://msdn.microsoft.com/en-us/library/ms892491.aspx
Re: Windows Mobile 6 plus VirtualQuery
От: Nik_1 Россия  
Дата: 09.11.10 22:03
Оценка: -1
Здравствуйте, 4ekin, Вы писали:
4>В связи с этим встает вопрос, каким образом получить доступ к остальным слотам?

Смотря в каком смысле получить. Ты хочешь выделить память сверх этого лимита в 32 мега?
Re[2]: Windows Mobile 6 plus VirtualQuery
От: 4ekin Россия  
Дата: 09.11.10 22:44
Оценка:
Здравствуйте, Nik_1, Вы писали:

N_>Здравствуйте, 4ekin, Вы писали:

4>>В связи с этим встает вопрос, каким образом получить доступ к остальным слотам?

N_>Смотря в каком смысле получить. Ты хочешь выделить память сверх этого лимита в 32 мега?


Не, не выделить, а просмотреть структуру памяти (регионы и субрегионы). ТО есть хочу пройтись по всем 4 гигам виртуальной памяти.
32 метра нулевого слота проходятся, ибо это собственная память, а вот дальше функция VirtualQuery возвращает 0.
Re[3]: Windows Mobile 6 plus VirtualQuery
От: 4ekin Россия  
Дата: 09.11.10 22:49
Оценка:
Здравствуйте, superlexx, Вы писали:

S>низя: http://msdn.microsoft.com/en-us/library/ms892491.aspx


Спасибо за ссылку, а правильно я понял, что если вызвать SetKMode(true), то можно будет получить доступ к памяти, а в конце выполнить SetKMode(false)?
Или нельзя?
Re[4]: Windows Mobile 6 plus VirtualQuery
От: superlexx  
Дата: 10.11.10 12:42
Оценка:
Возможно, но наверное зависит от настроек в ОС. Всё-таки это в главе "Developing a Device Driver".
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.