JPH05204764A - Ring protecting system for memory protect - Google Patents

Ring protecting system for memory protect

Info

Publication number
JPH05204764A
JPH05204764A JP4010896A JP1089692A JPH05204764A JP H05204764 A JPH05204764 A JP H05204764A JP 4010896 A JP4010896 A JP 4010896A JP 1089692 A JP1089692 A JP 1089692A JP H05204764 A JPH05204764 A JP H05204764A
Authority
JP
Japan
Prior art keywords
ring
current value
mode
general
program
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4010896A
Other languages
Japanese (ja)
Other versions
JP3274872B2 (en
Inventor
Takayuki Yagi
孝幸 矢木
Yoichiro Takeuchi
陽一郎 竹内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP01089692A priority Critical patent/JP3274872B2/en
Publication of JPH05204764A publication Critical patent/JPH05204764A/en
Application granted granted Critical
Publication of JP3274872B2 publication Critical patent/JP3274872B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)

Abstract

PURPOSE:To improve the processing efficiency of a computer and to improve the performance of the computer by preventing dispatch from being inhibited by providing a register to store the current value in a ring mode. CONSTITUTION:Concerning the ring protecting system for memory protect to execute a program shown by the ring mode of protect information applied to the program and the current value in this ring mode, a control memory 1 is provided to store the current value for each ring mode, general-purpose register 3 to store the ring mode of the current value showing the execution of the program among the ring modes stored in this control memory 1, and means 5 is provided to save the current value stored in the general-purpose register into the control memory when changing the ring mode and to load the current value of the ring mode stored in the control memory to be changed into the general-purpose register.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、各プログラムに保護情
報であるリングモードを与えて、当該リングモードによ
りプログラムの優先度を決定し、プログラムからのアク
セスを許可する記憶保護のリング保護方式のうち、特
に、リングモードが変更されると当該変更されたリング
モードのカレント値を記憶する汎用レジスタを備えるこ
とにより、計算機の処理効率を向上する記憶保護のリン
グ保護方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a ring protection system for storage protection which gives a ring mode as protection information to each program, determines the priority of the program by the ring mode, and permits access from the program. Of these, in particular, the present invention relates to a storage protection ring protection system that improves the processing efficiency of a computer by providing a general-purpose register that stores the current value of the changed ring mode when the ring mode is changed.

【0002】[0002]

【従来の技術】一般に、記憶装置の信頼性を向上させる
目的を持ち、主記憶装置内の情報が破壊されるのを防ぐ
記憶保護機能にリング保護方式がある。
2. Description of the Related Art Generally, there is a ring protection system as a storage protection function for the purpose of improving the reliability of a storage device and preventing the information in the main storage device from being destroyed.

【0003】上記リング保護方式は、プログラムにリン
グ番号という保護情報を与えておき、リング番号の大小
関係でプログラムの優先度を決定してプログラムからの
アクセスを許可する。上記リング保護方式を備えた計算
機は、リング番号(以下、リングモードという。)の小
さいプログラムのカーネルモードにおいて実行されるル
ーチンでは一般に異なるタストコンテキストから呼び出
されるため、プログラムの実行過程を追跡するトレース
情報によりデバックが行なわれる。上記トレース情報に
よるデバックを実行する場合は、制御が移りデータが壊
れるのを防止するため、大規模なタスク共有のメモリ空
間が必要になる。従って、トレースの実行中に頻繁にタ
スク共有のメモリが参照されるとオーバーヘッドの増加
を防止するのが容易ではなかった。
In the above ring protection method, protection information called a ring number is given to a program, the priority of the program is determined based on the size of the ring number, and access from the program is permitted. A computer equipped with the above ring protection method is generally called from a different test context in a routine executed in a kernel mode of a program with a small ring number (hereinafter referred to as a ring mode), so trace information for tracing the execution process of the program Debugging is performed by. When the debug based on the trace information is executed, a large-scale task-shared memory space is required to prevent the control from being transferred and the data from being destroyed. Therefore, it is not easy to prevent the overhead from increasing when the task-shared memory is frequently referenced during execution of the trace.

【0004】[0004]

【発明が解決しようとする課題】ところで、従来は、ト
レースの実行中に頻繁にタスク共有のメモリが参照およ
び更新されるとオーバーヘッドが増加して、計算機の処
理効率の低下を招来する。
By the way, conventionally, if the memory of the task sharing is frequently referred to and updated during the execution of the trace, the overhead increases and the processing efficiency of the computer is lowered.

【0005】また、非同期の割込み等が発生した場合
は、レジスタにトレース情報を保有する間、タスクにC
PUの使用権を与えて当該CPUによりタスクの実行単
位を実行するディスパッチを禁止しなければならず、計
算機の処理に支障を及ぼす問題があった。
Further, when an asynchronous interrupt or the like occurs, the task C is held while the trace information is held in the register.
It has been necessary to give a right to use the PU to prohibit the dispatch of executing the execution unit of the task by the CPU, which causes a problem in the processing of the computer.

【0006】本発明は、このような従来の課題を解決す
るためになされたものであり、その目的は、リングモー
ドのカレント値を記憶するレジスタを備えることによ
り、計算機の処理効率を向上するとともに、ディスパッ
チ禁止を防止して、計算機の性能を向上する記憶保護の
リング保護方式を提供することにある。
The present invention has been made to solve such a conventional problem, and an object thereof is to improve the processing efficiency of a computer by providing a register for storing the current value of the ring mode. The purpose of the present invention is to provide a ring protection method of storage protection that prevents dispatch inhibition and improves computer performance.

【0007】[0007]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、プログラムに与えられる保護情報のリン
グモードと、このリングモードでのカレント値の示すプ
ログラムを実行する記憶保護のリング保護方式におい
て、前記リングモード毎のカレント値を記憶する制御記
憶と、この制御記憶に記憶されているリングモードのう
ち、プログラムの実行を示すカレント値のリングモード
を記憶する汎用レジスタと、前記リングモードが変更さ
れると前記汎用レジスタに記憶されているレジスタの値
を前記制御記憶に退避し、当該制御記憶に記憶されてい
る変更されるリングモードのレジスタの値を当該汎用レ
ジスタにロードする手段と、を備えたことを要旨とす
る。
In order to achieve the above object, the present invention provides a ring protection system of storage protection for executing a ring mode of protection information given to a program and a program indicated by a current value in the ring mode. In, a control memory for storing a current value for each ring mode, a general-purpose register for storing a current value ring mode indicating execution of a program among the ring modes stored in the control memory, and the ring mode are A means for saving the value of the register stored in the general-purpose register when it is changed to the control memory, and loading the value of the changed ring mode register stored in the control memory to the general-purpose register, The summary is that

【0008】[0008]

【作用】上述の如く構成すれば、プログラムに与えられ
る保護情報のリングモードが変更されると汎用レジスタ
に記憶されているカレント値をリングモード毎のカレン
ト値を記憶する制御記憶に退避する。そして、前記制御
記憶に記憶されている変更されるリングモードのカレン
ト値を当該汎用レジスタにロードするので、カレント値
を参照する時間が高速になり、計算機の処理効率を向上
できる。
With the above configuration, when the ring mode of the protection information given to the program is changed, the current value stored in the general-purpose register is saved in the control memory for storing the current value for each ring mode. Then, since the changed ring mode current value stored in the control memory is loaded into the general-purpose register, the time for referring to the current value becomes faster, and the processing efficiency of the computer can be improved.

【0009】[0009]

【実施例】以下、本発明の一実施例を図面に基づいて説
明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings.

【0010】図1は本発明の記憶保護のリング保護方式
に係る一実施例を示す概略図である。
FIG. 1 is a schematic diagram showing an embodiment of a ring protection system for storage protection according to the present invention.

【0011】同図において、制御記憶1は、後述するフ
ァームウェア5により作業領域として使用され、プログ
ラムの保護情報であるリングモードを記憶する。上記リ
ングモードは、リング0からリングnまで格納され、各
リングでの値は、当該リングでの処理を実行するプログ
ラムを指すカレント値である。
In FIG. 1, a control memory 1 is used as a work area by a firmware 5 which will be described later and stores a ring mode which is protection information of a program. The ring mode is stored from ring 0 to ring n, and the value in each ring is the current value indicating the program that executes the process in the ring.

【0012】汎用レジスタ3は、現在のカレント値を記
憶するものであり、リングモードが変更されると当該変
更されたリングモードのカレント値を格納する。
The general-purpose register 3 stores the current current value, and when the ring mode is changed, it stores the changed current value of the ring mode.

【0013】ファームウェア5は、リングモードが変更
されると汎用レジスタ3に格納されているカレント値を
制御記憶1に退避し、変更されたリングモードのカレン
ト値を汎用レジスタ3にロードする。例えば、リングモ
ードがリング0からリング1に変更されるとファームウ
ェア5は、汎用レジスタ3に格納されているカレント値
をST(Rx ,R0 )により制御記憶に退避し、制御記
憶1に格納されているリング1でのカレント値をLOA
D(M1 ,Rx )により汎用レジスタ3にロードする。
When the ring mode is changed, the firmware 5 saves the current value stored in the general-purpose register 3 in the control memory 1 and loads the changed current value in the ring mode into the general-purpose register 3. For example, when the ring mode is changed from ring 0 to ring 1, the firmware 5 saves the current value stored in the general-purpose register 3 to the control memory by ST (R x , R 0 ) and stores it in the control memory 1. LOA the current value in ring 1
The general purpose register 3 is loaded by D (M 1 , R x ).

【0014】次に、リング保護方式を図2を用いて説明
する。
Next, the ring protection system will be described with reference to FIG.

【0015】最上位のモードであるカーネルモードはオ
ペレーションシステム(以下、OSという。)であり、
カレント値Cが5番目のプログラムを指す。カーネルモ
ードの次モードである管理プログラムのリング1のカレ
ント値Cは、4番目のプログラムを指す。リング1の次
のモードであるサブシステムのリング2のカレント値C
は、プログラムAの次のプログラムを指す。リング1の
次のモードであるユーザプログラムのユーザモードのカ
レント値Cは、プログラムDの次のプログラムを指す。
The kernel mode, which is the highest mode, is an operating system (hereinafter referred to as OS),
The current value C points to the fifth program. The current value C of the ring 1 of the management program, which is the next mode of the kernel mode, indicates the fourth program. Current value C of subsystem 2 which is the next mode of ring 1
Indicates the program following program A. The current value C of the user mode of the user program which is the next mode of the ring 1 indicates the program next to the program D.

【0016】なお、最上位のモードのカーネルモードか
らリング1、リング2、ユーザモードのプログラムをア
クセス可能であるが、逆に、ユーザモードのプログラム
は、上位のリング2、リング1、カーネルモードの各プ
ログラムをアクセスできない。
Although the ring mode, the ring 2 and the user mode program can be accessed from the kernel mode which is the highest mode, the user mode program, on the contrary, can be accessed in the upper ring 2, ring 1 and the kernel mode. Cannot access each program.

【0017】次に本実施例の作用を図3に示す動作を説
明する図および図4のフローチャートを用いて説明す
る。
Next, the operation of the present embodiment will be described with reference to the diagram for explaining the operation shown in FIG. 3 and the flow chart in FIG.

【0018】まず、リングモードがiからjに変更する
場合、ファームウェア5は、汎用レジスタ3に格納され
ているリングiでの値(カレント値)をST(Rx ,M
i )により制御記憶1のリングiでの値(カレント値)
に退避する(図中矢印11、ST1)。
First, when the ring mode is changed from i to j, the firmware 5 sets the value (current value) in the ring i stored in the general-purpose register 3 to ST (R x , M
i ) value in ring i of control memory 1 (current value)
(The arrow 11 in the figure, ST1).

【0019】リングiでの値(カレント値)に退避する
とファームウェア5は、制御記憶1のリングjでの値
(カレント値)をLOAD(Mj ,Rx )により汎用レ
ジスタ3にロードする(図中矢印13、ST13)。
When the firmware 5 saves the value (current value) in the ring i, the firmware 5 loads the value (current value) in the ring j of the control memory 1 into the general-purpose register 3 by LOAD (M j , R x ) (see FIG. Middle arrow 13, ST13).

【0020】これにより、汎用レジスタ3を参照するこ
とにより、変更されたリングモードでの値(カレント
値)を確認できるので、メモリからリングモードをアク
セスしていた従来に比べて高速に処理できる。
As a result, since the changed value (current value) in the ring mode can be confirmed by referring to the general-purpose register 3, the ring mode can be processed at a higher speed than in the conventional case.

【0021】本発明の記憶保護のリング保護方式をモジ
ュールのトレース情報を記録する場合に適用したシステ
ム構成図を図5に示す。
FIG. 5 shows a system configuration diagram in which the ring protection system of the memory protection of the present invention is applied when the trace information of the module is recorded.

【0022】まず、リングiのモジュールM1,M2,
M3の先頭は、汎用レジスタ11に格納されている値を
リングiのトレース情報に書込む。書込み先の情報は汎
用レジスタ11に格納されているため、汎用レジスタ1
1の値をインクリメントする。
First, the modules M1, M2 of the ring i are
At the head of M3, the value stored in the general-purpose register 11 is written in the trace information of ring i. Since the write destination information is stored in the general-purpose register 11, the general-purpose register 1
Increment the value of 1.

【0023】リングモードがiからjに変更されるとフ
ァームウェア13は、汎用レジスタ11に格納されてい
るリングiの値を制御記憶15に退避し、制御記憶15
のリングjでの値を汎用レジスタ11にロードする。
When the ring mode is changed from i to j, the firmware 13 saves the value of the ring i stored in the general-purpose register 11 into the control memory 15 and the control memory 15
Load the value in ring j into general register 11.

【0024】次に、リングjのモジュールM4,M5の
先頭で、汎用レジスタ11の値からリングjのトレース
情報の書込みを行い、書込み先の情報が汎用レジスタ1
1に格納されているため、汎用レジスタ11の値をイン
クリメントする。
Next, at the head of the modules M4 and M5 of the ring j, the trace information of the ring j is written from the value of the general register 11, and the information of the write destination is the general register 1.
Since it is stored in 1, the value of the general register 11 is incremented.

【0025】リングモードがjからiに変更されるとフ
ァームウェア13は、汎用レジスタ11に格納されてい
るリングjの値を制御記憶15に退避し、制御記憶15
のリングiでの値を汎用レジスタ11にロードする。
When the ring mode is changed from j to i, the firmware 13 saves the value of the ring j stored in the general-purpose register 11 into the control memory 15, and the control memory 15
Load the value in ring i into general register 11.

【0026】[0026]

【発明の効果】以上説明したように、本発明では、汎用
レジスタに変更されたリングモードのカレント値を記憶
するので、計算機の処理効率を向上するとともに、ディ
スパッチ禁止を防止して、計算機の性能の向上を実現で
きる。
As described above, according to the present invention, since the changed ring mode current value is stored in the general-purpose register, the processing efficiency of the computer is improved and the dispatch inhibition is prevented to improve the performance of the computer. Can be improved.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の記憶保護のリング保護方式に係る一実
施例を示す概略図である。
FIG. 1 is a schematic diagram showing an embodiment of a ring protection system for storage protection of the present invention.

【図2】リング保護方式を示す図である。FIG. 2 is a diagram showing a ring protection system.

【図3】本発明の動作を示す図である。FIG. 3 is a diagram showing an operation of the present invention.

【図4】本発明の動作を示すフローチャートである。FIG. 4 is a flowchart showing the operation of the present invention.

【図5】本発明の適用例を示す図である。FIG. 5 is a diagram showing an application example of the present invention.

【符号の説明】[Explanation of symbols]

1,15 制御記憶 3,11 汎用レジスタ 5,13 ファームウェア 1,15 Control memory 3,11 General-purpose register 5,13 Firmware

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 プログラムに与えられる保護情報のリン
グモードと、このリングモードでのカレント値の示すプ
ログラムを実行する記憶保護のリング保護方式におい
て、 前記リングモード毎のカレント値を記憶する制御記憶
と、 この制御記憶に記憶されているリングモードのうち、プ
ログラムの実行を示すカレント値のリングモードを記憶
する汎用レジスタと、 前記リングモードが変更されると前記汎用レジスタに記
憶されているカレント値を前記制御記憶に退避し、当該
制御記憶に記憶されている変更されるリングモードのカ
レント値を当該汎用レジスタにロードする手段と、 を備えたことを特徴とする記憶保護のリング保護方式。
1. A ring mode of protection information given to a program, and a ring protection system of memory protection for executing a program indicated by a current value in the ring mode, wherein a control memory for storing a current value for each ring mode is provided. Of the ring modes stored in this control memory, a general-purpose register that stores the ring mode of the current value that indicates the execution of the program, and a current value that is stored in the general-purpose register when the ring mode is changed, A ring protection system for storage protection, comprising: means for saving the current value of the changed ring mode stored in the control memory into the general-purpose register, the means being for saving.
JP01089692A 1992-01-24 1992-01-24 Ring protection method of memory protection Expired - Fee Related JP3274872B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01089692A JP3274872B2 (en) 1992-01-24 1992-01-24 Ring protection method of memory protection

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01089692A JP3274872B2 (en) 1992-01-24 1992-01-24 Ring protection method of memory protection

Publications (2)

Publication Number Publication Date
JPH05204764A true JPH05204764A (en) 1993-08-13
JP3274872B2 JP3274872B2 (en) 2002-04-15

Family

ID=11763068

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01089692A Expired - Fee Related JP3274872B2 (en) 1992-01-24 1992-01-24 Ring protection method of memory protection

Country Status (1)

Country Link
JP (1) JP3274872B2 (en)

Also Published As

Publication number Publication date
JP3274872B2 (en) 2002-04-15

Similar Documents

Publication Publication Date Title
US5386563A (en) Register substitution during exception processing
US4794522A (en) Method for detecting modified object code in an emulator
US6209085B1 (en) Method and apparatus for performing process switching in multiprocessor computer systems
JP2776132B2 (en) Data processing system with static and dynamic masking of information in operands
EP0217168B1 (en) Method for processing address translation exceptions in a virtual memory system
JPH04137046A (en) Operating system for electronic computer
JPH0855028A (en) Microprocessor
US20050044292A1 (en) Method and apparatus to retain system control when a buffer overflow attack occurs
JP2004157636A (en) Data processing apparatus
US6895583B1 (en) Task control block for a computing environment
US7523455B2 (en) Method and system for application managed context switching
US7680999B1 (en) Privilege promotion based on check of previous privilege level
US6785883B1 (en) Software system for tracing data
JPH05204764A (en) Ring protecting system for memory protect
JP2671160B2 (en) Exception handling method
CN100361105C (en) Method and apparatus for recovering access environment setting-up in interrupt processing
JP2000029690A (en) Method and device for data processing
WO1990005951A1 (en) Method of handling unintended software interrupt exceptions
JPS62126448A (en) Memory control and protection system
JPH05181703A (en) Data processor
JPH036644A (en) Storage protection system
JPS6195464A (en) Data protecting system
KR20090092923A (en) Method and Apparatus for extension and prevention stack for computer system
US20070074013A1 (en) Dynamic retention of hardware register content in a computer system
JPS6394339A (en) Virtual calculation system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees