Browse Prior Art Database

Dynamic System Calls

IP.com Disclosure Number: IPCOM000102793D
Original Publication Date: 1990-Feb-01
Included in the Prior Art Database: 2005-Mar-17
Document File: 1 page(s) / 42K

Publishing Venue

IBM

Related People

Auslander, M: AUTHOR [+4]

Abstract

Disclosed is a technique that supports efficient dynamic system calls.

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

Dynamic System Calls

      Disclosed is a technique that supports efficient dynamic system
calls.

      Traditionally, a system call is treated as an interrupt as
opposed to a call.  This results in additional useless overhead.
Additionally, an SVC instruction is statically assigned to the system
call with the SVC instruction in the user's program.  This creates
long term compatibility problems as the system evolves.  This static
allocation also makes it harder to add system calls.

      Alternatively, a system call can be thought of as nothing more
than a call that crosses a protection domain. Therefore, the design
of the system call handler is dictated by the subroutine linkage
convention, the protection model, and the program model.  Treating a
system call as a call allows the system call handler to decrease the
amount of state that has to be saved and restored across system calls
and, thus, decrease the overhead of executing a system call.

      A system call is added to the operating system simply by
loading a kernel extension or kernel program that exports an entry
point as an SVC.  The loader creates the appropriate system call
table entry for the new system call. The importing program does not
know the SVC number for a system call or even if a system call
requires a change in protection domains.

      The system call handler is really a set of procedures, one for
each type of cross domain call supported.  The loader resolves the
caller...