Вопрос: какой самый простой способ доступа к затененной области оперативной памяти из винды? Есть ли возможность записать/прочесть затенённую память из пользовательского режима? или ради записи одного байта в память придёться ваять драйвер/сервис ?
2FED что "\Device\PhysicalMemory" ??? )) можно поточнее? в DDK я видел всякие страшные функции типа mmMapIoSpace, но они выглядят слишком страшно, да ещё и без всяких примеров (одни прототипы написаны, да краткое описание) CrystalIC затенённая память - память являющаяся окном на шину в регистры устройства. знакомый говорит, что это можно сделать через DMA, но я ему не верю (т.к.)
эт самое. я с вами спорить по поводу что такое затенённая память не собираюсь. Лучше скажите почему DDK некомпилит вот это: Код (Text): VOID *Mem; Mem = MmMapIoSpace( 0xC8000, 1, 0 ); говоря cannot convert from 'unsigned int' to 'PHYSICAL_ADDRESS'.
steelfactor MmMapIoSpace( (PHYSICAL_ADDRESS)0xBABA, 1024, 0 ); лучше, если честно, не стало. что за типа такой PHYSICAL_ADDRESS вообще??? ни в DDK ни в MSDN о нём ни слова.
Arisu Драйвер придеться писать. Затененная память - shadow memory. Область памяти скрытая за облостью памяти адапторов и ROM BIOS. Пример 1мб из них 640КБ доступно как системная память. ДАльше идет облость видео адаптора A0000h-BFFFFh которая затеняет часть памяти. С0000h-DFFFFh - биосы карт расширения. E0000h-FFFFFh BIOS. Немного о BIOS. Тут возможны различные режимы. Память может быть не затененной. Как раз в нее записывается биос при распаковки. А дальше эта облость просто защищается от записи. Чтение идет из основной памяти. Сделанно это для ускорения. В старом исполнение системная память либы небыло либы затенялось и чтение шло из BIOSa. А вот запись может быть разная. Может быть заблокированна может быть перенаправленна на BIOS или в системную память. Насчет доступ через DMA. И да и нет. Есть контроллер памяти вот он и скрывает память. Вот чтобы получить доступ его и нужно запрограммировать. Вот только зачем это нужно? ЗАчем тебе доступ к этой памяти?
Pavia я уже пишу драйвер. и я пишу в нём магическую функцию mmMapIoSpace, но магии не выходит, потому что - читайте предыдущий мой пост А затем мне это, что на исе у меня висит качество спрограммированный микроконтроллер у которого по одному адресу очень полезный для меня регистр и мне туда надо писать ему письмо.
Arisu это вобщем из одной из первых ссылок в гугли по теме PHYSICAL_ADDRESS так что будь внимательнее