there are several previlege level types in IA-32 , I got confused :
Selector privilege level .
Descriptor Privilege Level .
The user/supervisor bit in page table entry and page directory entry .
My Qs are :
1 ) what is the exact relationship between them ?
2 ) I have an idea (speaking in IA-32 )that supervisor mode is the ring zero privilege level , user mode is the rings 1,2,3
is this true ?
privilege levels types
Re:privilege levels types
ehm... that's subject of at least a dozen threads here, dozens of books and free manuals all around the world, and a lot of tutorials since there are still some people that need more. Did you read/find those?firas981 wrote: My Qs are :
1 ) what is the exact relationship between them ?
No. The mapping between paging U/S and segmentation 0-3 is that 0-2 is supervisor and 3 is user. User space are programs that don't do protection actively, so why give them more than 1 level?2 ) I have an idea (speaking in IA-32 )that supervisor mode is the ring zero privilege level , user mode is the rings 1,2,3
is this true ?
- Pype.Clicker
- Member
- Posts: 5964
- Joined: Wed Oct 18, 2006 2:31 am
- Location: In a galaxy, far, far away
- Contact:
Re:privilege levels types
http://www.mega-tokyo.com/forum/index.p ... 57;start=0
may help figuring out what those *PL are ...
@the 4 levels of protection, the two 'intermediate' levels were meant for third-party drivers ... keep in mind that these have been defined on the 286 where there was no paging at all. Only DPL0 can theorically access the GDT and define new segments, so any other DPL only works in a level-0 defined environment. DPL1 or DPL2 code has the ability to do IO things that DPL3 couldn't (if the system designer wishes so) by the adjustment of the IOPL field ...
In practice, it has seldom be used because the SU-vs-world unix approach has been more elegant and easier to use ...
may help figuring out what those *PL are ...
@the 4 levels of protection, the two 'intermediate' levels were meant for third-party drivers ... keep in mind that these have been defined on the 286 where there was no paging at all. Only DPL0 can theorically access the GDT and define new segments, so any other DPL only works in a level-0 defined environment. DPL1 or DPL2 code has the ability to do IO things that DPL3 couldn't (if the system designer wishes so) by the adjustment of the IOPL field ...
In practice, it has seldom be used because the SU-vs-world unix approach has been more elegant and easier to use ...