[Prev][Next][Index][Thread]

Re: Priviledge switch with 'iret'



>I have four segments: KCS, KDS, UCS and UDS. K* have DPL 0, U* has DPL 3.
>When I tries to make an far iret from K* segments to U* segments it
>doesn't make a priviledge switch -> it doesnt pop the UESP and SS from the
>stack. Why's that?

What segment values are you using ?  Don't forget that you need to set the
RPL in the segments... so if your user code segment is at 0x18 in the GDT,
you should be using (0x18|3) as your segment value.  Same goes for the user
data segment.  Could that be the problem ?

Ramon


---
Ramon van Handel   <vhandel@chem.vu.nl>
Chemistry Student, OS Programmer and all-round Weirdo
The ant has made himself illustrious / Through constant industry industrious.
So what? Would you be calm and placid / If you were full of formic acid?
(Ogden Nash)




Follow-Ups: