JP2677458B2 - システムコール実行装置 - Google Patents

システムコール実行装置

Info

Publication number
JP2677458B2
JP2677458B2 JP3007338A JP733891A JP2677458B2 JP 2677458 B2 JP2677458 B2 JP 2677458B2 JP 3007338 A JP3007338 A JP 3007338A JP 733891 A JP733891 A JP 733891A JP 2677458 B2 JP2677458 B2 JP 2677458B2
Authority
JP
Japan
Prior art keywords
task
privileged
instruction
address
system call
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 - Fee Related
Application number
JP3007338A
Other languages
English (en)
Other versions
JPH04241032A (ja
Inventor
幹雄 荻須
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.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial 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 Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP3007338A priority Critical patent/JP2677458B2/ja
Publication of JPH04241032A publication Critical patent/JPH04241032A/ja
Application granted granted Critical
Publication of JP2677458B2 publication Critical patent/JP2677458B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3005Arrangements for executing specific machine instructions to perform operations for flow control
    • G06F9/30061Multi-way branch instructions, e.g. CASE

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、分岐処理、システムコ
ール処理や割込み処理時に発生するスタックエリアへの
自動待避処理を一律に行うのではなく、必要なときのみ
実行し、かつ上記処理を特権モードで行うときは特権モ
ードへの移行を実行するシステムコール実行装置に関す
るものである。
【0002】
【従来の技術】従来、システム管理に関連するタスクは
システム制御レジスタなどのCPU状態を決定する動作
を制御しており、ユーザーアプリケーションプログラム
で構成されたユーザータスクの暴走などの要因により上
記レジスタの誤設定やCPUの状態を決定する命令の実
行を回避するため、システム管理を扱うタスクにはハー
ドウェアで保護機能を動作させ、システムの信頼性を向
上させていた。システムタスク上では割込みの受理処理
やタスクスケジュールリング処理やIOドライバの起動
が行われるが、マルチバンクで構成されたシステムでは
ユーザータスクを起動後、特権タスクを実行していたバ
ンクでの処理が発生せず、システムコール発生持ちや割
込み発生待ち状態であるシステムも存在している。ま
た、システムコール発生や割込み発生によってハードウ
ェアでは特権タスクを実行するバンクのCPU演算部の
結果や特権タスクのインストラクションポインタ、ある
いはCPUの状態を決定するレジスタを待避し、バンク
の状態を保存しておいてからシステムコール処理や割込
み処理を実行していた。したがって、上記の待ち状態に
あるバンクでは待避動作が必要ないにもかかわらず、待
避処理が実行されていた。
【0003】一方、システムコールの際にハードウェア
で特権モードに自動設定されるシステムコール命令を使
用せず、分岐命令の実行により直接特権プログラムを実
行するものがある。
【0004】
【発明が解決しようとする課題】しかし、上記のような
構成では、通常の分岐命令ではユーザーモード状態のま
まであり、ユーザーモードの状態から特権モード状態に
切り替えは不可能であった。この問題を解決する手段と
して、特権モード状態かユーザーモード状態かを示すフ
ラグをユーザーモードからも変更できたり、特権モード
でのみ実行可能ないわゆる特権命令の実行により特権状
態に移行したりする方法がとられるが、このようなシス
テムでは十分な保護機能を提供できなかった。
【0005】本発明は上記従来の問題を解決するもの
で、分岐処理、システムコール処理や割込み処理の場
合、それらの処理を実行するバンク上の状態を自動待避
するかどうかをユーザーが任意に指定でき、かつユーザ
ー状態から特権状態への移行に際して保護機能が働くシ
ステムコール実行装置を提供することを目的とするもの
である。
【0006】
【課題を解決するための手段】この課題を解決するため
に本発明のシステムコール実行装置は、ベクタアドレス
のテーブルアドレスにより分岐処理、システムコール処
理や割込み処理の実行前にバンク状態を待避するかどう
かを判断し、ベクタアドレス領域へのアクセスは無条件
に特権モードに移行するようにされ、分岐命令によるベ
クタアドレステーブルへの分岐には2重間接アドレスで
のアクセスのみ認め、保護をかけるように構成されてい
る。
【0007】
【0008】
【0009】
【作用】この構成により、リアルタイム処理が可能とな
り、システムのスループットを向上することができ、か
つユーザータスクからシステムタスクへの移行に保護機
能を付加することができ、システムの高信頼性を実現で
きる。
【0010】
【実施例】
以下本発明の一実施例を図面に基づいて説明する。 図1は本発明の一実施例のシステムコール実行装置の構
成図であり、アドレステーブルによりスタックへの自動
待避動作をするかどうかを決定し、かつユーザータスク
処理から特権タスク処理に移行したときに特権モードに
切り替える構成を示している。
【0011】図1において、分岐命令1は2重間接アド
レッシングの指定が可能であり、1重目の間接アドレッ
シングによりアドレステーブル指定14が行われ、メモリ
空間4のアドレステーブル領域6内のアドレスが選択さ
れる。アドレステーブル領域6のデータにはプログラム
の開始アドレスが格納されている。分岐命令1は2重目
の間接アドレッシングにより分岐先プログラムに分岐
し、プログラムが開始される。アドレステーブル領域6
には実行するプログラムの開始アドレスが格納されてお
り、アドレステーブル領域6内の一部にはハードウェア
による自動待避処理が一切発生しないアドレステーブル
領域5がある。
【0012】アドレステーブル指定14によりアドレステ
ーブル領域6の自動待避処理のないアドレステーブル領
域5が選択されたかどうかは、アドレステーブル領域判
定部7により判定される。アドレステーブル領域判定部
7にはアドレステーブル領域6の上限アドレス10と下限
アドレス11、自動待避処理のないアドレステーブル領域
5の上限アドレス8と下限アドレス9が入力され、アド
レステーブル指定14との比較が行われる。分岐命令1の
1重目の間接のアドレス指定がアドレステーブル領域6
の上限アドレス10と下限アドレス11の間のアドレスであ
った場合、アドレステーブル領域判定部7は特権/ユー
ザーモード管理部13に制御信号15を出力し、ソフトウェ
アの介入なしでCPUモード信号16を特権モードに切り
替える。さらに、アドレステーブル指定14が自動待避処
理のないアドレステーブル領域5の上限アドレス8と下
限アドレス9のアドレスであった場合、アドレステーブ
ル領域判定部7はμROM12に対して制御信号15を出力
し、特権バンク上のプログラム情報のスタックエリアへ
の自動待避を行わない。
【0013】システムコール命令2はユーザータスクか
らシステムタスクをコールする命令であり、アドレステ
ーブル指定子を持ち、アドレステーブル領域6内のアド
レスをベクタアドレスとし、特権プログラムに起動をか
ける。また、割込み3は割込み発生要因によりアドレス
テーブル領域6内のアドレスをベクタアドレスとする。
分岐命令1と同様に、システムコール命令2と割込み3
によりアドレステーブル指定14がアドレステーブル領域
判定部7に入力され、指定されたアドレステーブル領域
により特権バンク情報が自動待避されるかどうかが判断
され、また、特権モードに自動的に変更される。
【0014】アドレステーブルという特定のアドレス領
域の指定と、分岐命令1では2重間接アドレッシングで
ないと正常動作しないこととから、保護機能が働く。ま
た特権モードへの移行にはソフトウェアが介入せず、特
権バンク上のプログラム情報のスタックエリアへの自動
待避処理実行について実行するか否かを選択でき、高速
に処理をすることができる。
【0015】
【0016】
【0017】
【0018】
【0019】
【0020】
【0021】
【発明の効果】以上のように本発明によれば、特権モー
ドへの移行にはソフトウェアが介入せず、特権バンク上
のプログラム情報のスタックエリアへの自動待避処理実
行について実行するか否かを選択できて、リアルタイム
処理が可能となり、システムのスループットを向上する
ことができる。また、ユーザータスクからシステムタス
クへの移行に保護機能を付加することができ、ユーザー
タスクによるシステム環境の破壊を回避でき、システム
の高信頼性を実現できる。
【図面の簡単な説明】
【図1】本発明の一実施例の、アドレステーブルにより
スタックへの自動待避動作をするかどうかを決定し、か
つユーザータスク処理から特権タスク処理に移行したと
きに特権モードに切り替えるシステムコール実行装置を
示す構成図である。
【符号の説明】
1,17 分岐命令 2 システムコール命令 3 割込み 4,19 メモリ空間 5 自動待避処理のないアドレステーブル領域 6 アドレステーブル領域 7,18 アドレステーブル領域判定部 8,9 自動待避処理のないアドレステーブル領域の
上限アドレスと下限アドレス 10,11 アドレステーブル領域の上限アドレスと下限
アドレス 12,37 μROM 13,24 特権/ユーザーモード管理部 14 アドレステーブル指定 15 制御信号 16,25 CPUモード信号 20 特権プログラム領域 21,22 特権プログラム領域の上限アドレスと下限ア
ドレス 23 特権モード 26 分岐処理 27 システムコール 28 割込み処理 29 バンク管理部 30 レジスタファイル群 31 スタック自動待避フラグ 32 インバータ回路 33 ユーザータスク起動信号 34 プログラム、端子による設定 35 AND回路 36 特権バンク実行中信号

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】 システム管理を行う特権タスクとユーザ
    ータスクからタスクが構成され、かつユーザータスク処
    理から特権タスク処理に移行する場合、特権タスクが使
    用していたCPUモード(演算結果フラグ)とインスト
    ラクションポインタとメモリエリアあるいはレジスタエ
    リア内のデータ待避をするか、もしくは前記データ待避
    を全く行わないで特権タスクに制御を移行するかを切り
    替え可能に構成され、さらに、ユーザータスク上でのシ
    ステムコール発行時に、このシステムコール発行がシス
    テムコールオペコードと特権バンクの実行インストラク
    ションの開始アドレスが格納されているアドレステーブ
    ルの値で構成されるシステムコール命令を実行すること
    によりシステムコール処理をする第1の手段と、ユーザ
    ータスク上での分岐命令の実行時に、この分岐命令が分
    岐命令オペコードと特権バンクの実行インストラクショ
    ンの開始アドレスが格納されているアドレステーブルを
    指定することにより、間接的に前記インストラクション
    の開始アドレスを指定可能な2重間接アドレスで構成さ
    れる分岐命令を実行することにより分岐処理をする第2
    の手段と、割込みの実行時に、割込み処理要因毎に指定
    される割込み処理開始アドレスが格納されているアドレ
    ステーブルにより割込み処理をする第3の手段とを備
    え、前記3つの手段のいずれかによる実行時に、特権タ
    スクへの移行と、待避処理を行うかどうかをアドレステ
    ーブル自身のアドレスにより判断し、かつユーザータス
    ク処理から特権タスク処理に移行したときにソフトウェ
    アの介入なしでCPUを特権モードに切り替える手段を
    備えたことを特徴とするシステムコール実行装置。
JP3007338A 1991-01-25 1991-01-25 システムコール実行装置 Expired - Fee Related JP2677458B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3007338A JP2677458B2 (ja) 1991-01-25 1991-01-25 システムコール実行装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3007338A JP2677458B2 (ja) 1991-01-25 1991-01-25 システムコール実行装置

Publications (2)

Publication Number Publication Date
JPH04241032A JPH04241032A (ja) 1992-08-28
JP2677458B2 true JP2677458B2 (ja) 1997-11-17

Family

ID=11663160

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3007338A Expired - Fee Related JP2677458B2 (ja) 1991-01-25 1991-01-25 システムコール実行装置

Country Status (1)

Country Link
JP (1) JP2677458B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5237616A (en) * 1992-09-21 1993-08-17 International Business Machines Corporation Secure computer system having privileged and unprivileged memories
KR100505106B1 (ko) * 2002-05-29 2005-07-29 삼성전자주식회사 강화된 보안 기능을 갖춘 스마트 카드
JP4728619B2 (ja) * 2004-10-01 2011-07-20 富士通株式会社 ソフトウェアの改竄検出装置、改竄防止装置、改竄検出方法及び改竄防止方法
JP2008269597A (ja) * 2008-04-09 2008-11-06 Net Kuriasu Systems Kk タスク処理装置
JP5177206B2 (ja) * 2010-10-29 2013-04-03 富士通株式会社 ソフトウェアの改竄検出装置及び改竄検出方法
JP5177205B2 (ja) * 2010-10-29 2013-04-03 富士通株式会社 ソフトウェアの改竄防止装置及び改竄防止方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02118727A (ja) * 1988-10-27 1990-05-07 Kobe Nippon Denki Software Kk システムサブルーチン呼出し方式
JPH02272640A (ja) * 1989-04-14 1990-11-07 Nec Corp タスク切り替え方式

Also Published As

Publication number Publication date
JPH04241032A (ja) 1992-08-28

Similar Documents

Publication Publication Date Title
US5701493A (en) Exception handling method and apparatus in data processing systems
US20050138257A1 (en) Interrupt masking control
JP3970609B2 (ja) プロセッサシステム
JP2004157636A (ja) データ処理装置
JP2677458B2 (ja) システムコール実行装置
JP4114946B2 (ja) データ処理装置
JPH0484335A (ja) 仮想計算機制御方式
JPH0668725B2 (ja) データ処理システムにおける割込条件に応答する装置及び非同期割込条件に応答する方法
JPH0414376B2 (ja)
JP2723847B2 (ja) マイクロプロセッサ
JPS6376028A (ja) 仮想計算機システムにおける命令ステツプ実行制御方式
JPS61184644A (ja) 仮想計算機システム制御方式
JPH04256027A (ja) マイクロコンピュータ
JPH05224894A (ja) オペレーティングシステムの切替え方式
JPH03126134A (ja) Cpuのタスク切替方式
JP2761324B2 (ja) 高速演算処理方式
JPH02183342A (ja) 割込み制御装置
JPH05250161A (ja) マイクロコンピュータ装置
JPH01216433A (ja) 割込制御方式
JPH0683640A (ja) 割込応答処理方式
JPH0689349A (ja) マイクロプロセッサ
JPH05143741A (ja) フレーム・バツフア・アクセス装置
JPH06131250A (ja) データ処理装置
JPH04260961A (ja) マイクロコンピュータ
JP2000148511A (ja) マイクロコンピュータの割り込み処理装置および割り込み処理方法

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees