Rings 1 and 2

Discussions on more advanced topics such as monolithic vs micro-kernels, transactional memory models, and paging vs segmentation should go here. Use this forum to expand and improve the wiki!
Post Reply
lopidas
Member
Member
Posts: 65
Joined: Sun May 26, 2013 10:12 am

Rings 1 and 2

Post by lopidas »

Is there some privilege difference between these two?
And of course then privilege difference between 0 and 1, 2 and 3?

My thoughts (maybe I am absolutely wrong): It is for combining user-mode in ring 3 with driver in ring 2 and kernel mode ring 0 with driver in ring 1
Edited thoughts: ring 2 seems to be in kernel-mode too
Last edited by lopidas on Fri Jun 14, 2013 1:44 pm, edited 1 time in total.
User avatar
AJ
Member
Member
Posts: 2646
Joined: Sun Oct 22, 2006 7:01 am
Location: Devon, UK
Contact:

Re: Rings 1 and 2

Post by AJ »

Hi,

Yes there are privilege differences, but the reasons for using rings 1 and 2 evaporate when you start using paging, which only has the concept of 'User' and 'Supervisor' levels and you therefore only use rings 0 and 3.

Cheers,
Adam
lopidas
Member
Member
Posts: 65
Joined: Sun May 26, 2013 10:12 am

Re: Rings 1 and 2

Post by lopidas »

Hi,
does anyone know link to exact description of differences?
User avatar
AJ
Member
Member
Posts: 2646
Joined: Sun Oct 22, 2006 7:01 am
Location: Devon, UK
Contact:

Re: Rings 1 and 2

Post by AJ »

lopidas
Member
Member
Posts: 65
Joined: Sun May 26, 2013 10:12 am

Re: Rings 1 and 2

Post by lopidas »

Casm
Member
Member
Posts: 221
Joined: Sun Oct 17, 2010 2:21 pm
Location: United Kingdom

Re: Rings 1 and 2

Post by Casm »

lopidas wrote:Is there some privilege difference between these two?
And of course then privilege difference between 0 and 1, 2 and 3?

My thoughts (maybe I am absolutely wrong): It is for combining user-mode in ring 3 with driver in ring 2 and kernel mode ring 0 with driver in ring 1
Edited thoughts: ring 2 seems to be in kernel-mode too
The original reason for having four privilege levels was that the American military wanted it. Only ring 0 counts as kernel mode. You will get a general protection error if you try to execute privileged instructions in rings 1 or 2.
Post Reply