JPH03116335A - 非特権cpuから特権cpuヘの乗り移り方式 - Google Patents
非特権cpuから特権cpuヘの乗り移り方式Info
- Publication number
- JPH03116335A JPH03116335A JP25431289A JP25431289A JPH03116335A JP H03116335 A JPH03116335 A JP H03116335A JP 25431289 A JP25431289 A JP 25431289A JP 25431289 A JP25431289 A JP 25431289A JP H03116335 A JPH03116335 A JP H03116335A
- Authority
- JP
- Japan
- Prior art keywords
- privileged
- cpu
- task
- processing
- request
- 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 16
- 230000004044 response Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000007796 conventional method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
Landscapes
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[産業上の利用分野]
本発明は、非特権CPU上にスケジューリングされた特
権命令を含むタスクを特権CPUに実行させる非特権C
PUから特権CPUへの乗り移り方式に関する。
権命令を含むタスクを特権CPUに実行させる非特権C
PUから特権CPUへの乗り移り方式に関する。
[従来の技術]
第2図はマルチプロセッサシステムの一構成例を示すブ
ロック図である。特権CPUl0と非特権CPUI 1
.12、・・・・とがバス30を介して主記憶装置20
に接続されている。主記憶装置20はこれらの複数のC
PU間で共有されており、それぞれバス30を介してデ
ータの授受を行なうよう構成されている。ここで特権C
PUというのは、システム時刻変更のような特権命令を
実行することのできるCPUをいい、非特権CPUとは
このような特権命令の実行が出来ないCPUをいう。第
2図のような、主記憶を共有するマルチプロセッサシス
テムにおいては、一般にタスクはどのCPU上でも実行
可能であり、どのCPUにどのタスクを割当てるか、い
わゆるタスクスケジューリングは、その時の状況により
タスクスケジューラが動的に決定している。
ロック図である。特権CPUl0と非特権CPUI 1
.12、・・・・とがバス30を介して主記憶装置20
に接続されている。主記憶装置20はこれらの複数のC
PU間で共有されており、それぞれバス30を介してデ
ータの授受を行なうよう構成されている。ここで特権C
PUというのは、システム時刻変更のような特権命令を
実行することのできるCPUをいい、非特権CPUとは
このような特権命令の実行が出来ないCPUをいう。第
2図のような、主記憶を共有するマルチプロセッサシス
テムにおいては、一般にタスクはどのCPU上でも実行
可能であり、どのCPUにどのタスクを割当てるか、い
わゆるタスクスケジューリングは、その時の状況により
タスクスケジューラが動的に決定している。
このようなタスクスケジューリングによると。
タスク上で実行されるO8機能もまたすべてのCPU上
で実行されうろことになる。そこでタスク上で実行され
るO8機能中に特権命令が含まれ。
で実行されうろことになる。そこでタスク上で実行され
るO8機能中に特権命令が含まれ。
しかもそのO8機能が非特権CPU上で実行されるよう
スケジューリングされた場合、従来は以下に示す手順で
このO8機能中の特権命令の処理を行なっていた。
スケジューリングされた場合、従来は以下に示す手順で
このO8機能中の特権命令の処理を行なっていた。
第3図は従来の特権命令依頼処理のフローチャートを示
したものである。まず非特権CPUは。
したものである。まず非特権CPUは。
特権命令の実行に必要なパラメータを主記憶装置20上
に設定する(ステップ3o1)。ついで非特権CPUは
特4*CPUに処理要求の割り込みをかける(ステップ
302)。この割込み処理要求に応答して特権CPUで
割込み処理がスタートする(ステップ303°)。割込
み処理要求を受けた特権CPUはパラメータを主記憶装
置2oがら取り出し特権命令の実行を行なう(ステップ
304)。そして実行結果を主記憶装置20上に設定す
る(ステップ305)。これにより割込み処理は完了す
る(ステップ306)、処理要求の割込みをかけた後、
非特#[CPUは実行結果が主記憶装ff120上に設
定されたがどぅがをセンスしくステップ307)、実行
結果が主記憶装置2o上に設定されていれば実行結果を
主記憶装置20がら取り出し処理を完了する(ステップ
308)、ステップ307において実行結果が主記憶装
置i′!20上に設定されていなかった場合、設定が行
なわれるまでセンスし続ける。
に設定する(ステップ3o1)。ついで非特権CPUは
特4*CPUに処理要求の割り込みをかける(ステップ
302)。この割込み処理要求に応答して特権CPUで
割込み処理がスタートする(ステップ303°)。割込
み処理要求を受けた特権CPUはパラメータを主記憶装
置2oがら取り出し特権命令の実行を行なう(ステップ
304)。そして実行結果を主記憶装置20上に設定す
る(ステップ305)。これにより割込み処理は完了す
る(ステップ306)、処理要求の割込みをかけた後、
非特#[CPUは実行結果が主記憶装ff120上に設
定されたがどぅがをセンスしくステップ307)、実行
結果が主記憶装置2o上に設定されていれば実行結果を
主記憶装置20がら取り出し処理を完了する(ステップ
308)、ステップ307において実行結果が主記憶装
置i′!20上に設定されていなかった場合、設定が行
なわれるまでセンスし続ける。
[発明が解決しようとする課題]
しかしこのような従来の方法では、特権命令が複数存在
する場合、特権命令それぞれについて特#1CPUへの
依頼処理を個別に作成しなければならないため、特権命
令の数が増加すればするほど依頼処理の作成や確認の時
間が増加することになる。また非特権CPUは、特権C
PUによる特権命令の実行結果が主記憶装置上に設定さ
れるまでの開学に待機しなければならないという問題も
あった・ 本発明は上述した問題点を解決するためになされたもの
で、特権命令の数に無関係にしかも特権CPUによる処
理が完了しなくても非特権CPUは次のタスク処理を実
行することの出来る非特権CPUから特権CPUへの乗
り移り方式を提供することを目的とする。
する場合、特権命令それぞれについて特#1CPUへの
依頼処理を個別に作成しなければならないため、特権命
令の数が増加すればするほど依頼処理の作成や確認の時
間が増加することになる。また非特権CPUは、特権C
PUによる特権命令の実行結果が主記憶装置上に設定さ
れるまでの開学に待機しなければならないという問題も
あった・ 本発明は上述した問題点を解決するためになされたもの
で、特権命令の数に無関係にしかも特権CPUによる処
理が完了しなくても非特権CPUは次のタスク処理を実
行することの出来る非特権CPUから特権CPUへの乗
り移り方式を提供することを目的とする。
[課題を解決するための手段]
本発明による非特権CPUから特権CPUへの乗り移り
方式は、非特権CPUで実行中の特権命令を含むタスク
を主記憶装置の第1の退避域に退避させ次のタスクを割
当てる第1の過程と、前記タスクのタスク制御領域に要
求フラグを設定し。
方式は、非特権CPUで実行中の特権命令を含むタスク
を主記憶装置の第1の退避域に退避させ次のタスクを割
当てる第1の過程と、前記タスクのタスク制御領域に要
求フラグを設定し。
前記特権CPUに対して処理要求の割り込みをかける第
2の過程と、前記割込み処理要求に応答して前記特権C
PU上で実行中のタスクを前記主記憶装置の第2の退避
域に退避させる第3の過程と、前記特権CPUに対して
前記第1の退避域に退避している前記タスクを割当てて
実行したのち前記要求フラグをリセットする第4の過程
と、前記第2の退避域に退避しているタスクを呼び戻し
て再び前記特H4CPU上で実行させる第5の過程とを
備えている。
2の過程と、前記割込み処理要求に応答して前記特権C
PU上で実行中のタスクを前記主記憶装置の第2の退避
域に退避させる第3の過程と、前記特権CPUに対して
前記第1の退避域に退避している前記タスクを割当てて
実行したのち前記要求フラグをリセットする第4の過程
と、前記第2の退避域に退避しているタスクを呼び戻し
て再び前記特H4CPU上で実行させる第5の過程とを
備えている。
[作用]
本発明では、非特#1CPUに対し特権命令を含むタス
クがスケジューリングされた場合、このタスクのタスク
制御情報域に要求フラグを立て、特権CPUに対し処理
要求の割り込みをかける。特権CPUはこの割込み処理
要求を受けると現在実行中のタスクを退避させ1割込み
処理要求のあったタスクの実行を行なう、この問罪特権
CPUは特権CPUの処理結果をセンスすることなく1
次のタスクの実行を行なう。−力持#1CPUは特権命
令を含むタスクの実行を終了したのちはタスク制御情報
域の要求フラグをリセットした後、次に特権CPUにス
ケジューリングされるタスクの処理を行なう。このよう
に非特権CPU及び特権CPUともに他方のタスクの処
理結果を待つ事無く平行してタスク処理が可能となる。
クがスケジューリングされた場合、このタスクのタスク
制御情報域に要求フラグを立て、特権CPUに対し処理
要求の割り込みをかける。特権CPUはこの割込み処理
要求を受けると現在実行中のタスクを退避させ1割込み
処理要求のあったタスクの実行を行なう、この問罪特権
CPUは特権CPUの処理結果をセンスすることなく1
次のタスクの実行を行なう。−力持#1CPUは特権命
令を含むタスクの実行を終了したのちはタスク制御情報
域の要求フラグをリセットした後、次に特権CPUにス
ケジューリングされるタスクの処理を行なう。このよう
に非特権CPU及び特権CPUともに他方のタスクの処
理結果を待つ事無く平行してタスク処理が可能となる。
また同一の手順での異なる特権命令の処理が可能となる
。
。
[実施例]
以下、本発明の実施例を図面に基すいて詳細に説明する
。なお本発明に於いてもマルチプロセッサシステムのシ
ステム構成は、第2図に示すものと同一である。なお以
下の説明において、タスク内容の退避域とタスク制御情
報域は主記憶装置20上に存在するものとする。
。なお本発明に於いてもマルチプロセッサシステムのシ
ステム構成は、第2図に示すものと同一である。なお以
下の説明において、タスク内容の退避域とタスク制御情
報域は主記憶装置20上に存在するものとする。
第1図は本発明による特権命令依頼処理のフローチャー
トを示したものである。まず非特権CPUは自CPU上
で現在動作しているタスク、すなわち特権命令の実行を
含むタスクのタスク内容を主記憶装置20上の所定の退
避域に退避させる(ステップ101)。ついで非特権C
PUは、自CPU上で現在動作しているタスクのタスク
制御情報域内に要求フラグを設定する(ステップ102
)。 第4図はタスク制御情報域40の構成を示した図
で、要求フラグ45が設定される領域を示している。要
求フラグ45の値が11111の時、特#1ICPU上
で処理を行なう処理要求を示す。
トを示したものである。まず非特権CPUは自CPU上
で現在動作しているタスク、すなわち特権命令の実行を
含むタスクのタスク内容を主記憶装置20上の所定の退
避域に退避させる(ステップ101)。ついで非特権C
PUは、自CPU上で現在動作しているタスクのタスク
制御情報域内に要求フラグを設定する(ステップ102
)。 第4図はタスク制御情報域40の構成を示した図
で、要求フラグ45が設定される領域を示している。要
求フラグ45の値が11111の時、特#1ICPU上
で処理を行なう処理要求を示す。
ついで、非特#lCPUは特mcPUに対し処理要求の
割り込みをかける(ステップ1o3)。その後非特権C
PUは特権CPUの動作を監視することなく、自CPU
上に次のタスクを割当てる(ステップ104)。ステッ
プ103において割込み処理要求を受けた特権CPUは
割込み処理を開始する(ステップ105)。処理要求を
受けた特権CPUは自CPU上で現在動作しているタス
クのタスク内容を所定の退避域に退避させる(ステップ
106)。
割り込みをかける(ステップ1o3)。その後非特権C
PUは特権CPUの動作を監視することなく、自CPU
上に次のタスクを割当てる(ステップ104)。ステッ
プ103において割込み処理要求を受けた特権CPUは
割込み処理を開始する(ステップ105)。処理要求を
受けた特権CPUは自CPU上で現在動作しているタス
クのタスク内容を所定の退避域に退避させる(ステップ
106)。
ついで、特権CPUはタスク制御情報域40内に要求フ
ラグ45が設定されているタスク、すなわち非特権CP
Uがステップ101において退避させたタスクを退避域
から呼び出し自CPUに割当てる(ステップ107)。
ラグ45が設定されているタスク、すなわち非特権CP
Uがステップ101において退避させたタスクを退避域
から呼び出し自CPUに割当てる(ステップ107)。
これにより割込み処理は完了する(ステップ108)。
ついで、新しく割当てられたタスクの処理が再開される
と(ステップ109)、特権C−PUは特権命令を含む
タスクの処理を行なう(ステップ110)。ついで特権
CPUは自CPU上で現在動作しているタスクのタスク
制御情報域40の要求フラグ45をリセットする(ステ
ップ111)。
と(ステップ109)、特権C−PUは特権命令を含む
タスクの処理を行なう(ステップ110)。ついで特権
CPUは自CPU上で現在動作しているタスクのタスク
制御情報域40の要求フラグ45をリセットする(ステ
ップ111)。
これらの処理が完了すると特権CPUは以後の処理を行
なう(ステップ112)。
なう(ステップ112)。
なお複数の非特権CPUから要求フラグが複数設定され
ることがあり得るが、この場合特権CPUは要求フラグ
が設定された順に処理を行なうことも出来るし、割込み
処理要求に優先順位を付けこの優先順位に従って割込み
処理の受は付けを行なうように構成することも出来る。
ることがあり得るが、この場合特権CPUは要求フラグ
が設定された順に処理を行なうことも出来るし、割込み
処理要求に優先順位を付けこの優先順位に従って割込み
処理の受は付けを行なうように構成することも出来る。
[発明の効果]
以上実施例に基づいて詳細に説明したように。
本発明では非特権CPUから特権CPUへの乗り移りに
際して、特権命令の依頼処理を特権命令ごとに作成確認
する必要が無いという利点がある。
際して、特権命令の依頼処理を特権命令ごとに作成確認
する必要が無いという利点がある。
また特権命令の依頼処理中に非特権CPUが待機状態に
なってしまうという状態も回避することが出来る。
なってしまうという状態も回避することが出来る。
第1図は本発明による特権命令処理依頼のフローチャー
ト、第2図はマルチプロセッサシステムの一構成例を示
すブロック図、第3図は従来の方法による特権命令依頼
処理のフローチャート、第4図は本発明によるタスク制
御情報域内の要求フラグを示す図である。 10・・・・・・特権CPU、11.12.・旧・・非
特権CPU、20・・・・・・主記憶装置、3o・旧・
・バス、40・・・・・・タスク制御情報域、45・・
・・・・要求フラグ。
ト、第2図はマルチプロセッサシステムの一構成例を示
すブロック図、第3図は従来の方法による特権命令依頼
処理のフローチャート、第4図は本発明によるタスク制
御情報域内の要求フラグを示す図である。 10・・・・・・特権CPU、11.12.・旧・・非
特権CPU、20・・・・・・主記憶装置、3o・旧・
・バス、40・・・・・・タスク制御情報域、45・・
・・・・要求フラグ。
Claims (1)
- 【特許請求の範囲】 特権命令の実行可能な特権CPUと実行不可能な非特権
CPUとが主記憶装置を共有しつつタスクを実行するに
際し、前記非特権CPU上にスケジューリングされた特
権命令を含むタスクを前記特権CPUに実行させる、非
特権CPUから特権CPUへの乗り移り方式において、 前記非特権CPU上で実行中の特権命令を含むタスクを
前記主記憶装置の第1の退避域に退避させ次のタスクを
割当てる第1の過程と、 前記タスクのタスク制御情報域に要求フラグを設定し、
前記特権CPUに対して処理要求の割込みをかける第2
の過程と、 前記割込み処理要求に応答して前記特権CPU上で実行
中のタスクを前記主記憶装置の第2の退避域に退避させ
る第3の過程と、 前記特権CPUに対して前記第1の退避域に退避してい
る前記タスクを割当てて実行した後前記要求フラグをリ
セットする第4の過程と、 前記第2の退避域に退避しているタスクを呼び戻して再
び前記特権CPU上で実行させる第5の過程とを備えた
ことを特徴とする非特権CPUから特権CPUへの乗り
移り方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25431289A JPH03116335A (ja) | 1989-09-29 | 1989-09-29 | 非特権cpuから特権cpuヘの乗り移り方式 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP25431289A JPH03116335A (ja) | 1989-09-29 | 1989-09-29 | 非特権cpuから特権cpuヘの乗り移り方式 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03116335A true JPH03116335A (ja) | 1991-05-17 |
Family
ID=17263247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP25431289A Pending JPH03116335A (ja) | 1989-09-29 | 1989-09-29 | 非特権cpuから特権cpuヘの乗り移り方式 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03116335A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009043256A (ja) * | 2007-08-06 | 2009-02-26 | Nuvoton Technology Corp | 記憶装置のアクセス方法及び装置 |
-
1989
- 1989-09-29 JP JP25431289A patent/JPH03116335A/ja active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009043256A (ja) * | 2007-08-06 | 2009-02-26 | Nuvoton Technology Corp | 記憶装置のアクセス方法及び装置 |
US8285895B2 (en) | 2007-08-06 | 2012-10-09 | Winbond Electronics Corporation | Handshake free sharing in a computer architecture |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7650601B2 (en) | Operating system kernel-assisted, self-balanced, access-protected library framework in a run-to-completion multi-processor environment | |
JPH064322A (ja) | プロセスレベルプログラミングのための割込み処理の直列化方法 | |
JP3644042B2 (ja) | マルチタスク処理装置 | |
KR102003721B1 (ko) | Gpu 커널 트랜잭션화 방법 및 컴퓨팅 장치 | |
JP2636722B2 (ja) | マルチタスク実行管理方式 | |
JPH03116335A (ja) | 非特権cpuから特権cpuヘの乗り移り方式 | |
JP2597283B2 (ja) | 割込みにおけるスケジューリング方式 | |
JPH064314A (ja) | タスク間同期通信装置 | |
JPS6336023B2 (ja) | ||
JPS594743B2 (ja) | マルチプロセツサシステムノセイギヨホウシキ | |
JP2553526B2 (ja) | マルチタスク処理装置 | |
JPH09160790A (ja) | タスクスケジュール装置及びタスクスケジュール方法 | |
JPS63636A (ja) | タスク制御方式 | |
JP2010026575A (ja) | スケジューリング方法およびスケジューリング装置並びにマルチプロセッサシステム | |
JP2822728B2 (ja) | コンピュータシステム | |
JPH03257634A (ja) | プログラム並列実行方法とその装置 | |
JPH06259383A (ja) | 割込み制御方法及び割込み制御装置 | |
JPH04195539A (ja) | システムコール処理方式 | |
JPS61229129A (ja) | 仮想計算機システムにおける入出力割込み通知装置 | |
JPH02244371A (ja) | マルチプロセツサシステムの排他制御方法 | |
JPS59163647A (ja) | タスク管理方法 | |
JPH05143370A (ja) | マルチタスク計算装置 | |
JPS59111563A (ja) | マルチプロセツサの制御方式 | |
JPH0241782B2 (ja) | ||
JPH0444131A (ja) | 複数os走行システムにおけるプロセッサ間通信の実行装置および方法 |