Browse Prior Art Database

Emulation of Switch to Supervisor

IP.com Disclosure Number: IPCOM000123239D
Original Publication Date: 1998-Jul-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 1 page(s) / 41K

Publishing Venue

IBM

Related People

Swanberg, RC: AUTHOR

Abstract

A method to allow privileged operating system code to execute with non-privileged access rights where no hardware facilities exist to support such operation.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 72% of the total text.

Emulation of Switch to Supervisor

   A method to allow privileged operating system code to
execute with non-privileged access rights where no hardware
facilities exist to support such operation.

   When operating systems perform instruction emulation,
whether for legacy/unsupported instructions, invalid forms, or
unaligned data reference, care must be taken to ensure that all data
accesses are performed with the same protection and privilege that
the original execution context possessed.

   In order to ensure this,  if the original execution context
was problem state (user mode), then the virtual address translation
data structures must be updated prior to the data access to restrict
supervisor (kernel mode) access to be equivalent.  Then when the
emulation of the original instruction is complete, the virtual
address translation data structures must be restored to their
original state.

   The disclosed invention provides an alternative method for
executing the operating system emulation code under the access
rights of the non-privileged originator without having to change any
of the address translation and access protection data structures.

   If the fault was taken in problem state, then the operating
system emulation code puts itself into problem state to perform the
emulation and resulting data references.  In order for the operating
system to be able to return to supervisor, or privileged, mode after
the emulation is complete, the operating system executes a...