In article <7ah1t31u4hlgpofkrvs5kerl6aitta3vnr@[EMAIL PROTECTED]
>,
spamtrap@[EMAIL PROTECTED]
says...
[ ... ]
> Not possible. I/O space and memory space are very different, and you
can't
> reroute one to the other.
While that's true from a hardware perspective, you can make an arbitrary
range of memory _act_ as if it was mapped to I/O space from a software
perspective, if you want to badly enough.
The trick is pretty simple: pick your memory range set it up as memory
that's not present. Attempting to read or write the page will result in
a page fault. In the fault handler, read/write the appropriate ****t,
then return to the original code.
This will normally involve switching to ring 0 every time you read/write
the "memory mapped" I/O space, so the performance is dismal (to put it
nicely).
--
Later,
Jerry.
The universe is a figment of its own imagination.


|