Browse Prior Art Database

Two Mode Storage Protection Mechanisms

IP.com Disclosure Number: IPCOM000086001D
Original Publication Date: 1976-Jul-01
Included in the Prior Art Database: 2005-Mar-03
Document File: 4 page(s) / 62K

Publishing Venue

IBM

Related People

Zick, MR: AUTHOR

Abstract

Storage protection mechanisms are described for reducing the software operating overhead required for enabling one program or subroutine to access data in the protected storage area assigned to another program or subroutine. One of these mechanisms is a dual-protection storage protection mechanism for simplifying interpartition data accesses. Another of these mechanisms is a hierarchical protection mechanism for simplifying intrapartition data accesses.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 36% of the total text.

Page 1 of 4

Two Mode Storage Protection Mechanisms

Storage protection mechanisms are described for reducing the software operating overhead required for enabling one program or subroutine to access data in the protected storage area assigned to another program or subroutine. One of these mechanisms is a dual-protection storage protection mechanism for simplifying interpartition data accesses. Another of these mechanisms is a hierarchical protection mechanism for simplifying intrapartition data accesses.

Fig. 1 shows the primary features of an existing storage protection system. The protection key is an indicator field that appears in the current program status word (PSW) whenever an associated task has control of the system. The storage key is an indicator field located in storage and associated with one or more storage blocks that require that tasks have a matching protection key to use the blocks. When protection applies to an access, the storage key is compared with the protection key associated with the request and an access of the storage block is permitted only when the storage key matches the protection key. Thus, the protection key for any given program must match the storage keys of all storage blocks hat are to be used by this program.

In the Fig. 1 system, a match is said to occur when any of the following conditions is true: (a) KH = SH and KL = SL; or (b) KH = SH and KL = 0; or (c) KH = 0 and SH Not = 0.

Generally, several contiguous storage blocks with the same SH are combined into a logical unit called a partition. In a partition, programs which perform related tasks coexist. These programs are protected from each other by different SL values and they are all protected from other partitions by a unique SH.

In today's programming environment, the level of sophistication requires controlled access to data within the same partition (KH = SH, KL Not = SL and KL Not = 0) and in different partitions (KH Not = SH and KH Not = 0). Both accesses are invalid under the existing mechanism.

The purpose of the mechanisms described herein is to make valid these presently invalid accesses and to do it in a relatively simple manner which requires less software overhead.

In order for one program to access data in another partition's protected storage block, it is usually necessary in the existing system to allow a match to be created when a nonmatch exists. This is accomplished by a SET PSW KEY FROM ADDRESS (SPKA) instruction which is used to change the current PSW protection key to the desired value. This key switching mechanism includes the following steps: (1) Issue an SPKA to set the PSW protection key to satisfy the match criteria. (2) Access the data. (3) Issue an SPKA to reset the PSW protection key to the original value.

If there are a large number of accesses requiring this key switching, the software overhead can become excessive.

1

Page 2 of 4

To reduce this key switching overhead, a dual-protection storage protection mechanism is pro...