Я вижу, вы уже решили это давно, но подумали, что я оставлю несколько хлебных крошек для тех, кто еще может споткнуться таким образом в смутном и отдаленном будущем.
Если вы не выполняете RTP, естьВероятно, ваш MMU даже не переводит адреса.Т.е., если что-то появляется, скажем, 0x7fc00400 в физическом адресном пространстве, вы можете просто привести это значение к указателю и использовать его.
*((short *) 0x7fc00400) = foo; // write 16 bits!
И да, в наши дни почти кощунственно предлагать (ab) использовать указатели таким образом, но я хотел бы отметить, что если вы делаете код пространства ядра vxworks, вы практически наголый металл в любом случае, так почему бы и нет?