Browse Prior Art Database

Fast Path System Call

IP.com Disclosure Number: IPCOM000112014D
Original Publication Date: 1994-Apr-01
Included in the Prior Art Database: 2005-Mar-26
Document File: 2 page(s) / 58K

Publishing Venue

IBM

Related People

Mealey, BG: AUTHOR

Abstract

Disclosed is a method to allow AIX* fast access to system calls. Operating systems provide functions that are required to execute in supervisor mode through system calls. The Power PC architecture provides one instruction to be used for switching from problem state to supervisor state -- SC. When SC is executed as part of the system call linkage, control is passed to a system call handler provided by the operating system.

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

Fast Path System Call

      Disclosed is a method to allow AIX* fast access to system
calls.  Operating systems provide functions that are required to
execute in supervisor mode through system calls.  The Power PC
architecture provides one instruction to be used for switching from
problem state to supervisor state -- SC.  When SC is executed as part
of the system call linkage, control is passed to a system call
handler provided by the operating system.

      The system call handler can often contain a significant amount
of overhead.  In the AIX operating system it provides a variety of
functions including:

Address space initialization

Performance trace hooks

System call auditing

Signal delivery

Swapping

      There is a class of operating system functions that do not
require the functions provided by the standard system call handler
and could benefit from a very low overhead system call linkage.  To
provide for these types of functions, a fast path to the system call
linkage was developed for AIX.

      AIX provides resolution of external symbols at load time.
Standard system calls are resolved to a glue code sequence.  The
sequence loads a system call index and then branches to external code
that saves non-volatile registers and executes the SC instruction to
invoke the system call handler.  This sequence is of the form:

 standard SC prologue:
            save user registers
            set "EQ" bit in condition register
            SC

      To provide a fast path system call, a separate entry point is
exported from the...