Ulrich Weigand wrote:

> Ramon van Handel <[EMAIL PROTECTED]> wrote:
>
> > The guest code runs in a segment that is completely flat,
> > except that there is a piece "off the top" of the segment
> > (i.e., it is not 4GB but 4GB-n*4k).
>
> Eh?  But the guest code wants to set up its own segments; of
> course you could try to 'hack' the GDT/LDTs set up by the guest
> so that their base and limit is 'corrected' so that this piece
> of linear address space is never accessible.

That was the idea.

Of course, Kevin's solution is a lot better.
Why can I never think of any simple solutions ?  ;)

> [ Just one example: the Win32s libraries want to set up a
> segment with limit 4GB and base 4GB-64k.  They use it with
> offsets >64k so the linear addresses wrap around ...   How
> do want to modify this LDT entry so that everything works as
> the guest expects, but the linear address range at the top
> is still not accessible by the client? ]

Okay, you've convinced me :)

Ramon

Reply via email to