JPH04184633A - 再実行処理機構 - Google Patents
再実行処理機構Info
- Publication number
- JPH04184633A JPH04184633A JP31532590A JP31532590A JPH04184633A JP H04184633 A JPH04184633 A JP H04184633A JP 31532590 A JP31532590 A JP 31532590A JP 31532590 A JP31532590 A JP 31532590A JP H04184633 A JPH04184633 A JP H04184633A
- Authority
- JP
- Japan
- Prior art keywords
- processing
- execution
- executed
- interrupt
- information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 35
- 230000010365 information processing Effects 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 2
- 230000007704 transition Effects 0.000 description 1
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明はOS処理のネストに関し、特にネストが解除さ
れ一番最初に割り込まれたOSが再実行される際の処理
に関する。
れ一番最初に割り込まれたOSが再実行される際の処理
に関する。
従来のOSのネストケースにおいて、割り込まれたOS
の処理の上にネストして実行されるOS処理の実行は禁
止されているか限定されたOSのみがネストを許されて
いた。それはOS処理の要求が発生順に処理されないと
矛盾を生じる可能性がある為である。ただし緊急な処理
に対しできるだけ早く処理を実行することを要求される
システムでは矛盾を覚悟で緊急に要求されたOS処理を
先に実行し、後まわしにされたOS処理は途中で中断し
、エラーなどで要求を出したユーザにもどるようになっ
ていた。
の処理の上にネストして実行されるOS処理の実行は禁
止されているか限定されたOSのみがネストを許されて
いた。それはOS処理の要求が発生順に処理されないと
矛盾を生じる可能性がある為である。ただし緊急な処理
に対しできるだけ早く処理を実行することを要求される
システムでは矛盾を覚悟で緊急に要求されたOS処理を
先に実行し、後まわしにされたOS処理は途中で中断し
、エラーなどで要求を出したユーザにもどるようになっ
ていた。
この従来の方式ではOSのネスト処理は許されていなか
ったり、たとえ許されていても後まわしにされたOS処
理は、そのまま処理を続けると矛盾を引き起す可能性が
ある為、処理は中断してエラーなどで要求元にもどって
いた。このようにエラーでもどった場合ユーザは要求が
満されるまで何度も同じOS処理を要求する様になって
いた。
ったり、たとえ許されていても後まわしにされたOS処
理は、そのまま処理を続けると矛盾を引き起す可能性が
ある為、処理は中断してエラーなどで要求元にもどって
いた。このようにエラーでもどった場合ユーザは要求が
満されるまで何度も同じOS処理を要求する様になって
いた。
本発明の再実行処理機構は、1つのCPUを含み2つ以
上のタスクと前記タスクの実行制御を行なうOS及び割
込み処理が実行され、それぞれの処理に対して特権のレ
ベルを割り当てる情報処理装置において、前記CPU上
で実行されている処理の特権レベルを保持する手段とそ
の内容を解釈し、特定処理へ制御を移す制御手段と、前
記OS処理へ移行した際のすべてのレジスタ情報を保存
する手段を有し、前記OS処理中に割込が発生し割込処
理が実行され、割込処理中でOS処理を呼び出し、再び
OS処理を実行し処理を終了してもどる際の割込処理か
らぬけ、一番最初に割込まれたOSにもどる事を解釈し
、前記のOS処理へ移行した際に保存しておいたレジス
タ情報の内容にすべてのレジスタの情報を設定して処理
を再開する制御手段を有することを特徴とする。
上のタスクと前記タスクの実行制御を行なうOS及び割
込み処理が実行され、それぞれの処理に対して特権のレ
ベルを割り当てる情報処理装置において、前記CPU上
で実行されている処理の特権レベルを保持する手段とそ
の内容を解釈し、特定処理へ制御を移す制御手段と、前
記OS処理へ移行した際のすべてのレジスタ情報を保存
する手段を有し、前記OS処理中に割込が発生し割込処
理が実行され、割込処理中でOS処理を呼び出し、再び
OS処理を実行し処理を終了してもどる際の割込処理か
らぬけ、一番最初に割込まれたOSにもどる事を解釈し
、前記のOS処理へ移行した際に保存しておいたレジス
タ情報の内容にすべてのレジスタの情報を設定して処理
を再開する制御手段を有することを特徴とする。
次に本発明について図面を参照して説明する。
第1図は本発明の一実施例である。メモリ1上に貯えら
れたタスクやOSのプログラムはバス2を経て実行ユニ
ット3で実行される。OS処理が始まるとOSflag
4がセットされ割込が発生し割込処理になるとIntf
lag5がセットされる。ここで、OS処理中に割込が
発生し、その割込処理の中でOS処理をした時、つまり
OS処理が2回以上ネストした時Xflag6がセット
されるようになっており、この情報を現在実行中の実行
レベル7と次に実行する処理の実行レベルの情報を使い
判定回路8で最初に割込まれたOS処理にもどる際、割
込まれた所にもどるのではなく、もう−度OS処理の先
頭から処理を開始する為、命令シーケンサ9のトラップ
信号10を比し、OS処理の先頭で保存しておいたレジ
スタ情報を設定しなおしてOSの先頭から実行を開始す
る。
れたタスクやOSのプログラムはバス2を経て実行ユニ
ット3で実行される。OS処理が始まるとOSflag
4がセットされ割込が発生し割込処理になるとIntf
lag5がセットされる。ここで、OS処理中に割込が
発生し、その割込処理の中でOS処理をした時、つまり
OS処理が2回以上ネストした時Xflag6がセット
されるようになっており、この情報を現在実行中の実行
レベル7と次に実行する処理の実行レベルの情報を使い
判定回路8で最初に割込まれたOS処理にもどる際、割
込まれた所にもどるのではなく、もう−度OS処理の先
頭から処理を開始する為、命令シーケンサ9のトラップ
信号10を比し、OS処理の先頭で保存しておいたレジ
スタ情報を設定しなおしてOSの先頭から実行を開始す
る。
次に第1図を使って処理の流れをフラグの状態に第2図
に示す。
に示す。
まずユーザタスクからOSコールを発行しOS処理へ移
行するとOSflagはセットされる。
行するとOSflagはセットされる。
110S処理の入口ではすべてのレジスタをセーブして
おく、OS処理の途中で割込が発生12すると制御は割
込処理へ移行し、Intflagはセットされる13.
この割込処理の中でOSコールを発行するとOS処理に
制御が移りXflagがセットされる14.このOS処
理からのもどり命令の際15、今の実行レベル=1と次
の処理の実行レベル=Oから次に実行される処理が今の
処理より高いと判定し、たとえXf l ag=1であ
ってもトラップは起こらず、割込処理のOSコールを発
行した次の命令にもどる。この割込処理からぬけるもど
り命令の際16、今の実行レベル=0と次に実行される
処理の実行レベル=1と比較して次のレベルは1つ低い
レベルでありXflag=1であることが最初に割込ま
れたOS処理であることを表現しており、トラップが発
生しトラップ処理17へ移行する。次に実行するOS処
理は先に途中まで実行しながら、先取りで別のOS処理
が実行している為、処理をそのまま続行すると矛盾を生
じる恐れがある。その為トラップ処理では次のOS処理
を先頭から開始するようにOSの先頭でセーブしたレジ
スタ情報に設定し直してOSの先頭に制御を移す、18
この際OSのネストはすべて解決されたのでXflag
をクリアする。
おく、OS処理の途中で割込が発生12すると制御は割
込処理へ移行し、Intflagはセットされる13.
この割込処理の中でOSコールを発行するとOS処理に
制御が移りXflagがセットされる14.このOS処
理からのもどり命令の際15、今の実行レベル=1と次
の処理の実行レベル=Oから次に実行される処理が今の
処理より高いと判定し、たとえXf l ag=1であ
ってもトラップは起こらず、割込処理のOSコールを発
行した次の命令にもどる。この割込処理からぬけるもど
り命令の際16、今の実行レベル=0と次に実行される
処理の実行レベル=1と比較して次のレベルは1つ低い
レベルでありXflag=1であることが最初に割込ま
れたOS処理であることを表現しており、トラップが発
生しトラップ処理17へ移行する。次に実行するOS処
理は先に途中まで実行しながら、先取りで別のOS処理
が実行している為、処理をそのまま続行すると矛盾を生
じる恐れがある。その為トラップ処理では次のOS処理
を先頭から開始するようにOSの先頭でセーブしたレジ
スタ情報に設定し直してOSの先頭に制御を移す、18
この際OSのネストはすべて解決されたのでXflag
をクリアする。
以上説明したように本発明はOSがネストした際に、最
初に実行されるはずであったOSに処理が移る際に中断
した所から実行するのではなくOS処理の先頭から再実
行する機構になっている為、従来の方式の様に先に要求
したOS処理が中断され、緊急なOS処理をした時に最
初に実行されるはずであったOSにもどる時、処理を中
断したままその場でユーザーにエラーなどで戻るのでは
なく、そのOS処理の先頭にもどって再実行することを
自動的に行なってくれるという効果を有する。
初に実行されるはずであったOSに処理が移る際に中断
した所から実行するのではなくOS処理の先頭から再実
行する機構になっている為、従来の方式の様に先に要求
したOS処理が中断され、緊急なOS処理をした時に最
初に実行されるはずであったOSにもどる時、処理を中
断したままその場でユーザーにエラーなどで戻るのでは
なく、そのOS処理の先頭にもどって再実行することを
自動的に行なってくれるという効果を有する。
第1図は本発明の一実施例のブロック図、第2図は第1
図上で実行されるソフトウェアの処理の流れとフラグの
状態を示した図である。 1・・・・・・メモリ、2・・・・・・バス、3・・・
・・・実行ユニット、4−−O3f l ag、 5−
I n t f l a g。 6・・・・・・Xflag、7・・・・・・実行レベル
、8・・・・・・判定回路、9・・・・・・命令シーケ
ンサ、10・・・・・・トラップ信号、11・・・・・
・OSflag=1にセットされた状態、12・・・・
・・割込、13・・・・・・Intflag=1にセッ
トされた状態、14・・・・・・Xflag=1にセッ
トされた状態、15・・・・・・OSからのもどり命令
、16・・・・・・割込処理からのもどり命令、17・
・・・・・トラップ処理、18・・・・・・先頭にもど
る。 代理人 弁理士 内 原 音 第 1 図
図上で実行されるソフトウェアの処理の流れとフラグの
状態を示した図である。 1・・・・・・メモリ、2・・・・・・バス、3・・・
・・・実行ユニット、4−−O3f l ag、 5−
I n t f l a g。 6・・・・・・Xflag、7・・・・・・実行レベル
、8・・・・・・判定回路、9・・・・・・命令シーケ
ンサ、10・・・・・・トラップ信号、11・・・・・
・OSflag=1にセットされた状態、12・・・・
・・割込、13・・・・・・Intflag=1にセッ
トされた状態、14・・・・・・Xflag=1にセッ
トされた状態、15・・・・・・OSからのもどり命令
、16・・・・・・割込処理からのもどり命令、17・
・・・・・トラップ処理、18・・・・・・先頭にもど
る。 代理人 弁理士 内 原 音 第 1 図
Claims (1)
- 1つのCPUを含み2つ以上のタスクと前記タスクの実
行制御を行なうOS及び割り込み処理が実行され、それ
ぞれの処理に対し特権のレベルを割り当てる情報処理装
置において、前記CPU上で実行されている処理の特権
レベルを保持する手段とその内容を解釈し、特定処理へ
制御を移す制御手段と、前記OS処理へ移行した際のす
べてのレジスタ情報を保存する手段を有し、前記OS処
理中に割込が発生し割込処理が実行され、割込処理中で
OS処理を呼び出し、再びOS処理を実行し処理を終了
してもどる際の割込処理からぬけ、一番最初に割込まれ
たOSにもどる事を解釈し、前記のOS処理へ移行した
際に保存しておいたレジスタ情報の内容にすべてのレジ
スタの情報を設定して処理を再開する制御手段を有する
ことを特徴とする再実行処理機構。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31532590A JPH04184633A (ja) | 1990-11-20 | 1990-11-20 | 再実行処理機構 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31532590A JPH04184633A (ja) | 1990-11-20 | 1990-11-20 | 再実行処理機構 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH04184633A true JPH04184633A (ja) | 1992-07-01 |
Family
ID=18064048
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31532590A Pending JPH04184633A (ja) | 1990-11-20 | 1990-11-20 | 再実行処理機構 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH04184633A (ja) |
-
1990
- 1990-11-20 JP JP31532590A patent/JPH04184633A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100983061B1 (ko) | 서로 다른 크리티컬리티의 인터럽트 요청 실행을제어하는데 적합한 인터럽트 제어 함수 | |
JPH0120466B2 (ja) | ||
JPH04184633A (ja) | 再実行処理機構 | |
KR20190085391A (ko) | Gpu 커널 트랜잭션화 방법 및 컴퓨팅 장치 | |
JP2643804B2 (ja) | デバッグ方式 | |
JPH0926888A (ja) | 排他制御装置 | |
JP2597283B2 (ja) | 割込みにおけるスケジューリング方式 | |
JPS6336023B2 (ja) | ||
CN110262839B (zh) | 一种处理器的调度方法、装置及存储介质 | |
JP3991999B2 (ja) | 中央処理ユニット及びプロセッサ制御方法 | |
JPH0683652A (ja) | マイクロコンピュ−タシステム | |
JP2985299B2 (ja) | 排他制御装置 | |
JP2822728B2 (ja) | コンピュータシステム | |
JPH02201654A (ja) | タイムシェアリングシステムのブレーク割り込み制御方式 | |
JP2581327B2 (ja) | 仮想計算機の入出力割込み処理方式 | |
JPS5831022B2 (ja) | プロセツサ制御方式 | |
JPH06149592A (ja) | マイクロコンピュータの割り込み処理方式 | |
JPH0447854B2 (ja) | ||
JPS62217326A (ja) | 複数os格納切替可能コンピユ−タ | |
JPH03116335A (ja) | 非特権cpuから特権cpuヘの乗り移り方式 | |
JP2000029850A (ja) | オペレーティングシステムのプロセッサ間通信を使用したタスク制御方法 | |
JPS61166631A (ja) | マイクロプログラム制御処理方法 | |
JPS62113238A (ja) | 電子計算機システムにおけるプログラム修正装置 | |
JPH0248766A (ja) | プロセッサインタフェース制御システム | |
JPH03179532A (ja) | コンピュータ装置 |