www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1999/02/02/15:47:44

Date: Tue, 2 Feb 1999 13:15:20 -0500
Message-Id: <199902021815.NAA00632@envy.delorie.com>
From: DJ Delorie <dj AT delorie DOT com>
To: djgpp AT delorie DOT com
In-reply-to: <3.0.6.32.19990202124127.00900c10@pop.netaddress.com> (message
from Paul Derbyshire on Tue, 02 Feb 1999 12:41:27 -0500)
Subject: Re: ASM - function: what should be pushed?
References: <86p4sp5i800 DOT fsf AT vesuri DOT Helsinki DOT FI> <3 DOT 0 DOT 6 DOT 32 DOT 19990202124127 DOT 00900c10 AT pop DOT netaddress DOT com>
Reply-To: djgpp AT delorie DOT com

> What the heck is IOPL-3... a technical term for ring 3?

IOPL indicates what ring is allowed unfettered access to I/O ports.
It does not mean that you *are* at that ring, it means that *if* you
are at that ring or better (lower ring numbers), *then* you can do any
I/O.

IOPL-3 means that any program (since 3 is the least permissive ring)
is able to do any I/O it wants.

The OS normally runs in ring 0, so no matter what the IOPL is, it can
do I/O.  Intel recommends that device drivers run in ring 1 to protect
the OS while allowing I/O, yet protecting the drivers from
applications, which would run in ring 2 or 3.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019