JP3404322B2 - 割込処理方法、os支援システム、情報処理装置、記録媒体 - Google Patents

割込処理方法、os支援システム、情報処理装置、記録媒体

Info

Publication number
JP3404322B2
JP3404322B2 JP14435799A JP14435799A JP3404322B2 JP 3404322 B2 JP3404322 B2 JP 3404322B2 JP 14435799 A JP14435799 A JP 14435799A JP 14435799 A JP14435799 A JP 14435799A JP 3404322 B2 JP3404322 B2 JP 3404322B2
Authority
JP
Japan
Prior art keywords
interrupt
processing
support system
request
information processing
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
JP14435799A
Other languages
English (en)
Other versions
JP2000330796A (ja
Inventor
陽 澤田
Original Assignee
株式会社エルミックシステム
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 株式会社エルミックシステム filed Critical 株式会社エルミックシステム
Priority to JP14435799A priority Critical patent/JP3404322B2/ja
Priority to US09/362,365 priority patent/US6539447B1/en
Priority to EP99118895A priority patent/EP1056008B1/en
Priority to DE69935205T priority patent/DE69935205T2/de
Priority to CA002284373A priority patent/CA2284373C/en
Priority to SG200002370A priority patent/SG104921A1/en
Priority to TW089108936A priority patent/TW509874B/zh
Priority to IL13627200A priority patent/IL136272A/en
Priority to CNB001089684A priority patent/CN1163834C/zh
Priority to KR1020000028284A priority patent/KR100716076B1/ko
Publication of JP2000330796A publication Critical patent/JP2000330796A/ja
Priority to HK01102863A priority patent/HK1032277A1/xx
Application granted granted Critical
Publication of JP3404322B2 publication Critical patent/JP3404322B2/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/46Multiprogramming arrangements
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)
  • Executing Machine-Instructions (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、情報処理装置のオ
ペレーティングシステム(以下、「OS」)の割込管理
機能の支援技術に係り、特に、割込管理機能のリアルタ
イム性が低いOSと共存し、必要な割込処理についての
リアルタイム性を高めることができるOS支援システム
に関する。割込管理機能のリアルタイム性が低いOSと
は、割込要求が発生した後、割込処理の実行が始まるま
での時間が相対的に長いOSをいう。例えば割込発生
後、数μ秒以内に割込処理を行う必要がある場合に、そ
の割込処理を開始するまでに十数μ秒の時間がかかって
しまうOSをいう。
【0002】
【発明の背景】最近のOSには、割込管理機能が備えら
れており、CPU(プロセッサユニット)からの割込要
求が発生したときに、割込の要因を判別し、判別結果に
応じた割込処理の管理を行うようになっているのが一般
的である。割込処理の管理に際しては、まず、ベクタ領
域(CPUがアクセス可能な固定メモリ等に形成される
割込ベクタ領域、以下同じ)に割込処理その他の処理を
実行する割込処理手段のアドレスを設定する。割込処理
手段は、具体的には、割込要因に応じた割込処理を行う
ためのプログラム及びその起動実行手段である。
【0003】CPUは、ベクタ領域のベースアドレス
(最初に参照すべきアドレス)を参照することによりO
Sに割込要求を発行する。OSは、割込前のCPUの動
作環境情報、例えばCPUレジスタ等を保存し、割込処
理手段に割込要求の制御権を渡す。割込処理手段は、所
要の割込処理を実行した後、制御権をOSに戻す。OS
は、割込前のCPUの動作環境情報を復旧させる。これ
によりCPUは、中断時の状態から処理を再開できるよ
うになる。
【0004】ところで、OSによっては、割込管理機能
のリアルタイム性がアプリケーション側で要求している
基準に達しないものがある。例えば、割込要求後、数μ
秒以内に割込処理を行う必要があるアプリケーションに
おいて、OSの割込管理処理に十数μ秒の時間がかかっ
てしまうと、OS側でその割込要求に対応した割込処理
を行うことができない。
【0005】このような場合、そのOSの割込管理機能
を改造してリアルタイム性を高めることは可能である。
しかし、OSの改造には、そのOSにおける割込管理機
能の内容を事前調査する必要があり、また、改造、試験
のための作業を要するため、多大なコストがかかる。ま
た、OSを一度改造してしまうと、そのOSのバージョ
ンアップ(機能更新)等の都度、改造部分の機能を再度
修正しなければならなくなる。さらに、OSを変更して
使用する場合には、変更後のOSで採用する割込管理方
式に合わせてベクタ領域の管理形態を改造ないし修正し
なければならなくなる。
【0006】そこで本発明は、OSに改造を加えること
なく、そのOSを搭載した装置の割込処理に対するリア
ルタイム性を高めることができる割込処理方法を提供す
ることを主たる課題とする。本発明の他の課題は、OS
と共存可能なOS支援システム、及びOSとOS支援シ
ステムとを有する情報処理装置を提供することにある。
本発明の他の課題は、OSを搭載した汎用の情報処理装
置上で本発明の割込処理方法を実現する上で好適となる
記録媒体を提供することにある。
【0007】
【課題を解決するための手段】本発明が提供する割込処
理方法は、割込管理機能を有するOSと、割込要求が発
生したときに参照されて自システムに制御権が移るよう
に設定された拡張割込ベクタ領域を有し且つリアルタイ
ム性を担保する必要のある所定の割込処理の内容が登録
されたOS支援システムとが、前記OSの同一性を保持
した状態で共存する情報処理装置において実行される方
法であって、前記情報処理装置で割込要求が発生したと
きに、前記OS支援システムが、当該情報処理装置に前
記拡張割込ベクタを参照させることでその割込要求を前
記OSに先駆けて受け付け、受け付けた割込要求が予め
登録された前記所定の割込処理に対応するものかどうか
を判定し、前記所定の割込処理に対応する割込要求の場
はその割込処理を実行し、前記所定の割込処理に対応
しない割込要求の場合はその制御権を前記OSへ移行さ
せることを特徴とする方法である。
【0008】この割込処理方法では、OS支援システム
で割込要求を受け取った後、該当する割込処理の実行を
開始するまでの時間が、OSで割込要求を受け取った
後、該当する割込処理の実行を開始するまでの時間より
も短くなるようにする。OSとOS支援システムとは互
いに独立に割込処理を行うようにしても良いが、両者を
連携させて割込処理を分担して実行するようにすること
もできる。この場合は、OSに、このOSの同一性を保
持しつつ、OS支援システムとの間で相互に情報を受け
渡す機能を有する制御ドライバを組み込み、この制御ド
ライバを介してOSとOS支援システムとで同一ハード
ウエアにおける異なる形態の割込処理を分担して実行す
るようにする。このようにすることで、OSの同一性を
保持しながら、用途に応じた高度の割込処理を行うこと
ができるようになる。汎用性を高める観点からは、OS
を搭載した情報処理装置に事後的にOS支援システムを
組み込んで両者を共存させるようにする。
【0009】上記他の課題を解決するOS支援システム
は、割込処理機能を有するOS同一性を保持した状態
一つの情報処理装置内で共存し、前記OSの初期化処
理によって起動されるシステムであって、自システム内
の割込処理に制御権が移るように設定された拡張割込ベ
クタ領域と、前記情報処理装置で割込要求が発生したと
きに、当該情報処理装置に前記拡張割込ベクタ領域を参
照させる初期化手段と、リアルタイム性を担保する必要
のある割込処理の内容を登録する割込登録手段と、前記
情報処理装置で割込要求が発生したときにその割込要求
を前記OSに先駆けて受け付け、その割込要求が前記割
込登録手段で登録されている割込処理に対応するものか
どうかを判定する割込判定手段と、前記割込要求が前記
登録された割込処理に対応するものであった場合は当該
割込処理を実行するとともに実行終了後は割込の復帰を
行う割込実行手段とを備え、前記OSと独立の割込処
理を実行するとともに、前記登録手段に登録されていな
い割込処理については前記OSで実行させるように構成
されたものである。
【0010】このOS支援システムにおける割込処理形
態は様々であり、例えば、OSにOS支援システムとの
連携を行うための制御ドライバを組み込み、当該制御ド
ライバを通じて連携されたOSと共同して割込処理を分
担実行する形態がある。この場合、例えば同一の制御対
象についてリアルタイム性が要求される割込処理とそう
でない割込処理の分担実行が容易になる。
【0011】上記他の課題を解決する本発明の情報処理
装置は、割込要求を発行するCPU、割込ベクタ領域を
有するOS及び拡張割込ベクタ領域を有するOS支援シ
ステムを含んで構成される。CPUは参照すべき割込ベ
クタ領域又は拡張割込ベクタ領域のベースアドレスの変
更が可能なものであり、割込ベクタ領域はOS内の割込
処理に制御権が移るように設定されている。OS支援シ
ステムは、拡張割込ベクタ領域の内容を自システム内の
割込処理に制御権が移るように設定するとともに、この
拡張割込ベクタ領域のベースアドレスをCPUに通知し
て参照させることで割込要求をOSに先駆けて受け付け
るようにし、その割込要求がOS支援システムに登録さ
れたものである場合は当該割込処理を実行するとともに
実行終了後は割込の復帰を行い、一方、その割込要求が
OS支援システムに登録されたものでない場合は割込
クタ領域の設定内容に基づいてその割込要求の制御権を
OSへ移行させるものである。OS支援システムは、O
Sの同一性を保持した状態で、情報処理装置内でOSと
共存する。
【0012】この情報処理装置において、OS支援シス
テムは、割込要求が所定の割込処理に対応するものかど
うかを判定する際にCPUの動作環境情報の一部を保存
し、当該割込要求が所定の割込処理に対応するものであ
った場合は動作環境情報の残部を保存してその割込処理
を実行し、所定の割込処理に対応しない場合は、保存し
た動作環境情報の一部を復旧させた後に前記制御権をO
Sへ移行させる。このようにすることで、不要なオーバ
ヘッドを回避できるようになる。
【0013】この情報処理装置を通信の用途に用いる場
合は、受信データの受信処理時及び送信データの送信処
理時にそれぞれ割込を発生させる伝送手段を設け、これ
らの割込がOS支援システムに入力されるように構成す
る。このような形態は、例えばシリアル伝送(通信)を
行う場合には、顕著な効果を奏するものである。同一の
制御対象に対してリアルタイム性が要求される割込処理
とそうでない割込処理とを分担実行する場合は、OSと
OS支援システムとを連携させための制御ドライバをさ
らに有して情報処理装置を構成し、この制御ドライバを
通じてOSとOS支援システムとで相互に連携させるよ
うにする。
【0014】上記課題を解決する本発明の記録媒体は、
割込処理機能を有するOSを搭載した情報処理装置に、
OSの同一性を保持した状態で、少なくとも下記の機能
を形成させるためのディジタル情報、例えばプログラム
コードが情報処理装置によって読みとり可能な形態で記
録された記録媒体である。 (1)自システム内の割込処理に制御権が移るように設
定された拡張割込ベクタ領域、前記情報処理装置で割込要求が発生したときに、
当該情報処理装置に前記拡張割込ベクタ領域を参照させ
初期化処理手段、 ()リアルタイム性を担保する必要のある割込処理の
内容を登録する割込登録手段、 ()情報処理装置内で割込要求が発生したときにその
割込要求をOSに先駆けて受け付け、その割込要求が割
込登録手段で登録されている割込処理に対応するものか
どうかを判定する割込判定手段、 ()割込要求が登録された割込処理に対応するもので
あった場合は当該割込処理を実行するとともに実行終了
後は割込の復帰を行う割込実行手段、 ()登録手段に登録されていない割込処理に対する割
込要求の制御権をOSに移行させる手段。
【0015】
【発明の実施の形態】次に、本発明の実施形態を説明す
る。 (第1実施形態)まず、本発明をシリアル通信を行う携
帯型端末装置に適用した場合の実施の形態を説明する。
リアルタイム性の低いOSを搭載した携帯型端末装置で
は、高速の伝送条件の場合に、データの受信や送信の際
の割込処理が間に合わず、通信エラーが発生する。そこ
で、ここでは、OSを搭載した既存の携帯型端末装置に
OS支援システムを共存させ、シリアル通信を行う際の
割込のリアルタイム性を高める場合の例を挙げる。
【0016】図1は、第1実施形態による携帯型端末装
置の要部構成図である。この携帯型端末装置は割込要求
を発行するCPUを内蔵した情報処理装置であり、操作
ボード等の入力装置10,ディスプレイ等の出力装置2
0,通信ポート及びその制御手段から成るシリアル装置
30、各種プログラム、データその他のディジタル情報
が記録されたハードディスク等の記録媒体を備え、さら
に、CPUが所定のプログラムを読み込んで実行するこ
とにより形成される入出力制御部40、OS50、及び
このOS50と共存が可能なOS支援システム1を具備
して構成される。OS支援システム1は、通常、それが
存在しない状態の形態型端末装置に、可搬性の記録媒体
に記録されたディジタル情報をインストールすること
で、事後的に形成される。
【0017】シリアル装置30と入出力制御部40との
間には図示しない通信回線から受信した受信データを蓄
積しておくための受信データバッファと、通信回線に向
けて送信する送信データを蓄積しておくための送信デー
タバッファとが設けられている。CPUは、後述するベ
クタ領域又は拡張ベクタ領域のベースアドレスの変更が
可能なものである。
【0018】携帯型端末装置によるOS50の機能内容
とOS支援システム1との相互関係は、図2に示すとお
りである。OS50は、ここではリアルタイム性の低い
簡易なOSを想定するが、本発明を実施する上で常にこ
のようなOSが必要になるというものではない。このO
S50は、種々のOS側アプリケーション(AP)によ
って利用されるマン・マシン・インタフェース(MM
I)、グラフィカル・ユーザ・インタフェース(GU
I)、その他の機能実現体(X)を有し、さらに、固定
メモリ60に設けられたベクタ領域61を参照して所定
の割込管理を行う割込管理部51と、該当する割込処理
ルーチンを起動実行する割込実行部52とを有してい
る。割込管理部51は、OS初期化の際に、ベクタ領域
61のベースアドレスをCPUに通知するとともに、O
S支援システム1の初期化処理を呼び出す機能をもつ。
割込実行部52は、OS50内の割込用プログラムを起
動実行するものである。なお、割込管理部51における
初期処理の内容を除く部分は、公知のOSの機能であ
る。
【0019】固定メモリ60には、OS50によって管
理されるベクタ領域61のほか、OS支援システム1に
管理されている拡張ベクタ領域62と、OS50とOS
支援システム1とで共通に使用される共通データ領域6
3とが形成される。この拡張ベクタ領域62と共通デー
タ領域63とは、メモリ管理のオーバヘッドを回避する
ため、OS50の管理領域外に配置されるようになって
いる。
【0020】ベクタ領域61、拡張ベクタ領域62及び
共通データ領域63に設定されるデータの内容は、図3
に示すとおりである。ベクタ領域61には、OS50側
で割込処理を行う場合にOS50内の割込処理ルーチン
に制御権が移るように、割込要因毎の起動プログラムの
アドレス(ポインタ)が設定されるようになっている。
一方、拡張ベクトル領域62には、OS支援システム1
側の各種起動プログラム、例えば後述する割込管理部の
機能を実現するプログラム等のアドレス(ポインタ)が
設定される。共通データ領域63に記録されるデータ
は、OS50とOS支援システム1の仲介をなすデータ
であり、本実施形態では、OS50の初期化処理時に参
照されるOS支援システム1の初期化処理用プログラム
のアドレスと、各種割込情報のアドレス、情報書込処理
ルーチンのアドレス、書込対象となる情報のアドレス、
情報読出処理ルーチンのアドレス、読出対象となる情報
のアドレスとを設定する。なお、初期化処理用プログラ
ムのアドレス、割込情報のアドレス、情報書込処理ルー
チンのアドレスは、共通データ領域63が配置された時
点で設定し、情報読出処理ルーチンのアドレス、読出対
象となる情報のアドレスは、OS50の初期化時に設定
する。
【0021】図4は、OS支援システム1の機能構成図
である。このOS支援システム1は、初期化部11、割
込管理部12、割込判定部13、割込実行部14の機能
ブロックを有している。
【0022】初期化部11は、OS50の初期化処理時
に共通データの初期化処理用プログラムがCPUで実行
されることにより形成される機能である。初期化部11
では、図5の手順に従う初期化処理を行う。まず、OS
50の初期化処理時にOS50がCPUに通知すること
により設定された現在のベクタ領域61のベースアドレ
スを参照し、そのベースアドレスを自システム内データ
として拡張ベクタ領域62に保持する(ステップS10
1:Yes、S102)。その後、拡張ベクタ領域62の
ベースアドレスをCPUに通知する(ステップS10
3)。CPUはベースアドレスを変更する機能を有する
ため、この通知によって、自己が最初に参照すべきベー
スアドレスをベクタ領域61から拡張ベクタ領域62に
変更するようになっている。これによってOS支援シス
テム1は、CPUからの割込要求を先取りできるように
なる。
【0023】初期化部11は、また、自システムの制御
対象となるハードウエア、本例ではシリアル装置30の
割込状態の初期化を行うとともに(ステップS10
4)、割込管理部12に、リアルタイム性を担保する必
要がある割込処理の内容、例えば割込要因毎の割込処理
プログラムのアドレスを割込管理テーブルMTに登録さ
せる(ステップS105)。実際には、ハードウエア初
期化処理ルーチンや割込管理部12の機能を形成するた
めのプログラムを呼び出し、これを実行させる。以上の
一連の初期化処理を終えた後、制御権をOS50に移
す。
【0024】このようにして登録された割込管理テーブ
ルMTの内容例を図6に示す。図示の例では、登録可能
な割込要因が#0〜#5の6つであり、そのうちの割込
要因#1と割込要因#3がリアルタイム性が要求される
割込要因、“0”で示された割込要因がリアルタイム性
が要求されない割込要因である。
【0025】割込判定部13は、CPUから割込要求が
発行されたときに起動し、図7に従う割込判定処理を行
う。まず、余分なオーバヘッドを回避するため、CPU
の動作環境情報の一部のみ、例えばCPUのレジスタの
うち割込判定用に使用する部分のみを図示しないスタッ
ク内に一時的に保存する(ステップ201)。その後、
割込要求を取得し、その割込の内容(割込要求に対応す
る割込要因)が割込管理テーブルMTに登録されている
かどうか、つまり、リアルタイム性が要求される割込か
どうかを判定する(ステップS202,S203)。図
6に例示したように、割込管理テーブルMT内のデータ
が“0”以外であった場合、割込判定部13は、リアル
タイム性が必要な割込処理であると判定する。そして、
CPUの残りのレジスタを保存し(ステップS20
4)、割込管理テーブルMTに登録されている割込処理
プログラムの起動実行を自システムの割込実行部14に
依頼する(ステップS205)。割込実行部14(該当
する割込処理プログラム)から制御権が戻ったきた場
合、割込判定部13は、CPUのすべてのレジスタを復
旧させ(ステップS206)、割込を復帰させる(ステ
ップS207)。
【0026】一方、ステップS203において、割込管
理テーブルMT内のデータが“0”であればリアルタイ
ムな割込処理が不要と判定する。そして、最初にスタッ
クに保存していたCPUのレジスタを復旧させた後(ス
テップS208)、その割込要求についての制御権をO
S50に移行させる(ステップS209)。具体的に
は、初期化部11で保存していたベクタ領域61のベー
スアドレスから割込要求に対応したOS50側の起動プ
ログラムのアドレスを知り、そのアドレスのプログラム
に制御権を渡す。
【0027】次に、本実施形態による携帯型端末装置の
動作、特に初期化処理時の動作と割込発生時の動作を図
8を参照して具体的に説明する。説明の便宜上、リアル
タイム性を担保する必要がある割込処理として、データ
受信の際の割込処理(以下、「受信割込処理」)と、デ
ータ送信の際の割込処理(以下、「送信割込処理」)の
みを割込管理部14に登録するものとする。
【0028】電源オン等によってOS側初期化プログラ
ムが起動すると、ベクタ領域61のベースアドレスがC
PUに通知される(ステップS301)。また、このO
S側初期化プログラムによって、OS支援システム1の
初期化プログラムが起動し、図5の手順で初期化処理が
実行される。これにより、シリアル装置30が初期化さ
れ(ステップS302)、さらに、シリアル装置30か
らの受信割込処理及び送信割込処理が割込管理テーブル
MTに登録される(ステップS303)。OS支援シス
テム1は、以上のようにして初期化処理を終えた後は、
制御権をOSに移行させ、割込の発生を待つ(ステップ
S304)。
【0029】シリアル装置30がデータを受信し、ある
いは送信するために割込が発生した場合、CPUは受信
割込処理又は送信割込処理を割込要求を発行する。OS
支援システム1は、この割込要求をOS50に先駆けて
受け付け(ステップS305、S306)、その割込要
求の分岐判定を行う(ステップS307)。OS支援シ
ステム1には受信割込処理と送信割込処理のみが登録さ
れているため、これらの割込要因でない場合は、その割
込要求に対する制御権をOS支援システム1からOS5
0に移行させる。これにより、その割込要求について
は、OS50によって処理される(ステップS307:
No、S312)。
【0030】割込要求が受信割込処理の要求であった場
合は、図9の手順で受信割込処理を実行し(ステップS
307:Yes、S308:Yes、S309)、送信割込処
理の要求であった場合は図10の手順で送信割込処理を
実行する(ステップS307:Yes、308:No、S3
10)。各割込処理を実行した後は、制御権をOSに移
し、次の割込の発生を待つ(ステップS311)。
【0031】図9を参照し、上記受信割込処理の概要を
説明する。受信割込処理では、シリアル装置30からシ
リアルの受信データを取得し(ステップS401)、こ
れを受信データバッファに格納する(ステップS40
2)。受信データが格納されると受信データの格納ポイ
ンタ(受信データバッファにおける格納アドレス)が変
わるので、これを随時更新する(ステップS403、S
404)。すべての受信データを格納した場合は、これ
らの受信データを解析して受信データに対応する応答デ
ータを作成し(ステップS404:Yes、S405)、
この応答データを送信データバッファに格納する(ステ
ップS406)。
【0032】図10を参照し、上記送信割込処理の概要
を説明する。送信割込処理では、アプリケーションから
のデータ送信指示があり、且つ送信対象データ又は上記
の応答データが送信データバッファに存在する場合に、
その送信データを取得してシリアル装置30に出力する
(ステップS501:Yes、S502)。送信データが
出力されると送信データバッファのポインタが変わるの
で、これを随時更新する(ステップS503)。これを
すべての送信対象データについて繰り返し(ステップS
504:No)、送信対象データがなくなった時点で処理
を終え、その旨を、OS50を通じてアプリケーション
に伝える。
【0033】以上の説明のとおり、本実施形態の携帯型
端末装置は、割込要求がリアルタイム性を要する受信割
込処理又は送信割込処理の実行を要求するものである場
合は、OS50に移行させずに直ちにOS支援システム
1内でその割込処理を実行するようにしたので、リアル
タイム性が低いOSを使用した場合であっても通信エラ
ーが生じることがなくなり、高速シリアル伝送が可能に
なる。
【0034】
【0035】
【0036】
【0037】本発明では、また、OS支援システム1で
割込処理を実行するため、OS側の負担が軽減され、他
のアプリケーションの実行に対する影響を緩和すること
もできる。
【0038】OS支援システム1に登録されていない割
込処理に対応する割込要求については直ちにOSに制御
権が渡されるので、OS支援システム1がない場合と全
く同様の割込処理を行うことができる。つまり、OS側
の仕様に依存することなく、また、そのOSの内容の同
一性を保持したまま、割込処理のリアルタイム化が可能
になる。OSの仕様に依存しないことから、OSのバー
ジョンアップやOS自体の変更にも柔軟に対応できるよ
うになる。
【0039】さらに、割込処理プログラムを一つ作成し
ておくことで、各種の汎用OS上で実行させることがで
きるようになる。
【0040】(第2実施形態)第1実施形態は、OSと
OS支援システムとがそれぞれ独立して動作する場合の
例であるが、本発明は、このような例に限定されず、両
者が連携して割込制御を行うようにする形態も可能であ
る。以下、本発明を「こけし」の工作機械の制御機構に
組み込まれる情報処理装置に適用した場合の実施の形態
を説明する。
【0041】図1は、第2実施形態の情報処理装置の
要部構成図であり、第1実施形態の携帯型端末装置と同
一構成要素については、同一符号を付してある。OSに
はモータ制御ドライバ2を組み込むが、OSの機能自体
は第1実施形態のOS50と同一のものである。
【0042】この情報処理装置の入出力制御部40に
は、こけしの制作機構の一部をなす2種類のモータ7
1、81の制御を行う制御装置70,80が接続されて
いる。モータ(M1)71は、こけしの材料となる木材
をその軸線を中心に回転させるためのモータであり、制
御装置70は、このモータ71のオン/オフ制御を行う
とともに、回転が安定した時点で割込を発生させるもの
である。モータ(M2)81は、カッタを駆動するため
のモータであり、制御装置80は、入力装置10を通じ
てオペレータから指定された移動座標に指定された変位
量分だけこのモータ81が変位したときに割込を発生さ
せるものである。
【0043】OS側のアプリケーション(AP)は、入
力装置10を通じてオペレータが指定した丸太の太さと
「こけし」の形状パターンのデータをもとに、「こけ
し」を形成するためのモータ制御データ、すなわちモー
タ(M2)81の変位方向及び変位量を計算し、これら
のデータの列を作成する。また、モータ(M1)71の
回転指示の割込要求、停止指示の割込要求、モータ(M
2)81の作業開始指示の割込要求をモータ制御ドライ
バ2に出力する。モータ(M2)81の作業開始指示の
割込は、作成したモータ制御データと共に行う。
【0044】モータ制御ドライバ2は、OS50とOS
支援システム1との連携を図るための制御ドライバであ
り、APからの上記割込要求を受け付け、モータ(M
1)71の制御をOS側で行えるようにするとともに、
モータ(M2)の制御をOS支援システム1に指示する
機能を有する。モータ(M2)の制御指示に際しては、
APからのモータ制御データがn個存在する場合は2番
目以降のデータとn−1個のデータがある旨の情報をO
S支援システム1の内部メモリ、例えばバッファにコピ
ーし、その後、最初のデータを制御装置80に出力す
る。各モータ71,81の制御が正常に終了したことを
割込によって検知した場合は、その旨をOS50の機能
を用いてAPに通知する。
【0045】一方、OS支援システム1については、O
S50によって呼び出されるデータとして、第1実施形
態の携帯型端末装置と同様の初期化処理プログラムのア
ドレスのほか、モータ制御データを格納する上記バッフ
ァの先頭のアドレスを格納する。また、モータ(M2)
81の割込処理プログラムを割込管理テーブルに登録し
ておく。この割込処理プログラムは、複数のモータ制御
データを順次制御装置80に出力し、すべてのモータ制
御データの出力が終了した時点で、OS50側のベクタ
領域に設定されている制御装置80の割込内容に制御権
を渡すことをその実行内容とするものである。この制御
権を受け取ったOS50側では、割込管理部が起動し、
CPUの割込レジスタに保持されている割込要因(制御
装置80からの割込内容)を参照してモータ制御ドライ
バ2の割込処理プログラムを起動実行させる。
【0046】図1は、この情報処理装置による処理の
概念図であり、参照符号61は第1実施形態で説明した
OS50側のベクタ領域、62はOS支援システム1側
の拡張ベクタ領域であり、共に、二つの制御装置の割込
が設定されている。図中、実線は制御装置70からの割
込の通知経路、破線は制御装置80からの割込の通知経
路、一点鎖線は、モータ制御の終了時の通知経路であ
る。なお、共通データ領域については、便宜上、省略し
てある。
【0047】この第2実施形態の情報処理装置では、モ
ータ(M1)71はOS50で制御し、モータ(M2)
81はOS支援システム1で制御することから、リアル
タイム性が要求される割込処理と、そうでない割込処理
とを分担して実行できるようになる。なお、本発明は、
OS宛の割込要求をOSに先駆けてOS支援システムで
受け付け、割込判定を行った後に割込分岐を行うことが
できれば良いので、OSが採用する割込方式には特に限
定はされない。
【0048】
【発明の効果】以上の説明から明らかなように、本発明
によれば、OSに改造を加えることなく、そのOSを搭
載した装置の割込に対するリアルタイム性を高めること
ができるようになる。
【図面の簡単な説明】
【図1】 第1実施形態による携帯型端末装置の要部構
成図
【図2】 携帯型端末装置によるOSの機能内容とOS
支援システムとの相互関係を示した説明図。
【図3】 ベクタ領域及び拡張ベクタ領域の設定内容例
を示した説明図。
【図4】 OS支援システムの機能構成図。
【図5】 OS支援システムにおける初期化処理の手順
説明図。
【図6】 割込管理テーブルの内容説明図。
【図7】 OS支援システムにおける割込判定処理の手
順説明図。
【図8】 第1実施形態による携帯型端末装置の動作手
順、特に割込発生時の動作手順を示した図。
【図9】 受信割込処理の手順説明図。
【図10】 送信割込処理の手順説明図。
【図11】 本発明の第2実施形態に係る情報処理装置
の要部構成図。
【図12】 第2実施形態による動作概要を示す説明
図。
【符号の説明】
1 OS支援システム 2 モータ制御ドライバ 11 初期化部 12 割込管理部 13 割込判定部 14 割込実行部 30 シリアル装置 50 OS 60 固定メモリ 61 ベクタ領域 62 拡張ベクタ領域 63 共通データ領域 MT 割込管理テーブル
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平11−96022(JP,A) Michael Barabano v,Victor Yodaiken 著,深瀬長彰翻訳「リアルタイムLin uxへようこそ」LINUX JAPA N Vol.3,1997 SUMMER p99−102 (58)調査した分野(Int.Cl.7,DB名) G06F 9/46

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】 割込管理機能を有するOSと、割込要求
    が発生したときに参照されて自システムに制御権が移る
    ように設定された拡張割込ベクタ領域を有し且つリアル
    タイム性を担保する必要のある所定の割込処理の内容が
    登録されたOS支援システムとが、前記OSの同一性を
    保持した状態で共存する情報処理装置において実行され
    る方法であって、前記情報処理装置で割込要求が発生したときに、 前記O
    S支援システムが、当該情報処理装置に前記拡張割込ベクタを参照させるこ
    とでその割込要求を前記OSに先駆けて受け付け、 受け付けた 割込要求が予め登録された前記所定の割込処
    理に対応するものかどうかを判定し、 前記所定の割込処理に対応する割込要求の場合はその割
    込処理を実行し、 前記所定の割込処理に対応しない割込要求の場合はその
    制御権を前記OSへ移行させることを特徴とする、 割込処理方法。
  2. 【請求項2】 前記OS支援システムで前記割込要求を
    受け取った後、該当する割込処理の実行を開始するまで
    の時間が、前記OSで前記割込要求を受け取った後、該
    当する割込処理の実行を開始するまでの時間よりも短い
    ことを特徴とする、 請求項1記載の割込処理方法。
  3. 【請求項3】 前記OSに、このOSの同一性を保持し
    つつ、前記OS支援システムとの間で相互に情報を受け
    渡す機能を有するドライバを組み込み、このドライバを
    介して前記OSと前記OS支援システムとで同一ハード
    ウエアにおける異なる形態の割込処理を分担して実行す
    ることを特徴とする、 請求項1又は2記載の割込処理方法。
  4. 【請求項4】 前記OSを搭載した情報処理装置に事後
    的に前記OS支援システムを組み込んで両者を共存させ
    ることを特徴とする、 請求項1、2又は3記載の割込処理方法。
  5. 【請求項5】 割込処理機能を有するOS同一性を保
    持した状態で一つの 情報処理装置内で共存し、前記OS
    の初期化処理によって起動されるシステムであって、自システム内の割込処理に制御権が移るように設定され
    た拡張割込ベクタ領域と、 前記情報処理装置で割込要求が発生したときに、当該情
    報処理装置に前記拡張割込ベクタ領域を参照させる初期
    化手段と、 リアルタイム性を担保する必要のある割込処理の内容を
    登録する割込登録手段と、 前記情報処理装置で割込要求が発生したときにその割込
    要求を前記OSに先駆けて受け付け、その割込要求が前
    記割込登録手段で登録されている割込処理に対応するも
    のかどうかを判定する割込判定手段と、 前記割込要求が前記登録された割込処理に対応するもの
    であった場合は当該割込処理を実行するとともに実行終
    了後は割込の復帰を行う割込実行手段とを備え、 前記OSと独立の割込処理を実行するとともに、前記
    登録手段に登録されていない割込処理については前記O
    Sで実行させるように構成されていることを特徴とす
    る、 OS支援システム。
  6. 【請求項6】 前記OSには、OS支援システムとの連
    携を行うための制御ドライバが組み込まれており、 当該制御ドライバを通じて連携された前記OSと共同し
    て割込処理を分担実行することを特徴とする、 請求項5記載のOS支援システム。
  7. 【請求項7】 割込要求を発行するCPU、割込ベクタ
    領域を有するOS及び拡張割込ベクタ領域を有するOS
    支援システムを含み、 前記CPUは参照すべき割込ベクタ領域又は拡張割込ベ
    クタ領域のベースアドレスの変更が可能なものであり、 前記割込ベクタ領域はOS内の割込処理に制御権が移る
    ように設定されており、 前記OS支援システムは、前記拡張割込ベクタ領域の内
    容を自システム内の割込処理に制御権が移るように設定
    するとともに、この拡張割込ベクタ領域のベースアドレ
    スを前記CPUに通知して参照させることで前記割込要
    求を前記OSに先駆けて受け付けるようにし、前記割込
    要求が前記OS支援システムで登録されたものである場
    合は当該割込処理を実行するとともに実行終了後は割込
    の復帰を行い、前記割込要求が前記OS支援システムで
    登録されたものでない場合は前記割込ベクタ領域の設定
    内容に基づいてその割込要求の制御権を前記OSへ移行
    させるものであり、前記OSの同一性を保持した状態で
    前記OSと共存することを特徴とする、 情報処理装置。
  8. 【請求項8】 前記OS支援システムは、 前記割込要求が所定の割込処理に対応するものかどうか
    を判定する際にCPUの動作環境情報の一部を保存し、
    当該割込要求が前記所定の割込処理に対応するものであ
    った場合は前記動作環境情報の残部を保存してその割込
    処理を実行し、前記所定の割込処理に対応しない場合
    は、前記保存した動作環境情報の一部を復旧させた後に
    前記制御権を前記OSへ移行させるものであることを特
    徴とする、請求項7記載の情報処理装置。
  9. 【請求項9】 受信データの受信処理時及び送信データ
    の送信処理時にそれぞれ割込を発生させる伝送手段を有
    し、 これらの割込が前記OS支援システムに入力されるよう
    に構成されていることを特徴とする、 請求項7又は8記載の情報処理装置。
  10. 【請求項10】 前記OSと前記OS支援システムとを
    連携させるための制御ドライバをさらに有し、 この制御ドライバを通じて前記OSと前記OS支援シス
    テムとで相互に連携しながら同一の制御対象に対する異
    なる割込処理を分担して実行するように構成されている
    ことを特徴とする、 請求項7又は8記載の情報処理装置。
  11. 【請求項11】 割込処理機能を有するOSを搭載した
    情報処理装置に、前記OSの同一性を保持した状態で、自システム内の割込処理に制御権が移るように設定され
    た拡張割込ベクタ領域、 前記情報処理装置で割込要求が発生したときに、当該情
    報処理装置に前記拡張割込ベクタ領域を参照させる 初期
    化手段、 リアルタイム性を担保する必要のある割込処理の内容を
    登録する割込登録手段、 前記情報処理装置内で割込要求が発生したときにその割
    込要求を前記OSに先駆けて受け付け、その割込要求が
    前記割込登録手段で登録されている割込処理に対応する
    ものかどうかを判定する割込判定手段、 前記割込要求が前記登録された割込処理に対応するもの
    であった場合は当該割込処理を実行するとともに実行終
    了後は割込の復帰を行う割込実行手段、 及び、前記登録手段に登録されていない割込処理に対す
    る割込要求の制御権を前記OSに移行する手段 を形成させるためのディジタル情報が前記情報処理装置
    によって読みとり可能な形態で記録された記録媒体。
JP14435799A 1999-05-25 1999-05-25 割込処理方法、os支援システム、情報処理装置、記録媒体 Expired - Fee Related JP3404322B2 (ja)

Priority Applications (11)

Application Number Priority Date Filing Date Title
JP14435799A JP3404322B2 (ja) 1999-05-25 1999-05-25 割込処理方法、os支援システム、情報処理装置、記録媒体
US09/362,365 US6539447B1 (en) 1999-05-25 1999-07-28 Interrupt control system
EP99118895A EP1056008B1 (en) 1999-05-25 1999-09-24 Interrupt control system
DE69935205T DE69935205T2 (de) 1999-05-25 1999-09-24 Unterbrechungssteurerungssystem
CA002284373A CA2284373C (en) 1999-05-25 1999-09-30 Interrupt control system
SG200002370A SG104921A1 (en) 1999-05-25 2000-04-28 Interrupt control system
TW089108936A TW509874B (en) 1999-05-25 2000-05-10 Interrupt control system
IL13627200A IL136272A (en) 1999-05-25 2000-05-21 Judgment control system
CNB001089684A CN1163834C (zh) 1999-05-25 2000-05-24 中断控制方法和中断控制系统
KR1020000028284A KR100716076B1 (ko) 1999-05-25 2000-05-25 인터럽트 처리 방법, os 지원 시스템, 정보 처리 장치및 기록 매체
HK01102863A HK1032277A1 (en) 1999-05-25 2001-04-23 Interrupt control method and interrupt control system.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP14435799A JP3404322B2 (ja) 1999-05-25 1999-05-25 割込処理方法、os支援システム、情報処理装置、記録媒体

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2003006375A Division JP2003223334A (ja) 2003-01-14 2003-01-14 割込処理方法、os支援システム、情報処理装置、記録媒体

Publications (2)

Publication Number Publication Date
JP2000330796A JP2000330796A (ja) 2000-11-30
JP3404322B2 true JP3404322B2 (ja) 2003-05-06

Family

ID=15360234

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14435799A Expired - Fee Related JP3404322B2 (ja) 1999-05-25 1999-05-25 割込処理方法、os支援システム、情報処理装置、記録媒体

Country Status (11)

Country Link
US (1) US6539447B1 (ja)
EP (1) EP1056008B1 (ja)
JP (1) JP3404322B2 (ja)
KR (1) KR100716076B1 (ja)
CN (1) CN1163834C (ja)
CA (1) CA2284373C (ja)
DE (1) DE69935205T2 (ja)
HK (1) HK1032277A1 (ja)
IL (1) IL136272A (ja)
SG (1) SG104921A1 (ja)
TW (1) TW509874B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001256062A (ja) * 2000-03-09 2001-09-21 Omron Corp 割込処理方法およびその方法を用いた演算処理装置
US7036111B2 (en) 2001-06-01 2006-04-25 Hewlett-Packard Development Company, L.P. Code verification system and method
KR100870175B1 (ko) * 2002-02-18 2008-11-25 삼성전자주식회사 에이알엠7 계열 마이크로 컨트롤러에서의 콘텍스트 스위치방법
US20040111593A1 (en) * 2002-12-05 2004-06-10 International Business Machines Corporation Interrupt handler prediction method and system
US6789142B2 (en) * 2002-12-18 2004-09-07 Intel Corporation Method, system, and program for handling interrupt requests
JP2005190207A (ja) * 2003-12-25 2005-07-14 Matsushita Electric Ind Co Ltd 割り込み制御装置、制御方法
US7721033B2 (en) * 2004-12-03 2010-05-18 Emulex Design & Manufacturing Corporation Interrupt notification block
US7768518B2 (en) * 2006-09-27 2010-08-03 Intel Corporation Enabling multiple instruction stream/multiple data stream extensions on microprocessors
US8438323B2 (en) 2008-05-19 2013-05-07 Panasonic Corporation Communication processing apparatus, communication processing method, control method and communication device of communication processing apparatus
US9723381B2 (en) * 2013-12-23 2017-08-01 Nike, Inc. Athletic monitoring system having automatic pausing of media content

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3831048A1 (de) * 1988-09-12 1990-03-15 Nixdorf Computer Ag Betriebsprogramm fuer eine datenverarbeitungsanlage
CA2126174C (en) * 1993-06-30 2003-01-21 David Thielen Method and system for interrupt-responsive execution of communications protocols
US5721922A (en) * 1994-10-13 1998-02-24 Intel Corporation Embedding a real-time multi-tasking kernel in a non-real-time operating system
US5768599A (en) * 1995-02-28 1998-06-16 Nec Corporation Interrupt managing system for real-time operating system
JP3699806B2 (ja) * 1997-06-20 2005-09-28 株式会社東芝 割込みコントローラ及び制御システム
US6128728A (en) * 1997-08-01 2000-10-03 Micron Technology, Inc. Virtual shadow registers and virtual register windows
JPH1196022A (ja) 1997-09-16 1999-04-09 Hitachi Ltd リアルタイム処理計算機

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Michael Barabanov,Victor Yodaiken著,深瀬長彰翻訳「リアルタイムLinuxへようこそ」LINUX JAPAN Vol.3,1997 SUMMER p99−102

Also Published As

Publication number Publication date
DE69935205D1 (de) 2007-04-05
CA2284373A1 (en) 2000-11-25
TW509874B (en) 2002-11-11
IL136272A0 (en) 2001-05-20
EP1056008A2 (en) 2000-11-29
SG104921A1 (en) 2004-07-30
EP1056008B1 (en) 2007-02-21
HK1032277A1 (en) 2001-07-13
US6539447B1 (en) 2003-03-25
DE69935205T2 (de) 2007-11-15
CN1163834C (zh) 2004-08-25
CA2284373C (en) 2006-05-02
IL136272A (en) 2004-09-27
EP1056008A3 (en) 2003-06-11
KR20010007120A (ko) 2001-01-26
KR100716076B1 (ko) 2007-05-08
CN1274887A (zh) 2000-11-29
JP2000330796A (ja) 2000-11-30

Similar Documents

Publication Publication Date Title
JP3659062B2 (ja) 計算機システム
EP0148478A2 (en) A data processor with control of the significant bit lenghts of general purpose registers
JP3404322B2 (ja) 割込処理方法、os支援システム、情報処理装置、記録媒体
US7996648B2 (en) Coupled symbiotic operating systems
JP3439033B2 (ja) 割り込み制御装置及びプロセッサ
US5371857A (en) Input/output interruption control system for a virtual machine
JP2004258840A (ja) 仮想化されたi/oデバイスをもつ計算機システム
US20060149940A1 (en) Implementation to save and restore processor registers on a context switch
JP2000293436A (ja) パイプラインメモリシステムにおける複数のターゲットへの複数の未解決要求のサポート
KR20000002446A (ko) 주기억장치와 보조기억장치사이의 스와핑 장치및 방법, 그 장치를 채용한 웹비디오 폰
JP2003223334A (ja) 割込処理方法、os支援システム、情報処理装置、記録媒体
CN100492299C (zh) 一种嵌入式软件开发的方法及系统
JPH08272755A (ja) プロセッサ切替え装置
JP2846760B2 (ja) プログラマブルコントローラ
JPH03154139A (ja) キャッシュメモリ
KR100308251B1 (ko) 실행시간백업정보의통합관리방법및그시스템
JP3197045B2 (ja) 拡張中央演算処理装置
JPH06242975A (ja) 多重情報処理システムの仮想計算機ディスパッチ方式
KR20000019147A (ko) 컴퓨터의 롬 바이오스(rom bios)구동 시스템 및 그 방법
JP2504515B2 (ja) テスト・チャネル命令の実行制御方式
JPH0320834A (ja) 情報処理装置の初期診断方法
JP2020052960A (ja) 車両制御装置および車両制御方法
JPH03113503A (ja) 産業用コンピュータ
JPH11184712A (ja) 情報処理装置
JPH08272653A (ja) フリーズ処理システム

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080229

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090228

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090228

Year of fee payment: 6

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090228

Year of fee payment: 6

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 9

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120229

Year of fee payment: 9

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130228

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140228

Year of fee payment: 11

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees