JPS607819B2 - information processing equipment - Google Patents

information processing equipment

Info

Publication number
JPS607819B2
JPS607819B2 JP117178A JP117178A JPS607819B2 JP S607819 B2 JPS607819 B2 JP S607819B2 JP 117178 A JP117178 A JP 117178A JP 117178 A JP117178 A JP 117178A JP S607819 B2 JPS607819 B2 JP S607819B2
Authority
JP
Japan
Prior art keywords
register
address
zero
displacement
base
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.)
Expired
Application number
JP117178A
Other languages
Japanese (ja)
Other versions
JPS5494840A (en
Inventor
健治 林
博男 宮寺
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP117178A priority Critical patent/JPS607819B2/en
Publication of JPS5494840A publication Critical patent/JPS5494840A/en
Publication of JPS607819B2 publication Critical patent/JPS607819B2/en
Expired legal-status Critical Current

Links

Landscapes

  • Storage Device Security (AREA)

Description

【発明の詳細な説明】 この発明は、情報処理装置に関し、特に主記憶装置上の
特定領域の保護に関するものである。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an information processing device, and particularly to protection of a specific area on a main storage device.

従来の記憶保護は、次の様に行なわれるのが一般的であ
る。主記憶装置を例えば沙旧単位に分割し、それぞれに
対応したキーを持ち、又処理装置側にも1つのキーを割
当て、処理情報が主記憶装置をアクセスするときには、
処理装置のキーと主記憶装置上のキーとを比較すること
によって主記憶装置の保護を行なっていた。より具体的
には、ソフトウェアの基本的な部分であるオペレーティ
ングシステムの入る主記憶装置上のキーはゼロが割当て
られ、ユーザプログラムが走るユーザ領域の主記憶装置
上のキーはゼロ以外のキーが当てられる。また、処理装
置のキーは、一般にオペレーティングシステム等のシス
テムを管理するプログラムが走るときは、ゼロが割り当
てられユーザプログラムが走るときはそれぞれの領域と
同一キーが割当てられる。処理装置のキーがゼロのプロ
グラムはどの領域にもアクセスできることになっている
。このようにして、記憶保護が行なわれているが次の様
な問題点がある。処理装置のキーがゼロで走るプログラ
ムに対する保護ができないことである。つまり、オペレ
ーティングシステム等のシステムを管理するプログラム
にミスがあると、主記憶装置上の内容がこわされ、シス
テムダウンにつながることもある。特に、管理プログラ
ムの重要な部分が入っている主記憶装置上の低アドレス
領域(例えば0〜409句野地)が、プログラムミスに
よって破壊されると、システムダウンになるだけでなく
、その後の原因究明にも重大な支障をきたすことにもな
る。主記憶装置上の低アドレス領域(0番地からディス
プレースメントで表わせる最大アドレスまで)の保護に
ついて考えてみると、本領域にアクセスできる方法法と
して2通りが可能である。つまりベースレジスタとして
ゼロ番を指定(ゼロ番を指定したときは、ゼロ番レジス
タの内容ではなく、ゼロという値をベースレジスタの内
容として扱う)し、ディスプレースメントのみでアドレ
スする方法と、ゼロ番以外を指定し、本レジスタの内容
とディスプレースメントを加えた値を低アドレス領域ア
ドレス以内にする方法である。オペレーティングシステ
ム等のシステムを管理するプログラムは、前者の方法つ
まり、ディスプレースメントのみでアクセスできる低領
域アドレスのアクセスに関しては、ベースレジスタとし
てゼロ番を使用し、ディスプレースメントのみでアドレ
スを指定し、ベースレジスタとして使用するレジスタの
内容は、常にディスプレースメントで表わせる最大アド
レスより大きな値を入れて使用している。しかし、オペ
レーティングシステム等のシステムを管理するプログラ
ムのミスによって、ベースレジスタの内容を破壊し、そ
の値がディスプレースメントで表わせる最大アドレスよ
り小さい値になるともあり、このことによって低アドレ
ス領域が破壊される可能性がある。この発明の目的をす
るところは、前記の如き従来の問題点を除去するもので
あり、低アドレス領域の保護をするという効果を有する
情報処理装置を提供することにある。
Conventional memory protection is generally performed as follows. For example, the main storage device is divided into old units, each has a corresponding key, and one key is also assigned to the processing device side, and when processing information accesses the main storage device,
The main memory was protected by comparing the processing unit's key with the key on the main memory. More specifically, the keys on the main memory that contain the operating system, which is a fundamental part of the software, are assigned zero, and the keys on the main memory of the user area where the user program runs are assigned keys other than zero. It will be done. Furthermore, when a program for managing a system such as an operating system is run, zero is generally assigned to the key of the processing device, and when a user program is run, the same key as the respective area is assigned. A program with a processor key of zero can access any area. Although memory protection is performed in this way, there are the following problems. There is no protection against programs running with the processor key zero. In other words, if there is a mistake in a program that manages a system, such as an operating system, the contents on the main storage device may be corrupted, leading to a system failure. In particular, if the low address area (for example, 0 to 409 clause field) on the main memory that contains important parts of the management program is destroyed due to a program error, not only will the system go down, but the cause will have to be investigated afterwards. It can also cause serious problems. Considering the protection of the low address area (from address 0 to the maximum address that can be expressed by displacement) on the main memory, there are two possible methods for accessing this area. In other words, there are two methods: specifying number zero as the base register (when specifying number zero, the value zero is treated as the content of the base register, not the contents of register number zero), and addressing only by displacement, and This method specifies the value of the contents of this register plus the displacement to be within the low address area address. Programs that manage systems such as operating systems use the former method, that is, when accessing low area addresses that can be accessed only by displacement, use number zero as the base register, specify the address by displacement only, and use the base register. The contents of the registers used as is always a value larger than the maximum address that can be expressed by displacement. However, due to a mistake in the program that manages the system, such as the operating system, the contents of the base register may be destroyed, resulting in a value that is smaller than the maximum address that can be expressed by displacement, and this may destroy the low address area. There is a possibility that An object of the present invention is to provide an information processing apparatus which eliminates the above-mentioned conventional problems and has the effect of protecting a low address area.

この発明の特徴とするところは、アドレス生成時、ベー
スレジスタとして、ゼロ番以外のレジスタが指定され、
そのレジスタの内容が、ディスプレースメントで指定で
きる最大より小さいことを検出し、ゼロ番のベースレジ
スタとディスプレースメントとで指定できる主記憶装置
上の低アドレス領域の保護を行なうことである次に本発
明の一実施例につき、図面を用いて詳細に説明する。
The feature of this invention is that when generating an address, a register other than number zero is specified as the base register,
The present invention detects that the content of the register is smaller than the maximum value that can be specified by the displacement, and protects the low address area on the main memory that can be specified by the zero base register and the displacement. One embodiment will be described in detail with reference to the drawings.

第1図は、データの所在を示す命令形式の一部を例示し
たものであり、この命令では、データの所在はB(ベー
スレジスタ番号)、○(ディスプレースメント)に依っ
て規定される。Bの示すレジス夕の内容を(B)とすれ
ば、主記憶装置上のアドレスは{(B)+D}と表わさ
れる。第2図は、本発明の一実施例である情報処理装置
と従来のアドレス作成装置の一例を示した図である。こ
こで例えば、32ビットを単位として演算機能が構成さ
れており、ディスプレースメントが12ビットで表わさ
れているとする。命令はメモリ7から読み出されて図示
されない命令処理ユニットへ送られる。次に、アドレス
作成過程について簡単に説明する。
FIG. 1 shows part of an example of an instruction format indicating the location of data. In this instruction, the location of data is defined by B (base register number) and O (displacement). If the contents of the register indicated by B are (B), then the address on the main storage device is expressed as {(B)+D}. FIG. 2 is a diagram showing an example of an information processing device that is an embodiment of the present invention and a conventional address generation device. For example, assume that the arithmetic function is configured in units of 32 bits, and the displacement is expressed in 12 bits. Instructions are read from memory 7 and sent to an instruction processing unit (not shown). Next, the address creation process will be briefly explained.

まず命令処理ユニットからD(ディスプレースメント)
がBUS−Aを通ってレジスタBIOにセットされる。
もちろんDは12ビットであるので先頭の20ビットは
ゼロがセットされる。次に第11図B(ベースレジスタ
番号)によって指定された汎用レジスタの内容(B)が
、BUS−Aを通ってレジスタA9に送られる。次にレ
ジスタA9としジスタBIOとが32ビット加算器11
に送られ、演算結果がレジスタCI2にセットされる。
レジスタCI2の内容はメモリアクセス時、メモリアド
レスレジスタ(MAR)8にセットされ、メモリアドレ
スを指定する。次に本発明で追加した装置について説明
する。
First, D (displacement) from the instruction processing unit.
is set in register BIO through BUS-A.
Of course, since D is 12 bits, the first 20 bits are set to zero. Next, the contents (B) of the general-purpose register designated by B (base register number) in FIG. 11 are sent to register A9 through BUS-A. Next, register A9 and register BIO are connected to 32-bit adder 11.
and the operation result is set in register CI2.
The contents of register CI2 are set in memory address register (MAR) 8 at the time of memory access to designate a memory address. Next, a device added in the present invention will be explained.

検出器1は、汎用レジスタのゼロ番以外が指定されたこ
とを検出する検出器である。AND回路2は、上記検出
器1の出力と、現汎用レジスタアクセスがベースレジス
タとしてのアクセスであることを示す制御信号5とのA
NDをとる回路である。検出器3は、レジスタA9の内
容の8〜19ビットがゼロかどうかを検出する検出器で
ある(メモリアドレスを24ビットに考えた場合)。A
ND回路4は、上記検出器3の出力と、AND回路2の
出力とのANDをとる回路であり、条件成立時、エラー
信号6を出力する。次にこれらの装置の、アドレス生成
時にける動作を記述する。
Detector 1 is a detector that detects that a general-purpose register other than number zero is designated. An AND circuit 2 combines the output of the detector 1 and a control signal 5 indicating that the current general-purpose register access is an access as a base register.
This is a circuit that takes ND. The detector 3 is a detector that detects whether the 8th to 19th bits of the contents of the register A9 are zero (assuming the memory address is 24 bits). A
The ND circuit 4 is a circuit that ANDs the output of the detector 3 and the output of the AND circuit 2, and outputs an error signal 6 when a condition is satisfied. Next, the operations of these devices during address generation will be described.

アドレス生成時ゼロ番以外の汎用レジスタが指定され、
制御信号5によってベースレジスタであることが示され
ると、AND回路2から制御信号が出され、本汎用レジ
スタの内容がレジスタA9にセットされると、検出器3
は、レジスタA9の内容の8〜19ビットがゼロかどう
かを検出(0〜4KBの領域内かどうかを検出)し、A
ND回路4によってエラー信号6が出され、エラーであ
ることがわかる。このエラー信号6によってメモリに対
するアクセスが禁止され、記憶保護が達成できる。以上
述べた如き構成であるから、本発明にあっては、次の如
き効果が得られる。
When generating an address, a general-purpose register other than number zero is specified,
When the control signal 5 indicates that it is a base register, a control signal is output from the AND circuit 2, and when the contents of this general-purpose register are set in register A9, the detector 3
detects whether bits 8 to 19 of the contents of register A9 are zero (detects whether they are within the 0 to 4 KB area), and
An error signal 6 is output by the ND circuit 4, indicating that an error has occurred. Access to the memory is prohibited by this error signal 6, and memory protection can be achieved. Since the configuration is as described above, the following effects can be obtained in the present invention.

1 低アドレス領域の保護ができる。1. Low address area can be protected.

2 レジスタの不当な使われ方に対するチェックができ
る。
2. Be able to check for improper use of registers.

(ベースレジスタとして使用される汎用レジスタの値は
、ディスプレースメントで表現できる最大値より大きく
なければならないことのチェック)上記1のみを考える
ならば、ベースレジスタの内容とディスプレースメント
を加えた後に、ディスプレースメントで表現できる最大
値より小さいかどうかのチェックと、このアドレスがゼ
ロ番レジスタをベースレジスタとして使ったかどうかを
チェックすることにより、低アドレス領域の保護は可能
であるが、上記2を行なうためには、主記憶装置のアド
レスを作成する前にベースレジスタとなる汎用レジスタ
の内容をチェックする必要がある。
(Check that the value of a general-purpose register used as a base register must be larger than the maximum value that can be expressed by displacement) If we consider only 1 above, after adding the contents of the base register and displacement, It is possible to protect the low address area by checking whether the address is smaller than the maximum value that can be expressed in the statement and whether this address uses the zeroth register as the base register. needs to check the contents of the general-purpose register that serves as the base register before creating the main memory address.

図面の簡単な説明第1図は、データの所在を示す命令形
式の一部を示す図、第2図は、本発明の一実施例を示す
ブロック図である。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram showing part of an instruction format indicating the location of data, and FIG. 2 is a block diagram showing an embodiment of the present invention.

符号の説明、1,3・・・・・・検出回路、2,4…・
・・AND回路、5…・・・制御信号、6・・・・・・
エラー信号、7……メモリ、8……メモリアドレスレジ
スタ、9,10,12……レジスタ、11……加算器。
Explanation of symbols, 1, 3...detection circuit, 2, 4...
...AND circuit, 5...Control signal, 6...
Error signal, 7...Memory, 8...Memory address register, 9, 10, 12...Register, 11...Adder.

オー図矛2図O Zuko 2

Claims (1)

【特許請求の範囲】[Claims] 1 プログラムの基点となる番地を示すベースレジスタ
と、その基点からデイスプレースメントとを用いて番地
を表わす処理装置で、特にベースレジスタ番号としてゼ
ロ番を指定したときに、ゼロ番レジスタの内容ではなく
、ゼロという値をベースレジスタの内容として扱う番地
作成方式の処理装置において、アドレス生成時、ベース
レジスタとして、ゼロ番以外のレジスタが指定されたこ
とを検出する装置と、該レジスタの内容が、デイスプレ
ースメントで指定できる最大値より小さいことを検出す
る装置とを備え、ゼロ番のベースレジスタとデイスプレ
イスメントとで指定できる主記憶装置上のアドレス領域
に対して、上記装置によって、ベースレジスタとしてゼ
ロ番レジスタ以外のレジスタで該領域をアクセスするこ
とを検出し、該領域の保護を行なうことを特徴とする情
報処理装置。
1 A processing device that expresses an address using a base register that indicates the address that is the base point of a program and a displacement from that base point. In particular, when number zero is specified as the base register number, , in an address creation method processing device that treats the value zero as the content of the base register, there is a device that detects that a register other than zero is specified as the base register when generating an address, and a device that detects that a register other than zero is specified as the base register when generating an address, and and a device that detects that the value is smaller than the maximum value that can be specified by the displacement, and the device detects the address area in the main memory that can be specified by the base register numbered zero and the displacement. An information processing device that detects access to the area using a register other than the register and protects the area.
JP117178A 1978-01-11 1978-01-11 information processing equipment Expired JPS607819B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP117178A JPS607819B2 (en) 1978-01-11 1978-01-11 information processing equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP117178A JPS607819B2 (en) 1978-01-11 1978-01-11 information processing equipment

Publications (2)

Publication Number Publication Date
JPS5494840A JPS5494840A (en) 1979-07-26
JPS607819B2 true JPS607819B2 (en) 1985-02-27

Family

ID=11493977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP117178A Expired JPS607819B2 (en) 1978-01-11 1978-01-11 information processing equipment

Country Status (1)

Country Link
JP (1) JPS607819B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04261657A (en) * 1991-02-15 1992-09-17 Masaki Takahashi Turning motion apparatus for front arm

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01159748A (en) * 1987-12-16 1989-06-22 Fujitsu Ltd Storage protection system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04261657A (en) * 1991-02-15 1992-09-17 Masaki Takahashi Turning motion apparatus for front arm

Also Published As

Publication number Publication date
JPS5494840A (en) 1979-07-26

Similar Documents

Publication Publication Date Title
US10810309B2 (en) Method and system for detecting kernel corruption exploits
US8028341B2 (en) Providing extended memory protection
US20050086517A1 (en) Page granular curtained memory via mapping control
US8954695B1 (en) Secure pool memory management
KR940003325B1 (en) Virtual input/output commands
JP4295111B2 (en) Memory management system and memory access security grant method based on linear address
JP2678183B2 (en) Digital processor controller and method for runtime memory allocation
US20080077767A1 (en) Method and apparatus for secure page swapping in virtual memory systems
EP0472487A2 (en) Apparatus and method for controlling access to data using domains
Namjoo et al. Watchdog processors and capability checking
JPS6248258B2 (en)
CA1085517A (en) Hardware control storage area protection method and means
KR100791815B1 (en) Privilege promotion based on check of previous privilege level
JPS607819B2 (en) information processing equipment
JPS599937B2 (en) information processing equipment
GB1585960A (en) Information flow security mechanisms for data processing systems
CN111868722A (en) Processor with hardware supported memory buffer overflow detection
JP3120606B2 (en) Address generation processing method
Hwang et al. AppWatch: detecting kernel bug for protecting consumer electronics applications
JPS6035694B2 (en) Main memory protection method
CN115315691A (en) Verifying integrity of address translation
JP2868209B2 (en) Memory protection device in multiprocessor system
Landwehr et al. A framework for evaluating computer architectures to support systems with security requirements, with applications
JPS6054691B2 (en) Memory protection method for information processing equipment
JP2796162B2 (en) Instruction processing method