JPH06266567A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH06266567A
JPH06266567A JP8124493A JP8124493A JPH06266567A JP H06266567 A JPH06266567 A JP H06266567A JP 8124493 A JP8124493 A JP 8124493A JP 8124493 A JP8124493 A JP 8124493A JP H06266567 A JPH06266567 A JP H06266567A
Authority
JP
Japan
Prior art keywords
register
general
time
tcb
floating point
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
Application number
JP8124493A
Other languages
English (en)
Inventor
Yoshitaka Kashiwagi
喜孝 柏木
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.)
Yaskawa Electric Corp
Original Assignee
Yaskawa Electric Corp
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 Yaskawa Electric Corp filed Critical Yaskawa Electric Corp
Priority to JP8124493A priority Critical patent/JPH06266567A/ja
Publication of JPH06266567A publication Critical patent/JPH06266567A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】コンテキスト復旧時に生じる負荷の低減を行な
うことのできるマイクロプロセッサを提供する。 【構成】マイクロプロセッサのレジスタに対してプロセ
スによるレジスタの使用を示すフラグを備え、そのフラ
グをオペレーティングシステムに対して任意の時点で読
み書きを許可することにより、コンテキストスイッチ時
に生じるOSの負荷の低減をはかる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、コンテキストスイッチ
時に生じる、コンテキストの退避や復旧の負荷のうち特
に大きな比重を占める、メインメモリへのマイクロプロ
セッサのレジスタの退避や復旧の負荷を低減する機構を
備えたマイクロプロセッサに関する。
【0002】
【従来の技術】従来のコンテキストスイッチに生じるコ
ンテキストの退避や復旧について、その対象となるタス
クコントロールブロック(TCB)の構成について図4
に示す。41は、コンテキストスイッチが起こった時の
プロセッサのレジスタの状態で、PC(プログラムカウ
ンタ)、SP(スタックポインタ)、汎用レジスタや浮
動小数点レジスタ等が含まれる。最近のRISCプロセ
ッサでは汎用レジスタと浮動小数点レジスタを合わせて
32個から64個と大量のレジスタを持つようになって
いる。42から46はOSに依存する部分である。これ
らにはタスクやスケジュールの状態を持っている。さら
に47と48はTCBの双方向リストを作る時必要なポ
インタである。従来はこれらのTCBはコンテキストス
イッチが起こった時は、OSにより41から48のすべ
ての構成要素がすべてメインメモリに退避(セーブ)さ
れ、メインメモリから復旧(リストア)されていた。特
に、マイクロプロセッサの汎用レジスタや浮動小数点レ
ジスタについてはその使用、未使用に関わらずTCBの
プロセッサのレジスタ退避領域にすべてのレジスタを書
き込んでいた。ところが、従来技術では、このようなコ
ンテキストスイッチ時に、マイクロプロセッサのレジス
タの退避や復旧を行なう部分がプロセッサに依存するこ
とになり、最近のRISCプロセッサのように多くのレ
ジスタを持つようになると、メインメモリへのこのレジ
スタの退避や復旧は大きな負荷となりOSの処理能力を
落すことになる。そこで、特開平4−211837号公
報に示すように、レジスタセットに一対一に対応した情
報を保持する手段(モディファイビット=フラグ)を備
えて、退避時の負荷低減を行うものが提案されている。
【0003】
【発明が解決しようとする課題】ところが、特開平4−
211837号公報では、退避時は負荷が低減される
が、復旧時には負荷低減が行なわれないという問題があ
る。そこで本発明では、OSのコンテキスト復旧時に生
じる負荷の低減を行なうことのできるマイクロプロセッ
サを提供することを目的とするものである。
【0004】
【課題を解決するための手段】上記課題を解決するため
に、本発明は、マイクロプロセッサのレジスタに対して
プロセスによるレジスタの使用を示すフラグ(レジスタ
使用フラグ)を備え、そのフラグをオペレーティングシ
ステムに対して任意の時点で読み書きを許可することに
より、コンテキストスイッチ時に生じるOSの負荷の低
減をはかることを特徴とするものである。
【0005】
【作用】このフラグをOSが参照することにより退避や
復旧するレジスタを選択することでOSのコンテキスト
スイッチ時に生じる、メインメモリへのアクセスという
負荷の低減を行なうものである。特に、復旧時には、以
前の退避時に作成したレジスタ使用フラグを参照するこ
とで効率よく復旧できる。
【0006】
【実施例】本発明のTCB(タスク・コントロール・ブ
ロック)の構成について図1に示し、コンテキストスイ
ッチ時のプロセッサのレジスタの退避フローを図2、復
帰のフローを図3に示す。マイクロプロセッサには汎用
レジスタと浮動小数点レジスタの使用を示すフラグレジ
スタが備えられ、コンテキストスイッチ時に、図1の1
aと1cにこのレジスタがOSによりそれそれ格納され
る。また、このレジスタはレジスタを使用中であればセ
ットされる。ここでコンテキストスイッチ時における各
レジスタの退避と復旧に対してOSはこのビットをチェ
ックして、汎用レジスタは1bの汎用レジスタ格納領域
にまた浮動小数点レジスタは1dの浮動小数点レジスタ
格納領域にそれぞれ退避と復旧が行なわれる。残りの、
構成がOSに依存する部分である2〜8はTCBの所定
の場所にOSにより退避と復旧が行なわれる。図5は、
レジスタセットの一例で、例えば32ビットの長のレジ
スタ64本を有し、そのうち51が1本の汎用レジスタ
使用フラグ、52が31本が汎用レジスタ、53が1本
の浮動小数点レジスタ使用フラグ、54が31本の浮動
小数点レジスタとしている。図では、汎用レジスタの1
本(R0)のみを使用している状態を示している(汎用
レジスタ使用フラグの最下位ビットに1が立ってい
る)。
【0007】TCBの退避については図2のフローチャ
ートの様に行なわれる。まず、コンテキストスイッチが
起こった場合は新しいTCBを作成し(21)、このT
CBへのポインタを次のTCBへのポインタにセットし
て、今後はこの新しく作成されたTCBを対象に退避が
行なわれる。つぎに、汎用レジスタ使用フラグレジスタ
をTCBの所定の場所に退避する(22)。このレジス
タを元にのi番目の汎用レジスタの使用の有無のチェッ
クを行なう(23)。もし使用されていればi番目のレ
ジスタはOSによりTCBの領域に退避される(2
4)。浮動小数点レジスタの退避についても同様にして
行なわれる。つまり、浮動小数点使用レジスタをTCB
に退避し(25)、使用のチェックを行ない(26)、
もし使用されていれば、その浮動小数点レジスタを退避
する(27)。最後に、TCBでもOSに依存する部分
が設定される(28)。
【0008】逆に、復旧の場合はこの逆のことが行なわ
れる。これを図3のフローチャートを用いて説明する。
まず、以前のTCBのポインタの復旧をおこなう(すな
わち、以前の退避時にメインメモリ上に作成されたTC
Bを探しだす)。(31)。これは前のTCBへのポイ
ンタを得ることにより行なうことができる。汎用レジス
タ使用フラグレジスタをプロセッサに復旧する(3
2)。つまり、これによりこのタスクをコンテキストス
イッチ以前のレジスタ使用状況に戻す必要があるからで
ある。このレジスタを元に以前の使用状況をチェックし
て(33)、使用されているものを復旧する(34)。
浮動小数点レジスタ使用フラグレジスタをプロセッサに
復旧する(35)。この目的は汎用レジスタの時と同様
である(36)。浮動小数点レジスタの以前の使用状況
をチェックして(37)、使用されていれば復旧する。
OSに依存するTCBを元に復旧後のタスクの状態がO
Sにより設定される(38)。TCBの前のTCBへポ
インタを元に以前のTCBを復旧する(39)。そし
て、この復旧以前のTCBはもはや存在しないためこの
TCBはクリアされる。以上により、コンテキストスイ
ッチ時に起きるOSの負荷を低減することができる。
【0006】
【発明の効果】以上述べたように本発明によれば、コン
テキストスイッチ時に起きるOSの負荷を低減すること
ができるという効果がある。したがって、レジスタを豊
富に持つ傾向にある最新のRISCプロセッサを使用し
たOSのコンテキストスイッチの負荷の軽減に対して特
に効果的である。
【図面の簡単な説明】
【図1】本発明のタスクコントロールブロック構成図
【図2】本発明のタスクコントロールブロックの退避の
フローチャート
【図3】本発明のタスクコントロールブロックの復旧の
フローチャート
【図4】従来のタスクコントロールブロック構成図
【図5】本発明のレジスタセットの一例を示す図
【符号の説明】
51 汎用レジスタ使用フラグ 52 汎用レジスタ 53 浮動小数点レジスタ使用フラグ 54 浮動小数点レジスタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】レジスタを有するマイクロプロセッサにお
    いて、プロセスによるレジスタの使用を示すフラグを備
    え、そのフラグをオペレーティングシステムに対して任
    意の時点で読み書きを許可するようにしたことを特徴と
    するマイクロプロセッサ。
JP8124493A 1993-03-15 1993-03-15 マイクロプロセッサ Pending JPH06266567A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8124493A JPH06266567A (ja) 1993-03-15 1993-03-15 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8124493A JPH06266567A (ja) 1993-03-15 1993-03-15 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH06266567A true JPH06266567A (ja) 1994-09-22

Family

ID=13741006

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8124493A Pending JPH06266567A (ja) 1993-03-15 1993-03-15 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH06266567A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007122421A (ja) * 2005-10-28 2007-05-17 Matsushita Electric Ind Co Ltd メモリ管理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007122421A (ja) * 2005-10-28 2007-05-17 Matsushita Electric Ind Co Ltd メモリ管理方法

Similar Documents

Publication Publication Date Title
KR100848603B1 (ko) 데이터 처리장치와 복귀상태의 저장방법
US8447959B2 (en) Multithread processor and method of controlling multithread processor
US6666383B2 (en) Selective access to multiple registers having a common name
KR20000064488A (ko) 단일레지스터파일을이용하여부동점과압축데이터명령을실행하는방법및장치
US4945510A (en) Register device
EP0239078A2 (en) Register saving/restoring system
EP0437207B1 (en) Backward-compatible information processing system
JPH06266567A (ja) マイクロプロセッサ
JPH05225076A (ja) 共通情報管理方法及びシステム
US5491826A (en) Microprocessor having register bank and using a general purpose register as a stack pointer
US7171547B1 (en) Method and apparatus to save processor architectural state for later process resumption
EP0787326B1 (en) System and method for processing of memory data and communication system comprising such system
US5778207A (en) Assisting operating-system interrupts using application-based processing
JP2562838B2 (ja) プロセッサ及びストアバッファ制御方法
JPH0713805A (ja) 並列計算機及びプログラム実行再現方法
JPH0259837A (ja) データリカバリ処理方式
JPH02293950A (ja) メモリバックアップ方式
JPH04264625A (ja) レジスタ管理方式
KR100870175B1 (ko) 에이알엠7 계열 마이크로 컨트롤러에서의 콘텍스트 스위치방법
JPH04178739A (ja) マイクロプロセッサ
EP0369407A2 (en) Central processing unit for data processor having emulation function
JPH01118932A (ja) 情報処理装置
JPS6222149A (ja) プロセス切り換え方式
JPH03225529A (ja) マイクロプロセッサ
JPH11134202A (ja) タスク切替え装置