JPH0420214B2 - - Google Patents

Info

Publication number
JPH0420214B2
JPH0420214B2 JP56203945A JP20394581A JPH0420214B2 JP H0420214 B2 JPH0420214 B2 JP H0420214B2 JP 56203945 A JP56203945 A JP 56203945A JP 20394581 A JP20394581 A JP 20394581A JP H0420214 B2 JPH0420214 B2 JP H0420214B2
Authority
JP
Japan
Prior art keywords
address
interrupt
input
program
data
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 - Lifetime
Application number
JP56203945A
Other languages
Japanese (ja)
Other versions
JPS58105319A (en
Inventor
Tsuneo Yamaga
Masami Hoshino
Mikio Morita
Shuichi Toyoda
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.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co 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 Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP56203945A priority Critical patent/JPS58105319A/en
Publication of JPS58105319A publication Critical patent/JPS58105319A/en
Publication of JPH0420214B2 publication Critical patent/JPH0420214B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 本発明は電子計算機に接続された入出力装置の
操作方法に関し、特に入出力装置を操作する操作
プログラムの呼出し方法に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a method of operating an input/output device connected to a computer, and more particularly to a method of calling an operating program for operating the input/output device.

一般に中央処理装置に接続された入出力装置、
例えばCRTデイスプレイ、キーボード、プリン
タ等に、データを送出したり、データを取り込ん
だりする動作は操作プログラム(以下OSと言う)
に依つて行われる。このOSは第1図に示す如く、
入出力装置A又はBからの要求、及び各独立した
ユーザープログラムA,B、あるいはC、からの
要求に依つて呼び出すことが出来、OSの実行に
依り入出力装置A又はBのデータ送受、及びユー
ザープログラムA,BあるいはCの管理、例えば
ユーザープログラムAが待機中に他のユーザープ
ログラムBを実行する等、を行うものである。し
かし、OSをサブルーチン化し、ユーザープログ
ラムと同一レベルとすると、ユーザープログラム
に依つて指定されたOSのアドレスにジヤンプし
て、OSが実行されている時、例えばCRTデイス
プレイに表示すべきデータを送出している時に、
他の入出力装置、例えばキーボード等から割り込
み要求があると、OSは割り込み処理に依るプロ
グラムに呼び出され、動作途中で停止してしまう
不都合があつた。従つてプログラム、即ちソフト
ウエア、からのOS要求と入出力装置、即ちハー
ドウエア、からのOS要求を一元化し、同一レベ
ルとし取り扱う必要がある。又、従来、上記不都
合を解決するため、入出力装置からの割込み要求
もしくはプログラムからの要求を受付けたとき、
CPUが自動的に割込み禁止フラグをセツトし、
該フラグに基づきメモリー障害等の緊急割込みを
除く全ての割込みを、ハード的に禁止するものも
あつたが、このような方法をとるためには、割込
み受付時に自動的に割込み禁止フラグをセツトす
る機能を有するCPUを用い、且つ、OS実行時に
も割込みを有効とすべき緊急割込みのみは、割込
み禁止しないという、割込み禁止範囲を制限可能
なCPUもしくは割込み制御手段が必要であつた。
従つて、このようなCPU及び割込み制御手段を
用いないシステムでは、この方法によるOS呼出
しを行うことは不可能であつた。
an input/output device, typically connected to a central processing unit;
For example, the operation program (hereinafter referred to as OS) that sends data to and imports data to a CRT display, keyboard, printer, etc.
It is carried out depending on the This OS is as shown in Figure 1.
It can be called in response to a request from input/output device A or B, and a request from each independent user program A, B, or C, and data transmission and reception of input/output device A or B is performed depending on the execution of the OS. It manages user programs A, B, or C, such as executing another user program B while user program A is on standby. However, if the OS is made into a subroutine and placed at the same level as the user program, it will jump to the OS address specified by the user program and send data to be displayed on a CRT display, for example, while the OS is running. When you are
When an interrupt request is received from another input/output device, such as a keyboard, the OS is called by a program that handles the interrupt, causing the OS to stop mid-operation. Therefore, it is necessary to unify OS requests from programs, ie, software, and OS requests from input/output devices, ie, hardware, and treat them at the same level. Conventionally, in order to solve the above-mentioned inconvenience, when accepting an interrupt request from an input/output device or a request from a program,
The CPU automatically sets the interrupt disable flag and
There are some methods that prohibit all interrupts except emergency interrupts such as memory failures based on the flag, but in order to use this method, the interrupt disable flag must be automatically set when an interrupt is accepted. There was a need for a CPU or interrupt control means that could limit the scope of interrupt prohibition, using a CPU with the necessary functions, and not disabling only emergency interrupts that should be enabled even when the OS is running.
Therefore, in a system that does not use such a CPU and interrupt control means, it is impossible to call the OS using this method.

勿論、OS実行中に入出力装置からの割込みを
受付けるようにすることも不可能ではないが、こ
の場合は、種々のレジスタ等の記憶内容を保持す
るために、OSを複雑なリエントランス構造にし
なければならないという問題がある。
Of course, it is not impossible to accept interrupts from input/output devices while the OS is running, but in this case, the OS must have a complex re-entrance structure in order to maintain the memory contents of various registers, etc. The problem is that it has to be done.

本発明は上述した点に鑑みて為されたものであ
り、操作プログラム、即ちOSをメモリー障害等
の緊急割込みを除く割込みの中で最優先の割り込
みに依る処理とし、ソフトウエアに依つて割り込
みが生じる様にすると共にハードウエアからの
OS要求は、二段階の割り込みに依つて実行され
る様にした操作プログラム呼出し方法を提供す
る。以下、図面を参照して本発明を詳述する。
The present invention has been made in view of the above-mentioned points, and the operating program, that is, the OS, is configured to perform processing based on the interrupt with the highest priority among interrupts other than emergency interrupts such as memory failures, and the interrupt is handled by software. from the hardware as well as from the hardware.
OS requests provide a method for calling operating programs that are executed via two-stage interrupts. Hereinafter, the present invention will be explained in detail with reference to the drawings.

第2図は本発明の実施例を示すブロツク図であ
り、1は中央処理装置(CPU)、2は主メモリ、
3,4は入出力装置、5,6はインターフエイ
ス、7はアドレス検出手段、8は割り込み制御手
段である。
FIG. 2 is a block diagram showing an embodiment of the present invention, in which 1 is a central processing unit (CPU), 2 is a main memory,
3 and 4 are input/output devices, 5 and 6 are interfaces, 7 is an address detection means, and 8 is an interrupt control means.

CPU1はALU、インストラクシヨンレジスタ、
プログラムカウンタ、メモリアドレスレジスタ等
から成り、主メモリ2のアドレスを指定するアド
レスデータをアドレバス9に送出し、主メモリ2
とメモリデータバス10を介して接続されてい
る。主メモリ2はRAMであり、磁気デイスク、
磁気テープ等に記憶されているプログラムが予め
転送され、記憶されている。主メモリ2のアドレ
スはアドレスバス9に送出されたアドレスデータ
でアクセスされ、そのアドレスに記憶されたイン
ストラクシヨンコードをメモリデータバス10に
送出したり、あるいはメモリデータバス10に送
出されたデータを記憶する。CPU1に接続され
たデータバス11には、各々インターフエイス
5,6を介して入出力装置3,4が接続され、入
出力装置3は例えば、CRTデイスプレイであり、
入出力装置4は、例えばキーボードである。イン
ターフエイス5,6は各々に接続された入出力装
置3,4を制御する制御回路及びメモリ等を内蔵
したものである。
CPU1 is ALU, instruction register,
It consists of a program counter, a memory address register, etc., and sends address data specifying the address of the main memory 2 to the address bus 9.
and is connected via a memory data bus 10. The main memory 2 is RAM, a magnetic disk,
A program stored on a magnetic tape or the like is transferred and stored in advance. The address of the main memory 2 is accessed by address data sent to the address bus 9, and the instruction code stored at that address is sent to the memory data bus 10, or the data sent to the memory data bus 10 is accessed. Remember. Input/output devices 3 and 4 are connected to the data bus 11 connected to the CPU 1 via interfaces 5 and 6, respectively, and the input/output device 3 is, for example, a CRT display.
The input/output device 4 is, for example, a keyboard. The interfaces 5 and 6 have built-in control circuits and memories for controlling the input/output devices 3 and 4 connected thereto.

アドレス検出手段7は、アドレスバス9に送出
されたアドレスデータが主メモリ2の特定のアド
レス、例えば00−77(OCT)、をアクセスするア
ドレスデータであることを検出し、優先度の高い
割込み信号INT0を出力する、と共に、主メモ
リ2の特定アドレス、例えば05(OCT)番地をア
クセスするデータをCPU1に印加する。割込み
制御手段8には割込み信号INTT0の他に、各イ
ンターフエイス5,6から割込み信号INT1及
びINT2が印加されている。割込み制御手段8
は割込み信号INT0,1,2の優先順位を決定
すると共にCPU1に割込みを要求する。また割
込み制御手段8は、ある割込みが発生している場
合、その割込みより優先順位の低い割込み要求が
あつた場合には、割込みを受付けず、その割込み
を要求しているインターフエイス5,6等を待機
状態にする。CPU1は割込みを受付けると、プ
ログラムカウンタのデータを保持し、アドレス検
出手段7の出力及びデータバス11をメモリアド
レスレジスタに接続し、その出力をアドレスバス
9に送出する。即ち割込みが受付けられると、そ
の割込みが受付けられたものだけから出力される
アドレスデータを主メモリ2に印加する。インタ
ーフエイス5,6は各々、割込みが受付けられた
ときに、インターフエイス5,6に各々予め定め
られたアドレスデータを、データバス11に出力
するものであり、そのアドレスデータはアドレス
検出手段7に依つて検出される特定アドレス、00
−77(OCT)の範囲内の一つをアクセスし、その
アドレスを入口としてOSの要求が行なわれる。
The address detection means 7 detects that the address data sent to the address bus 9 is address data for accessing a specific address of the main memory 2, for example, 00-77 (OCT), and outputs a high-priority interrupt signal. At the same time as outputting INT0, data for accessing a specific address in the main memory 2, for example address 05 (OCT), is applied to the CPU 1. In addition to the interrupt signal INTT0, interrupt signals INT1 and INT2 are applied to the interrupt control means 8 from the respective interfaces 5 and 6. Interrupt control means 8
determines the priority of interrupt signals INT0, INT0, INT2, and requests an interrupt to CPU1. In addition, when a certain interrupt occurs, the interrupt control means 8 does not accept the interrupt if there is an interrupt request with a lower priority than that interrupt, and the interface 5, 6, etc. requesting the interrupt does not accept the interrupt. into standby mode. When the CPU 1 receives an interrupt, it holds the data of the program counter, connects the output of the address detection means 7 and the data bus 11 to the memory address register, and sends the output to the address bus 9. That is, when an interrupt is accepted, address data output from only those for which the interrupt has been accepted is applied to the main memory 2. Each of the interfaces 5 and 6 outputs predetermined address data to the data bus 11 when an interrupt is accepted, and the address data is sent to the address detection means 7. Specific address detected, 00
-77 (OCT) is accessed, and an OS request is made using that address as the entry point.

第3図は第2図に示した主メモリ2の割付けの
例を示す表であり、アドレスは8進数(OCT)
で示される。アドレス検出手段7で検出される00
(OCT)〜77(OCT)までには、操作プログラム
OSを要求する入出力装置やユーザープログラム
等に対して、優先順に必要とするプログラムの入
口が割当られ、OSの入口は05番地が割当られて
いる。また00番地から04番地までにはOSよりも
優先順位の高いもの、例えば緊急プログラム等
が、また20番地にはインターフエイス5に、30番
地にはインターフエイス6に、更に77番地にはユ
ーザープログラムに割当られている。一方、100
番地以降には操作プログラムOS、インターフエ
イス5,6に対するプログラム、あるいはユーザ
ープログラム等が割当られている。
Figure 3 is a table showing an example of the allocation of the main memory 2 shown in Figure 2, and the addresses are in octal numbers (OCT).
It is indicated by. 00 detected by address detection means 7
(OCT) to 77 (OCT), the operating program
For input/output devices, user programs, etc. that require an OS, the necessary program entrances are assigned in order of priority, and the OS entrance is assigned address 05. Also, from addresses 00 to 04, there are things with higher priority than the OS, such as emergency programs, and at address 20, there is interface 5, at address 30, interface 6, and at address 77, there is a user program. is assigned to. On the other hand, 100
After the address, an operating program OS, programs for the interfaces 5 and 6, user programs, etc. are assigned.

次に第2図及び第3図を参照して動作を説明す
る。
Next, the operation will be explained with reference to FIGS. 2 and 3.

先ずユーザープログラムに依つて操作プログラ
ムOSを要求する場合、例えばCPU1に所定の処
理をさせ、その結果を入出力装置3に出力し、
CRTデイスプレイで表示させる場合、ユーザー
プログラム中のジヤンプサブルーチン命令
「JSB77(I)」を実行させる。するとCPU1はプ
ログラムカウンタのカウント内容を保持し、また
ジヤンプサブルーチン命令のインストラクシヨン
コードで指定される「77」を指すデータを、メモ
リアドレスレジスタにセツトし、アドレスバス9
に送出する。主メモリ2の77番地にはサブルーチ
ン「N」のアドレスが記憶されており、そのアド
レスデータがメモリデータバス10を介して、
CPU1のメモリアドレスレジスタにセツトされ、
アドレスバス9に送出されるので、主メモリ2の
N番地がアクセスされる。このN番地はブランク
であり、命令コードは何も記憶されておらず、
「JSB77(I)」の実行に依り、先にプログラムカ
ウンタに保持されたデータ、即ちジヤンプ前のユ
ーザープログラムの番地「1」が加算されたデー
タが、N番地に記憶される。またN+1番地に
は、プログラムの進行を停止し、動作を保持する
命令が記憶されており、プログラムはN+1番地
で停止している。
First, when requesting the operating program OS by a user program, for example, the CPU 1 is caused to perform a predetermined process, the result is output to the input/output device 3,
When displaying on a CRT display, the jump subroutine instruction "JSB77 (I)" in the user program is executed. Then, CPU 1 retains the count contents of the program counter, sets data pointing to "77" specified by the instruction code of the jump subroutine instruction in the memory address register, and transfers the data to the address bus 9.
Send to. The address of subroutine "N" is stored at address 77 in the main memory 2, and the address data is transmitted via the memory data bus 10.
is set in the memory address register of CPU1,
Since the data is sent to the address bus 9, address N of the main memory 2 is accessed. This address N is blank and no instruction code is stored.
By executing "JSB77(I)", the data previously held in the program counter, that is, the data to which address "1" of the user program before jumping is added, is stored at address N. Further, at address N+1, an instruction to stop the progress of the program and maintain its operation is stored, and the program is stopped at address N+1.

一方「JSB77(I)」の実行に依り、アドレスバ
ス9に77番地を示すデータが送出されると、アド
レス検出手段7は割込み要求INT0を割込み制
御手段8に出力する。割込み制御手段8はINT
0より優先度の高い割込み要求がない場合には、
CPU1に割込みを要求する。この要求はCPU1
がN+1番地の命令を実行して、プログラムが停
止しているとき受付けられ、割込み処理に入る。
このときCPU1はプログラムカウンタにN+1
番地のデータを保持し、アドレス検出手段7から
出力される主メモリ2の05番地をアクセスするデ
ータをメモリアドレスレジスタを介して、アドレ
スバス9に送出する。主メモリ2の05番地にはジ
ヤンプ命令「JSBK」が記憶されており、
「JSBK」の実行に依り、プログラムは主メモリ
2のK番地にジヤンプする。K番地は前述と同様
ブランクであり、K番地には「JSBK」の実行に
依り、プログラムカウンタに保持されたアドレス
N+1、即ちOS処理後、次に実行するべきアド
レスデータが記憶される。そしてK+1番地以降
には要求される操作プログラムOSが記憶され、
このOSの実行に依り、ユーザープログラムで要
求する動作、例えばインターフエイス5にCPU
1で処理したデータを送出し、入出力装置3の
CRTデイスプレイに表示させる等の動作を行な
うことができる。
On the other hand, when data indicating address 77 is sent to the address bus 9 by execution of "JSB77(I)", the address detection means 7 outputs an interrupt request INT0 to the interrupt control means 8. Interrupt control means 8 is INT
If there is no interrupt request with priority higher than 0,
Request an interrupt to CPU1. This request is CPU1
executes the instruction at address N+1 and is accepted when the program is stopped and enters interrupt processing.
At this time, CPU1 writes N+1 to the program counter.
It holds address data and sends data output from the address detection means 7 for accessing address 05 of the main memory 2 to the address bus 9 via the memory address register. A jump instruction “JSBK” is stored at address 05 of main memory 2.
By executing "JSBK", the program jumps to address K in main memory 2. Address K is blank as described above, and address N+1 held in the program counter by executing "JSBK", that is, address data to be executed next after OS processing, is stored at address K. The required operating program OS is stored from address K+1 onwards.
Depending on the execution of this OS, the operations requested by the user program, such as the CPU
The data processed in step 1 is sent to input/output device 3.
Operations such as displaying on a CRT display can be performed.

OSのプログラムの最後にはリターン命令
「RET」が実行されるが、この命令に依り、N番
地に記憶された番地、即ちユーザープログラムに
リターンする。
At the end of the OS program, a return command "RET" is executed, which causes the program to return to the address stored at address N, ie, to the user program.

次にハードウエアからの割込み要求の場合、例
えばインターフエイス5から割込み要求INT1
があつたとき、割込み要求INT1より優先順位
の高い要求がなければ、割込み制御手段8は割込
み要求INT1を受付け、CPU1に割込みを要求
する。CPU1が割込みを受付けると、プログラ
ムの実行が停止され、その時のプログラムのアド
レスがプログラムカウンタに保持されると共に、
データバス11はメモリアドレスレジスタに接続
される。一方割込み要求INT1が受付けられる
と、インターフエイス5は予め定められたアドレ
スデータ、即ち20番地をアクセスするデータを送
出するので、このアドレスデータはメモリアドレ
スレジスタを介してアドレスバス9に送出され、
主メモリ2の20番地がアクセスされる。20番地に
はジヤンプ命令「JSBL」が記憶されており、
「JSBL」の実行に依り、主メモリ2のL番地が
アクセスされると共に、ブランクとなつているL
番地にはプログラムカウンタに保持された割込み
前のアドレスデータに1が加算されたものが記憶
される。またL+1番地にはプログラムの進行を
停止する命令が記憶されていて、L+1番地の実
行に依りプログラムの進行が停止している。以上
が割込み要求INT1に依る割込み処理である。
Next, in the case of an interrupt request from hardware, for example, interrupt request INT1 from interface 5.
If there is no request with a higher priority than the interrupt request INT1, the interrupt control means 8 accepts the interrupt request INT1 and requests the CPU 1 to make an interrupt. When CPU1 accepts an interrupt, execution of the program is stopped, the address of the program at that time is held in the program counter, and
Data bus 11 is connected to memory address registers. On the other hand, when the interrupt request INT1 is accepted, the interface 5 sends predetermined address data, that is, data for accessing address 20, so this address data is sent to the address bus 9 via the memory address register.
Address 20 of main memory 2 is accessed. The jump instruction “JSBL” is stored at address 20,
By executing "JSBL", the L address of main memory 2 is accessed and the L address is blank.
At the address, 1 is added to the pre-interrupt address data held in the program counter and stored. Further, an instruction to stop the progress of the program is stored at address L+1, and the progress of the program is stopped by the execution of address L+1. The above is the interrupt processing based on the interrupt request INT1.

一方、20番地をアクセスするアドレスデータが
アドレスバス9に送出されたことを、アドレス検
出手段7が検出し、割込み要求INT1より優先
順位の高い割込み要求ITN0を出力する。この
割込み要求ITN0に依り、CPU1には更に割込
みがかかり、CPU1はプログラムカウンタに割
込み処理中のアドレス、即ちL+1番地をアクセ
スするデータを保持し、またアドレス検出手段7
から出力された05番地をアクスするデータをメモ
リアドレスレジスタを介してアドレスバス9に送
出する。05番地のジヤンプ命令「JSBK」の実行
に依り、K番地にはプログラムカウンタの内容に
「1」を加算したデータ、即ち「L+1番地を示
すアドレスデータが記憶され、その後操作プログ
ラムOSが実行される。
On the other hand, the address detection means 7 detects that address data accessing address 20 is sent to the address bus 9, and outputs an interrupt request ITN0 having a higher priority than the interrupt request INT1. In response to this interrupt request ITN0, an additional interrupt is applied to the CPU 1, and the CPU 1 holds data for accessing the address currently being processed for the interrupt, that is, address L+1, in the program counter, and the address detection means 7
The data accessing address 05 output from the memory address register is sent to the address bus 9 via the memory address register. By executing the jump instruction "JSBK" at address 05, data obtained by adding "1" to the contents of the program counter, that is, address data indicating address "L+1", is stored at address K, and then the operating program OS is executed. .

前述の場合と同様に、OSの最後にリターン命
令「RET」を実行すると、L番地に記憶された
番地、即ち割込み要求INT1がかかる前のアド
レスの次のアドレスにリターンして、その後のプ
ログラムが実行される。
Similarly to the above case, when the return instruction "RET" is executed at the end of the OS, the program returns to the address stored at address L, that is, the address next to the address before interrupt request INT1 was applied, and the subsequent program is executed. executed.

インターフエイス6からの割込み要求INT2
があつた場合にも、全く同様の動作を行なう。
Interrupt request INT2 from interface 6
Exactly the same operation is performed when there is a problem.

上述の動作に於いて、アドレス検出手段7は05
番地をアクセスするデータを送出するが、これは
アドレス検出手段7の出力が、ハードウエアの簡
素化のために、6ビツト出力となつているため、
77番地までしかアクセスできないので、05番地が
操作プログラムOSの入口として割当られている。
しかし、アドレス検出手段7の出力ビツトを増す
ことに依り、直接OSのアドレスをアクセスする
こともできる。
In the above operation, the address detection means 7 detects 05
Data for accessing the address is sent, but this is because the output of the address detection means 7 is a 6-bit output to simplify the hardware.
Since only address 77 can be accessed, address 05 is assigned as the entrance to the operating program OS.
However, by increasing the output bits of the address detection means 7, it is also possible to directly access the address of the OS.

上述の如く、00〜77(OCT)番地のいずれかが
アクセスされたことを検出し、優先度の高い割込
みを要求し、該割込み処理に於いて、操作プログ
ラムOSを実行させることに依り、ソフトウエア
からも、ハードウエアからもOSを呼び出すこと
ができ、更にOS実行中は入出力装置等からの割
込みを受付けることがないのである。従つてソフ
トウエアからのOS要求と、ハードウエアからの
OS要求とを一元化して取扱うことが可能となる
ものである。依つて、プログラムからの要求に応
じて実行すべきOS部分と、各入出力装置からの
割込み要求に応じて実行すべき各々のOS部分と
を、各々、別個のプログラムとして構成する必要
がなくなり、複数のOS部分における同一処理ル
ーチンを共通化して、各OS部分をひとまとめと
しても、OSの実行による動作が途中で停止する
ことはなく確実な動作が行え、従つて、OSを小
型化することが可能となる。更に、OS実行中に
入出力装置からの割込みを受け付けることがない
ので、OSを複雑なリエントランス構造にする必
要がなく、OSのプログラム自体が簡素化できる。
特に、CPUが割込み受付時に自動的に割込み禁
止フラグをセツトする機能を有さなかつたり、あ
るいは、CPUもしくは割込み制御手段が割込み
禁止範囲を限定できないシステムにおいても、従
来と同様、確実なOSの実行が可能となる。
As mentioned above, the software detects that any of addresses 00 to 77 (OCT) has been accessed, requests a high-priority interrupt, and executes the operating program OS in the interrupt processing. The OS can be called from both software and hardware, and it does not accept interrupts from input/output devices while the OS is running. Therefore, OS requests from software and requests from hardware
This makes it possible to handle OS requests in a unified manner. Therefore, it is no longer necessary to configure the OS part to be executed in response to a request from a program and each OS part to be executed in response to an interrupt request from each input/output device as separate programs. By standardizing the same processing routines in multiple OS parts and grouping each OS part together, the OS execution will not stop mid-way and will operate reliably, making it possible to downsize the OS. It becomes possible. Furthermore, since no interrupts are accepted from input/output devices while the OS is running, there is no need for the OS to have a complicated re-entrance structure, and the OS program itself can be simplified.
In particular, even in systems where the CPU does not have a function to automatically set the interrupt disable flag when accepting an interrupt, or where the CPU or interrupt control means cannot limit the interrupt disable range, the OS can be executed reliably as before. becomes possible.

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

第1図は操作プログラムOSを説明するための
システム図、第2図は本発明の実施例を示すプロ
グラム図、第3図は主メモリの割付け表である。 1……中央処理装置、2…主メモリ、3,4…
入出力装置、5,6……インターフエイス、7…
…アドレス検出手段、8……割込み制御手段、9
……アドレスバス、11……メモリーデータバ
ス、11……データバス。
FIG. 1 is a system diagram for explaining the operating program OS, FIG. 2 is a program diagram showing an embodiment of the present invention, and FIG. 3 is a main memory allocation table. 1...Central processing unit, 2...Main memory, 3, 4...
Input/output device, 5, 6...interface, 7...
... Address detection means, 8 ... Interrupt control means, 9
...Address bus, 11...Memory data bus, 11...Data bus.

Claims (1)

【特許請求の範囲】[Claims] 1 中央処理装置に接続される複数の入出力装置
を操作するために、主メモリに記憶された操作プ
ログラムを、前記入出力装置あるいはユーザープ
ログラムからの要求に応じて呼出す入出力操作プ
ログラムの呼出し方法に於いて、前記主メモリの
所定アドレス範囲に、前記入出力装置からの割込
み先番地及びユーザープログラムからの飛び先番
地を割り当てると共に、主メモリの前記所定アド
レス範囲内の番地がアクセスされたことを検出
し、入出力装置からの割込み要求より優先度の高
い割込み要求を発生するアドレス検出手段と、該
アドレス検出手段及び入出力装置からの複数の割
込み要求を入力し、優先度に応じて前記中央処理
装置に割込み信号を送出する割り込み制御手段と
を有し、前記入出力装置から呼出しを要求する場
合は、第1の割込み要求を発生して前記中央処理
装置のアクセスを前記割込み先番地に移行し、該
割込み先番地へのアクセスによつて前記アドレス
検出手段から第2の割込み要求を発生させ、又、
前記ユーザープログラムから呼出しを要求する場
合は、前記中央処理装置のアクセスを前記飛び先
番地に移行し、該飛び先番地へのアクセスによつ
て前記アドレス検出手段から割込み要求を発生さ
せるようにし、いずれの場合も前記アドレス検出
手段からの割込み要求に応じて前記操作プログラ
ムを呼出すことを特徴とする入出力操作プログラ
ムの呼出し方法。
1. A method for calling an input/output operation program that calls an operation program stored in main memory in response to a request from the input/output device or a user program in order to operate multiple input/output devices connected to a central processing unit. In this step, an interrupt destination address from the input/output device and a jump destination address from the user program are assigned to a predetermined address range of the main memory, and it is determined that an address within the predetermined address range of the main memory is accessed. address detection means for detecting and generating an interrupt request with a higher priority than an interrupt request from an input/output device; and an address detection means for inputting a plurality of interrupt requests from the address detection means and the input/output device, and an interrupt control means for sending an interrupt signal to the processing unit, and when requesting a call from the input/output device, generates a first interrupt request and moves the access of the central processing unit to the interrupt destination address. generate a second interrupt request from the address detection means by accessing the interrupt destination address, and
When the user program requests a call, the access of the central processing unit is shifted to the jump address, and the access to the jump address causes the address detecting means to generate an interrupt request; A method for calling an input/output operation program, characterized in that the operation program is also called in response to an interrupt request from the address detection means.
JP56203945A 1981-12-16 1981-12-16 Call-out method of input and output control program Granted JPS58105319A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56203945A JPS58105319A (en) 1981-12-16 1981-12-16 Call-out method of input and output control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56203945A JPS58105319A (en) 1981-12-16 1981-12-16 Call-out method of input and output control program

Publications (2)

Publication Number Publication Date
JPS58105319A JPS58105319A (en) 1983-06-23
JPH0420214B2 true JPH0420214B2 (en) 1992-04-02

Family

ID=16482274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56203945A Granted JPS58105319A (en) 1981-12-16 1981-12-16 Call-out method of input and output control program

Country Status (1)

Country Link
JP (1) JPS58105319A (en)

Also Published As

Publication number Publication date
JPS58105319A (en) 1983-06-23

Similar Documents

Publication Publication Date Title
US4268904A (en) Interruption control method for multiprocessor system
US5659756A (en) Method and system for providing access to logical partition information on a per resource basis
US3573855A (en) Computer memory protection
US4173783A (en) Method of accessing paged memory by an input-output unit
CA1179069A (en) Data transmission apparatus for a multiprocessor system
US5701495A (en) Scalable system interrupt structure for a multi-processing system
US5497501A (en) DMA controller using a predetermined number of transfers per request
US6148321A (en) Processor event recognition
US5410709A (en) Mechanism for rerouting and dispatching interrupts in a hybrid system environment
US5228127A (en) Clustered multiprocessor system with global controller connected to each cluster memory control unit for directing order from processor to different cluster processors
JPS6223345B2 (en)
US5487154A (en) Host selectively determines whether a task should be performed by digital signal processor or DMA controller according to processing time and I/O data period
EP0348053B1 (en) Controlling the initiation of logical systems in a data processing system with logical processor facility
GB1373828A (en) Data processing systems
AU614044B2 (en) Information processing system capable of quickly detecting an extended buffer memory regardless of a state of a main memory device
US5524211A (en) System for employing select, pause, and identification registers to control communication among plural processors
JPH0420214B2 (en)
US5369746A (en) Interprocessor data transferring system and method
JPH01305460A (en) Inter-processor communication system
JPS63268035A (en) Remote terminal control system via local terminal simulator
JPS6239792B2 (en)
JPH03144705A (en) Operation state monitor for programmable controller
JPS58103039A (en) Data base system
JPS61121153A (en) Inter-processor communication control system
JPS61292752A (en) Virtual computer system