11.11.2012 01:10, Bart Oldeman пишет:
> On 10 November 2012 15:39, Stas Sergeev wrote:
>
>> Could you just, if possible, give a simple example that
>> will show that the problem is unsolvable?
> just think of movsb from vga to vga memory. Read and write bytes are
> different but can't be mapped differently.
I am still trying to understand.
I think you are trying to say the following:
- What is read from vid mem is not the same that was
written, which is very bad.
- Even if we prepare the read context in advance and
try to batch the writes, there is still the problem when
the prog writes and then quickly reads the same location
(like the overlapping "rep movsb"), and if we didn't process
the batched writes in between, it will read what it have
written, which is a screwup.
Is this understanding correct?

If so (and only if), then this explanation can't help me
getting rid of the false feeling of a trivial solution, unfortunately.
For example:
1. We prepare the read area in advance.
2. We write-protect it.
3. On a page fault we mark the page dirty, remove the
write protection, but set a read protection. No instruction
decoding happens - we allow the write to succeed directly.
4. On a read fault we process the pending writes and goto 1.
(4 can be tweaked with the different optimizations, but I
am just trying to explain the basic idea)
Do you think something like this can work?

------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_nov
_______________________________________________
Dosemu-devel mailing list
Dosemu-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dosemu-devel

Reply via email to