Здраствуйте Ребята! Интересует следующее: как отобразить на виртуальные адреса непоследовательные физические страницы памяти? Т.е. например есть физическая страница с адресом 0 и физическая страница с адресом 8096. И отобразить их чтобы на вирт. адресах они были последовательно. Я сложно объясняю. На самом деле мне не нужны физические страницы с конкретными адресами, расскажу какая задача. Через MmMapIoSpace отображаю конфигурационное пространство, но мне надо чтобы первые 4к были не само конфигурационное пространство а простая память. Я это сделал, но не использовал средства виндозы. А наверно они есть. Я в мсдн все излазил. Три варианта, плохо искал, мало опыта или всетаки таких средств нет. Сделал я так: 1) MmMapIoSpace получаем адрес 2) x = ExAllocatePool(NonPaged, 4096) выделяем память 3) По этому адресу ищем соответствующую ей PTE 4) y = MmGetPhysicalAddress(x) 5) Заменяем в PTE адрес на Y 6) Делаем invlpg Надеюсь это временное решение. Чтонибудь подскажете по моей проблеме?