JPH0883188A - マルチタスク処理を行う計算機 - Google Patents
マルチタスク処理を行う計算機Info
- Publication number
- JPH0883188A JPH0883188A JP24209794A JP24209794A JPH0883188A JP H0883188 A JPH0883188 A JP H0883188A JP 24209794 A JP24209794 A JP 24209794A JP 24209794 A JP24209794 A JP 24209794A JP H0883188 A JPH0883188 A JP H0883188A
- Authority
- JP
- Japan
- Prior art keywords
- task
- address
- program
- area
- stored
- 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.)
- Withdrawn
Links
Abstract
(57)【要約】
【目的】 計算途中の値を待避せずにタスクを切り替え
られるようにする。 【構成】 アドレスの上位ビットによってプログラムメ
モリ1を2つの領域に分割し、第1の領域には、前記上
位ビット以外の下位ビットで指定されるアドレス(第1
タスクアドレスという)に第1タスクのプログラムを記
憶するとともに、これに続くアドレスに第1タスクのプ
ログラムへのジャンプ命令を記憶し、第2の領域には、
第1タスクアドレスと同じ下位アドレスに第1タスクの
プログラムと同じプログラムを記憶するとともに、これ
に続くアドレスに第2タスクのプログラムを記憶する。
第1タスクの実行途中に第2タスクを実行するための割
り込み命令を受けた場合、アドレス修飾回路2は、前記
上位ビットを修飾して第2の領域を指定するようにし、
第2タスクの実行終了とともに前記上位ビットを元に戻
して第1の領域を指定するようにすることにより、第1
タスクのプログラムが1サイクル終了してから第2タス
クに切り替わるようにする。
られるようにする。 【構成】 アドレスの上位ビットによってプログラムメ
モリ1を2つの領域に分割し、第1の領域には、前記上
位ビット以外の下位ビットで指定されるアドレス(第1
タスクアドレスという)に第1タスクのプログラムを記
憶するとともに、これに続くアドレスに第1タスクのプ
ログラムへのジャンプ命令を記憶し、第2の領域には、
第1タスクアドレスと同じ下位アドレスに第1タスクの
プログラムと同じプログラムを記憶するとともに、これ
に続くアドレスに第2タスクのプログラムを記憶する。
第1タスクの実行途中に第2タスクを実行するための割
り込み命令を受けた場合、アドレス修飾回路2は、前記
上位ビットを修飾して第2の領域を指定するようにし、
第2タスクの実行終了とともに前記上位ビットを元に戻
して第1の領域を指定するようにすることにより、第1
タスクのプログラムが1サイクル終了してから第2タス
クに切り替わるようにする。
Description
【0001】
【産業上の利用分野】本発明はマルチタスク機能を備え
た計算機に係わるものであり、特に、その計算機内に備
えられているプログラムメモリの処理に関するものであ
る。
た計算機に係わるものであり、特に、その計算機内に備
えられているプログラムメモリの処理に関するものであ
る。
【0002】
【従来の技術】従来、特開平3−231334号公報な
どに記載されているように、2つ以上のタスクを持つ計
算機が外部からの要求に応じてタスクを切り替える場合
には、それまで実行してきた計算のパラメータが格納さ
れているレジスタの値を、専用に設けられたスタックメ
モリなどに待避してから新しいタスクの計算を実行す
る。そして、その新しいタスクの実行が終了した後に、
前記スタックメモリに待避しておいた元のタスクの計算
途中のパラメータをレジスタに呼び戻して元のタスクの
計算の続きを実行するようになされていた。
どに記載されているように、2つ以上のタスクを持つ計
算機が外部からの要求に応じてタスクを切り替える場合
には、それまで実行してきた計算のパラメータが格納さ
れているレジスタの値を、専用に設けられたスタックメ
モリなどに待避してから新しいタスクの計算を実行す
る。そして、その新しいタスクの実行が終了した後に、
前記スタックメモリに待避しておいた元のタスクの計算
途中のパラメータをレジスタに呼び戻して元のタスクの
計算の続きを実行するようになされていた。
【0003】
【発明が解決しようとする課題】しかしながら、上述の
ように、タスクを切り替えるに当たってレジスタの値を
スタックメモリに待避し、新しいタスクを実行した後に
待避しておいたパラメータをレジスタに呼び戻すように
していたのでは、タスクの切り替えのたびにオーバーヘ
ッドが生じるという欠点があった。特に、頻繁にタスク
を切り替えなければならない用途においては、タスクの
切り替えにかかるオーバーヘッドが大きくなってしま
い、処理を効率的に行うことができないという欠点があ
った。
ように、タスクを切り替えるに当たってレジスタの値を
スタックメモリに待避し、新しいタスクを実行した後に
待避しておいたパラメータをレジスタに呼び戻すように
していたのでは、タスクの切り替えのたびにオーバーヘ
ッドが生じるという欠点があった。特に、頻繁にタスク
を切り替えなければならない用途においては、タスクの
切り替えにかかるオーバーヘッドが大きくなってしま
い、処理を効率的に行うことができないという欠点があ
った。
【0004】さらに、一般に、タスクの切り替えを行う
際には、中断したタスクの計算を再開するために必要な
最小限のレジスタ以外のレジスタの値をも待避してしま
う場合が多い。このため、上述したオーバーヘッドの欠
点は非常に大きな問題となっていた。
際には、中断したタスクの計算を再開するために必要な
最小限のレジスタ以外のレジスタの値をも待避してしま
う場合が多い。このため、上述したオーバーヘッドの欠
点は非常に大きな問題となっていた。
【0005】そこで本発明は、タスクの切り替え時にレ
ジスタの値を待避したりこれを復元したりする必要のな
いプログラムフロー制御方法を有する計算機を提供する
ことを目的とする。
ジスタの値を待避したりこれを復元したりする必要のな
いプログラムフロー制御方法を有する計算機を提供する
ことを目的とする。
【0006】
【課題を解決するための手段】本発明のマルチタスク処
理を行う計算機は、ある1つのタスクを実行するための
プログラムが記憶されると共にこのプログラムに引き続
いて前記ある1つのタスクのプログラムへのジャンプ命
令が記憶される領域と、前記ある1つのタスクのプログ
ラムと同じプログラムが記憶されると共にこのプログラ
ムに引き続いて前記ある1つのタスク以外のタスクのプ
ログラムが記憶される領域とにより複数の領域に分割さ
れたメモリ手段と、前記メモリ手段の複数の領域の中か
らいずれかの領域を指定する領域指定手段と、前記領域
指定手段により指定された領域に記憶されているタスク
の命令を読み出して実行する命令実行手段とを設けたこ
とを特徴とするものである。
理を行う計算機は、ある1つのタスクを実行するための
プログラムが記憶されると共にこのプログラムに引き続
いて前記ある1つのタスクのプログラムへのジャンプ命
令が記憶される領域と、前記ある1つのタスクのプログ
ラムと同じプログラムが記憶されると共にこのプログラ
ムに引き続いて前記ある1つのタスク以外のタスクのプ
ログラムが記憶される領域とにより複数の領域に分割さ
れたメモリ手段と、前記メモリ手段の複数の領域の中か
らいずれかの領域を指定する領域指定手段と、前記領域
指定手段により指定された領域に記憶されているタスク
の命令を読み出して実行する命令実行手段とを設けたこ
とを特徴とするものである。
【0007】本発明の他の特徴とするところは、非同期
的に起動されるタスクを2つ以上実行する計算機におい
て、前記タスクを実行するためのプログラムが記憶され
るメモリ手段と、前記メモリ手段の記憶領域を指定する
ように前記メモリ手段に対するアドレスを修飾し、この
修飾したアドレスを前記メモリ手段に供給するアドレス
修飾手段とを具備し、前記メモリ手段は、前記修飾され
たアドレスの上位ビットによって第1、第2の2つの領
域に分割されるように構成され、前記第1の領域には、
前記上位ビット以外の下位ビットで指定されるアドレス
に第1のタスクのプログラムが記憶されるとともに、こ
のプログラムに引き続くアドレスに前記第1のタスクの
プログラムへのジャンプ命令が記憶され、前記第2の領
域には、前記第1の領域において前記第1のタスクのプ
ログラムが記憶されたアドレスの下位ビットと同じ下位
ビットで指定されるアドレスに前記第1のタスクのプロ
グラムと同じプログラムが記憶されるとともに、このプ
ログラムに引き続くアドレスに第2のタスクのプログラ
ムが記憶され、前記アドレス修飾手段は、前記第2のタ
スクを実行するための割り込み命令を受けたときに、前
記上位ビットによって前記第2の領域を指定するように
前記メモリ手段に対するアドレスを修飾し、前記第2の
タスクの実行終了とともに前記上位ビットによって前記
第1の領域を指定するように前記メモリ手段に対するア
ドレスを修飾することを特徴とするものである。
的に起動されるタスクを2つ以上実行する計算機におい
て、前記タスクを実行するためのプログラムが記憶され
るメモリ手段と、前記メモリ手段の記憶領域を指定する
ように前記メモリ手段に対するアドレスを修飾し、この
修飾したアドレスを前記メモリ手段に供給するアドレス
修飾手段とを具備し、前記メモリ手段は、前記修飾され
たアドレスの上位ビットによって第1、第2の2つの領
域に分割されるように構成され、前記第1の領域には、
前記上位ビット以外の下位ビットで指定されるアドレス
に第1のタスクのプログラムが記憶されるとともに、こ
のプログラムに引き続くアドレスに前記第1のタスクの
プログラムへのジャンプ命令が記憶され、前記第2の領
域には、前記第1の領域において前記第1のタスクのプ
ログラムが記憶されたアドレスの下位ビットと同じ下位
ビットで指定されるアドレスに前記第1のタスクのプロ
グラムと同じプログラムが記憶されるとともに、このプ
ログラムに引き続くアドレスに第2のタスクのプログラ
ムが記憶され、前記アドレス修飾手段は、前記第2のタ
スクを実行するための割り込み命令を受けたときに、前
記上位ビットによって前記第2の領域を指定するように
前記メモリ手段に対するアドレスを修飾し、前記第2の
タスクの実行終了とともに前記上位ビットによって前記
第1の領域を指定するように前記メモリ手段に対するア
ドレスを修飾することを特徴とするものである。
【0008】
【作用】上記のように構成した本発明によれば、タスク
の切り替えは、種々のタスクが記憶されたメモリ手段の
領域の指定が領域指定手段で切り替えられることによっ
て行われるが、現在実行中のタスクが中断され新しいタ
スクに切り替えられる場合に、上記新しいタスクが記憶
されている新たな指定領域には、現在実行中のタスクの
プログラムと新しいタスクのプログラムとが続けて記憶
されているので、領域が切り替えられた後でも、現在実
行中のタスクが1サイクル実行された後に新しいタスク
が実行されて、その実行の終了後に再び元のタスクに戻
るようになる。
の切り替えは、種々のタスクが記憶されたメモリ手段の
領域の指定が領域指定手段で切り替えられることによっ
て行われるが、現在実行中のタスクが中断され新しいタ
スクに切り替えられる場合に、上記新しいタスクが記憶
されている新たな指定領域には、現在実行中のタスクの
プログラムと新しいタスクのプログラムとが続けて記憶
されているので、領域が切り替えられた後でも、現在実
行中のタスクが1サイクル実行された後に新しいタスク
が実行されて、その実行の終了後に再び元のタスクに戻
るようになる。
【0009】以上のことを、例えば、上記領域指定手段
としてアドレス修飾手段を用いた本発明の他の特徴とす
るところに基づいてもう少し詳しく説明すると、以下の
ようになる。
としてアドレス修飾手段を用いた本発明の他の特徴とす
るところに基づいてもう少し詳しく説明すると、以下の
ようになる。
【0010】すなわち、計算機が第1のタスクを中断し
て第2のタスクに切り替える際には、第2のタスクを実
行するための割り込み命令に応じて、アドレス修飾手段
により修飾される上位ビットが第2の領域を指定する状
態に変化することにより、第1の領域から第2の領域に
メモリ手段のアドレスが切り替えられる。
て第2のタスクに切り替える際には、第2のタスクを実
行するための割り込み命令に応じて、アドレス修飾手段
により修飾される上位ビットが第2の領域を指定する状
態に変化することにより、第1の領域から第2の領域に
メモリ手段のアドレスが切り替えられる。
【0011】切り替えられた第2の領域にも現在実行中
の第1のタスクのプログラムと同じプログラムが記憶さ
れているので、第1の領域から第2の領域に切り替えら
れた後でも、第1のタスクのプログラムが1サイクル終
了するまでは第1のタスクが実行される。第2の領域に
おいては、第1のタスクの実行プログラムに引き続いて
第2のタスクの実行プログラムが記憶されているので、
第1のタスクの実行が終了した後には第2のタスクが実
行される。
の第1のタスクのプログラムと同じプログラムが記憶さ
れているので、第1の領域から第2の領域に切り替えら
れた後でも、第1のタスクのプログラムが1サイクル終
了するまでは第1のタスクが実行される。第2の領域に
おいては、第1のタスクの実行プログラムに引き続いて
第2のタスクの実行プログラムが記憶されているので、
第1のタスクの実行が終了した後には第2のタスクが実
行される。
【0012】第2のタスクの実行が終了すると、アドレ
ス修飾手段により修飾される上位ビットが第1の領域を
指定する状態に戻ることにより、第2の領域から第1の
領域にメモリ手段のアドレスが切り替えられる。切り替
えられた第1の領域のアドレスには第1のタスクのプロ
グラムへのジャンプ命令が記憶されているので、そのジ
ャンプ命令に従って第1のタスクのプログラムが再び実
行される。
ス修飾手段により修飾される上位ビットが第1の領域を
指定する状態に戻ることにより、第2の領域から第1の
領域にメモリ手段のアドレスが切り替えられる。切り替
えられた第1の領域のアドレスには第1のタスクのプロ
グラムへのジャンプ命令が記憶されているので、そのジ
ャンプ命令に従って第1のタスクのプログラムが再び実
行される。
【0013】このように、本発明によれば、レジスタの
値を一切待避することなく、タスクの切り替えを行うこ
とが可能となる。
値を一切待避することなく、タスクの切り替えを行うこ
とが可能となる。
【0014】
【実施例】以下、本発明の一実施例を図面を参照して説
明する。図1は、本発明の一実施例である計算機システ
ムの構成を示す図である。
明する。図1は、本発明の一実施例である計算機システ
ムの構成を示す図である。
【0015】図1において、1はプログラムメモリであ
り、後ほど図2を用いて説明するプログラムが格納され
ている。プログラムメモリ1は、アドレス修飾回路2か
らアドレスバス8を介して供給されるアドレスに従って
命令が選択され、この選択された命令がデータバス10
に出力されるようになっている。
り、後ほど図2を用いて説明するプログラムが格納され
ている。プログラムメモリ1は、アドレス修飾回路2か
らアドレスバス8を介して供給されるアドレスに従って
命令が選択され、この選択された命令がデータバス10
に出力されるようになっている。
【0016】アドレス修飾回路2は、第3ポート6から
修飾開始要求信号11が与えられたときに、CPU3か
らアドレスバス9に出力される8ビットのアドレスの上
位側に、値が“1”の1ビットを付け加えて9ビットの
アドレスとし、これをアドレスバス8に出力する。ま
た、第4ポート7から修飾完了要求信号12が与えられ
たときに、CPU3からアドレスバス9に出力される8
ビットのアドレスの上位側に、値が“0”の1ビットを
付け加えて9ビットのアドレスとし、これをアドレスバ
ス8に出力する。なお、初期状態では、CPU3からア
ドレスバス9に出力される8ビットのアドレスの上位側
に付け加える値を“0”とし、これにより得られる9ビ
ットのアドレスをアドレスバス8に出力するものとす
る。
修飾開始要求信号11が与えられたときに、CPU3か
らアドレスバス9に出力される8ビットのアドレスの上
位側に、値が“1”の1ビットを付け加えて9ビットの
アドレスとし、これをアドレスバス8に出力する。ま
た、第4ポート7から修飾完了要求信号12が与えられ
たときに、CPU3からアドレスバス9に出力される8
ビットのアドレスの上位側に、値が“0”の1ビットを
付け加えて9ビットのアドレスとし、これをアドレスバ
ス8に出力する。なお、初期状態では、CPU3からア
ドレスバス9に出力される8ビットのアドレスの上位側
に付け加える値を“0”とし、これにより得られる9ビ
ットのアドレスをアドレスバス8に出力するものとす
る。
【0017】CPU3は、プログラムメモリ1内の次に
実行すべき命令が格納されている8ビットのアドレスを
アドレスバス9に出力する。この8ビットのアドレス
は、アドレス修飾回路2により9ビットのアドレスに修
飾された後、プログラムメモリ1に供給される。そし
て、この9ビットのアドレスに従って選択された命令が
プログラムメモリ1からデータバス10に出力される
が、CPU3はまた、上記データバス10に出力された
命令を読み込んでそれを実行する。
実行すべき命令が格納されている8ビットのアドレスを
アドレスバス9に出力する。この8ビットのアドレス
は、アドレス修飾回路2により9ビットのアドレスに修
飾された後、プログラムメモリ1に供給される。そし
て、この9ビットのアドレスに従って選択された命令が
プログラムメモリ1からデータバス10に出力される
が、CPU3はまた、上記データバス10に出力された
命令を読み込んでそれを実行する。
【0018】第1ポート4および第3ポート6は、それ
ぞれ図1に示す計算機システムが外部からデータを取り
込む入力ポートである。第3ポート6にデータが入力さ
れると、修飾開始要求信号11がアドレス修飾回路2に
供給されることによりアドレスの修飾が要求され、第3
ポート6内のデータがCPU3によりデータバス10に
読み出されると、アドレスの修飾要求が取り下げられる
ようになっている。
ぞれ図1に示す計算機システムが外部からデータを取り
込む入力ポートである。第3ポート6にデータが入力さ
れると、修飾開始要求信号11がアドレス修飾回路2に
供給されることによりアドレスの修飾が要求され、第3
ポート6内のデータがCPU3によりデータバス10に
読み出されると、アドレスの修飾要求が取り下げられる
ようになっている。
【0019】第2ポート5および第4ポート7は、それ
ぞれ図1に示す計算機システムが外部へデータを出力す
る出力ポートである。CPU3によってデータバス10
を介して第4ポート7にデータが書き込まれると、修飾
完了要求信号12がアドレス修飾回路2に供給されるこ
とにより、アドレス修飾が初期状態に戻るように指示さ
れるようになっている。
ぞれ図1に示す計算機システムが外部へデータを出力す
る出力ポートである。CPU3によってデータバス10
を介して第4ポート7にデータが書き込まれると、修飾
完了要求信号12がアドレス修飾回路2に供給されるこ
とにより、アドレス修飾が初期状態に戻るように指示さ
れるようになっている。
【0020】上述したプログラムメモリ1は、アドレス
の最上位ビットが“0”である第1の領域と、最上位ビ
ットが“1”である第2の領域とに分けられる。第1の
領域には、図2(a)に示すように、前半の000H〜
010Hのアドレスに、ある1つのタスクを実行するた
めのプログラムが記憶されるとともに、引き続く011
H以降のアドレスに、このプログラムを繰り返し実行す
るためのジャンプ命令が記憶されている。
の最上位ビットが“0”である第1の領域と、最上位ビ
ットが“1”である第2の領域とに分けられる。第1の
領域には、図2(a)に示すように、前半の000H〜
010Hのアドレスに、ある1つのタスクを実行するた
めのプログラムが記憶されるとともに、引き続く011
H以降のアドレスに、このプログラムを繰り返し実行す
るためのジャンプ命令が記憶されている。
【0021】また、第2の領域には、図2(b)に示す
ように、前半の100H〜110Hのアドレスに、上記
000H〜010Hのアドレスに記憶されているプログ
ラムと同じプログラムが記憶されている。アドレス11
0Hに引き続くアドレス111Hから後は、他のタスク
を実行するためのプログラムが記憶される。
ように、前半の100H〜110Hのアドレスに、上記
000H〜010Hのアドレスに記憶されているプログ
ラムと同じプログラムが記憶されている。アドレス11
0Hに引き続くアドレス111Hから後は、他のタスク
を実行するためのプログラムが記憶される。
【0022】次に、以上のように構成された計算機シス
テムの動作を説明する。CPU3は、アドレス000H
(Hは“000”が16進数であることを示している)
の命令から実行を開始し、第1ポート4からレジスタA
にデータを書き込む。次に、CPU3は、このレジスタ
A内のデータを使用してアドレス001H〜00FHの
命令で何らかの処理fを実行し、その結果をレジスタB
に書き込む。なお、図示は省略したが、上述のレジスタ
A,Bは、CPU3の中に備えられているものである。
次にアドレス010Hの命令でレジスタBの内容を第2
ポート5に書き出す。そして、アドレス011Hの命令
でアドレス000Hにジャンプし、ループを形成するも
のとする。
テムの動作を説明する。CPU3は、アドレス000H
(Hは“000”が16進数であることを示している)
の命令から実行を開始し、第1ポート4からレジスタA
にデータを書き込む。次に、CPU3は、このレジスタ
A内のデータを使用してアドレス001H〜00FHの
命令で何らかの処理fを実行し、その結果をレジスタB
に書き込む。なお、図示は省略したが、上述のレジスタ
A,Bは、CPU3の中に備えられているものである。
次にアドレス010Hの命令でレジスタBの内容を第2
ポート5に書き出す。そして、アドレス011Hの命令
でアドレス000Hにジャンプし、ループを形成するも
のとする。
【0023】このループの実行中に、例えばアドレス0
01Hで外部から第3ポート6にデータが入力された、
すなわち新しいタスクを実行するための割り込み要求が
されたと仮定する。この場合、修飾開始要求信号11が
アドレス修飾回路2に供給されることによりアドレス修
飾要求が出される。これに応じてアドレス修飾回路2で
は、アドレスバス9から入力された01Hのアドレス
が、その最上位に値が“1”の1ビットが付け加えられ
てアドレス101Hとされる。このアドレス101Hは
アドレスバス8に出力されてプログラムメモリ1に供給
される。
01Hで外部から第3ポート6にデータが入力された、
すなわち新しいタスクを実行するための割り込み要求が
されたと仮定する。この場合、修飾開始要求信号11が
アドレス修飾回路2に供給されることによりアドレス修
飾要求が出される。これに応じてアドレス修飾回路2で
は、アドレスバス9から入力された01Hのアドレス
が、その最上位に値が“1”の1ビットが付け加えられ
てアドレス101Hとされる。このアドレス101Hは
アドレスバス8に出力されてプログラムメモリ1に供給
される。
【0024】これにより、プログラムメモリ1のアドレ
スが第1の領域から第2の領域に切り替えられ、第2の
領域のアドレス101H以降の処理が順次行われること
になる。このとき、第2の領域のアドレス101H〜1
10Hまでは、第1の領域のアドレス001H〜010
Hまでの処理と全く同じ処理が行われる。
スが第1の領域から第2の領域に切り替えられ、第2の
領域のアドレス101H以降の処理が順次行われること
になる。このとき、第2の領域のアドレス101H〜1
10Hまでは、第1の領域のアドレス001H〜010
Hまでの処理と全く同じ処理が行われる。
【0025】引き続くアドレス111H以降では、新し
いタスクが実行される。すなわち、まずアドレス111
Hで第3ポート6からレジスタAにデータが書き込まれ
る。その後、このレジスタAのデータを使用してアドレ
ス112H〜15FHの命令で何らかの処理gが実行さ
れ、その結果がレジスタBに書き込まれる。
いタスクが実行される。すなわち、まずアドレス111
Hで第3ポート6からレジスタAにデータが書き込まれ
る。その後、このレジスタAのデータを使用してアドレ
ス112H〜15FHの命令で何らかの処理gが実行さ
れ、その結果がレジスタBに書き込まれる。
【0026】次に、アドレス160Hの命令でレジスタ
Bの内容が第4ポート7に書き込まれると、修飾完了要
求信号12がアドレス修飾回路2に供給される。これに
応じてアドレス修飾回路2によりアドレスの修飾が初期
状態に戻される。つまり、プログラムメモリ1のアドレ
スが第2の領域から第1の領域に切り替えられる。
Bの内容が第4ポート7に書き込まれると、修飾完了要
求信号12がアドレス修飾回路2に供給される。これに
応じてアドレス修飾回路2によりアドレスの修飾が初期
状態に戻される。つまり、プログラムメモリ1のアドレ
スが第2の領域から第1の領域に切り替えられる。
【0027】この場合、アドレスバス9から次に入力さ
れる61Hのアドレスが、その最上位に値が“0”の1
ビットが付け加えられてアドレス061Hとされる。こ
れにより、アドレス160Hの命令の次にはアドレス0
61Hの命令が実行され、アドレス000Hにジャンプ
して元のタスクのループが再び実行される。
れる61Hのアドレスが、その最上位に値が“0”の1
ビットが付け加えられてアドレス061Hとされる。こ
れにより、アドレス160Hの命令の次にはアドレス0
61Hの命令が実行され、アドレス000Hにジャンプ
して元のタスクのループが再び実行される。
【0028】以上のように、本実施例によれば、ある1
つのタスクの実行中に他のタスクを実行するための割り
込み命令があった場合に、現在実行中のタスクのプログ
ラムが1サイクル終了してから新しいタスクに切り替わ
るようになるので、あるタスクの処理途中の値をスタッ
クメモリなどに待避し、新しいタスクの実行が終了した
後に待避しておいた値を復元するようにしなくもタスク
の切り替えを行うことができる。
つのタスクの実行中に他のタスクを実行するための割り
込み命令があった場合に、現在実行中のタスクのプログ
ラムが1サイクル終了してから新しいタスクに切り替わ
るようになるので、あるタスクの処理途中の値をスタッ
クメモリなどに待避し、新しいタスクの実行が終了した
後に待避しておいた値を復元するようにしなくもタスク
の切り替えを行うことができる。
【0029】なお、上述の実施例では、2つのタスクを
切り替える場合について説明しているが、本発明はこの
数に限定されるものではなく、非同期的に起動されるタ
スクを2つ以上実行する計算機であれば、本発明を適用
することが可能である。また、上述の実施例では、修飾
されたアドレスによって領域の指定を行っていたが、例
えば専用の識別子等を用いて指定を行うようにしてもよ
い。
切り替える場合について説明しているが、本発明はこの
数に限定されるものではなく、非同期的に起動されるタ
スクを2つ以上実行する計算機であれば、本発明を適用
することが可能である。また、上述の実施例では、修飾
されたアドレスによって領域の指定を行っていたが、例
えば専用の識別子等を用いて指定を行うようにしてもよ
い。
【0030】
【発明の効果】以上説明したように本発明によれば、現
在実行中のタスクの処理途中の値が格納されたレジスタ
の内容を待避、復元することなくタスクの切り替えを行
うことができる。このため、タスクの切り替えに伴うオ
ーバーヘッドを少なくすることができ、マルチタスク処
理の効率を向上させることができる。
在実行中のタスクの処理途中の値が格納されたレジスタ
の内容を待避、復元することなくタスクの切り替えを行
うことができる。このため、タスクの切り替えに伴うオ
ーバーヘッドを少なくすることができ、マルチタスク処
理の効率を向上させることができる。
【図1】本発明の一実施例である計算機システムの構成
を示す図である。
を示す図である。
【図2】プログラムメモリに記憶されるプログラムの一
例を示す図である。
例を示す図である。
1 プログラムメモリ 2 アドレス修飾回路 3 CPU 4 第1ポート 5 第2ポート 6 第3ポート 7 第4ポート 8 アドレスバス 9 アドレスバス 10 データバス 11 修飾開始要求信号 12 修飾完了要求信号
Claims (2)
- 【請求項1】 ある1つのタスクを実行するためのプロ
グラムが記憶されると共にこのプログラムに引き続いて
前記ある1つのタスクのプログラムへのジャンプ命令が
記憶される領域と、前記ある1つのタスクのプログラム
と同じプログラムが記憶されると共にこのプログラムに
引き続いて前記ある1つのタスク以外のタスクのプログ
ラムが記憶される領域とにより複数の領域に分割された
メモリ手段と、 前記メモリ手段の複数の領域の中からいずれかの領域を
指定する領域指定手段と、 前記領域指定手段により指定された領域に記憶されてい
るタスクの命令を読み出して実行する命令実行手段とを
設けたことを特徴とするマルチタスク処理を行う計算
機。 - 【請求項2】 非同期的に起動されるタスクを2つ以上
実行する計算機において、 前記タスクを実行するためのプログラムが記憶されるメ
モリ手段と、 前記メモリ手段の記憶領域を指定するように前記メモリ
手段に対するアドレスを修飾し、この修飾したアドレス
を前記メモリ手段に供給するアドレス修飾手段とを具備
し、 前記メモリ手段は、前記修飾されたアドレスの上位ビッ
トによって第1、第2の2つの領域に分割されるように
構成され、 前記第1の領域には、前記上位ビット以外の下位ビット
で指定されるアドレスに第1のタスクのプログラムが記
憶されるとともに、このプログラムに引き続くアドレス
に前記第1のタスクのプログラムへのジャンプ命令が記
憶され、 前記第2の領域には、前記第1の領域において前記第1
のタスクのプログラムが記憶されたアドレスの下位ビッ
トと同じ下位ビットで指定されるアドレスに前記第1の
タスクのプログラムと同じプログラムが記憶されるとと
もに、このプログラムに引き続くアドレスに第2のタス
クのプログラムが記憶され、 前記アドレス修飾手段は、前記第2のタスクを実行する
ための割り込み命令を受けたときに、前記上位ビットに
よって前記第2の領域を指定するように前記メモリ手段
に対するアドレスを修飾し、前記第2のタスクの実行終
了とともに前記上位ビットによって前記第1の領域を指
定するように前記メモリ手段に対するアドレスを修飾す
ることを特徴とするマルチタスク処理を行う計算機。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24209794A JPH0883188A (ja) | 1994-09-09 | 1994-09-09 | マルチタスク処理を行う計算機 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP24209794A JPH0883188A (ja) | 1994-09-09 | 1994-09-09 | マルチタスク処理を行う計算機 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0883188A true JPH0883188A (ja) | 1996-03-26 |
Family
ID=17084264
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP24209794A Withdrawn JPH0883188A (ja) | 1994-09-09 | 1994-09-09 | マルチタスク処理を行う計算機 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0883188A (ja) |
-
1994
- 1994-09-09 JP JP24209794A patent/JPH0883188A/ja not_active Withdrawn
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPS6212529B2 (ja) | ||
| JP2003058381A (ja) | プログラムによる例外処理設定を可能にしたプロセッサ | |
| JPH0883188A (ja) | マルチタスク処理を行う計算機 | |
| JPH08249018A (ja) | マルチプロセッサ演算装置、および該装置を有するプログラマブルコントローラ | |
| JP3024719B2 (ja) | プログラマブルコントローラの演算処理方法 | |
| JPH06324861A (ja) | Cpu制御システム及び制御方法 | |
| JP3331357B2 (ja) | プログラマブルコントローラ | |
| JPH0158522B2 (ja) | ||
| JP3575052B2 (ja) | 電子装置 | |
| JPH08297583A (ja) | 割り込み処理装置およびその方法 | |
| JP2985244B2 (ja) | 情報処理装置 | |
| JPS59144955A (ja) | 情報処理装置 | |
| JPS61182135A (ja) | 処理選択方法 | |
| JP2506591B2 (ja) | 補助処理装置 | |
| JPS58142451A (ja) | 割込制御方式 | |
| JPH0651817A (ja) | プログラマブルコントローラ | |
| JPS6227830A (ja) | 割込み制御方式 | |
| JPH056280A (ja) | 割り込み制御方式 | |
| JPH0198023A (ja) | 条件付きサブルーチン呼出し方式 | |
| JPH09160786A (ja) | マイクロプロセッサ | |
| JPS61103245A (ja) | 機械語命令体系の拡張方式 | |
| JPH05241853A (ja) | プログラマブルコントローラ | |
| JPS63155338A (ja) | プログラム実行履歴記録制御方式 | |
| JPH07334215A (ja) | プログラマブルコントローラのシーケンス制御方法 | |
| JPS63282526A (ja) | 電子計算機制御方式 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20011120 |