Log in

View Full Version : Ring


SilSaLaMaTa
June 28th, 2002, 12:56
hi,
can anyone tell me what is rings ?? and what is the diffrent between ring0 and ring3 or ... ?

tgodd
June 29th, 2002, 05:34
Rings are Privilege levels.
Thes levels are ring 0 - being of the highest privilege (typically the kernel, but in some cases in embedded systems only the Hardware abstraction layer), ring 1 - for system services, ring 2 - for custom extensions, ring 3 - Application level.

Rings of lower value can access any memory defined by a descriptor of higher value, but not the other way around.
There are some instructions which are/or can be flagged to be privileged instructions ie. halt, clts, lgdt, etc.

Memory descriptors which are in fact very different from segments, have 2 bits which defines the DPL (Descriptor Privilege Level).


Truthfully you should get a-hold of some intel manuals which define descriptor tables, and task state segment, etc.

Regards,

Clandestiny
July 3rd, 2002, 03:05
Hiya,

Here's a couple of articles about the GDT / callgates that may answer a few of your questions about ring privalege levels.

(General info & terminology about privlege levels)
http://ivs.cs.uni-magdeburg.de/bs/lehre/wise9798/bs2/seminare/privilegien-eng.shtml

(Protected mode & GDT stuff dealing with rings)
http://www.ganssle.com/articles/aprot2.htm

(Using callgates to execute privaleged code for NT)
http://www.windowsitlibrary.com/Content/356/10/1.html

Cheers,
Clandestiny

SilSaLaMaTa
July 3rd, 2002, 09:09
thanx , that was very intresting for me