米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> 松下電器産業株式会社

発明の名称 割り込み管理方式
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開平7−84805
公開日 平成7年(1995)3月31日
出願番号 特願平5−250918
出願日 平成5年(1993)9月14日
代理人 【弁理士】
【氏名又は名称】役 昌明 (外1名)
発明者 大利 直行
要約 目的
優先度の高いタスクの割り込み処理を迅速に行なう。

構成
オペレーティング・システム内にシステムコール処理中のタスク番号11〜14を保存するシステムコール管理手段1を設け、システムコール処理中に優先度の高いタスクを起動する割り込みが発生したとき、処理を中断して優先度の高いタスクを直ちに起動し、このタスクが、システムコール管理手段にタスク番号を保存している中断中のシステムコールを発行したときに、この中断中のシステムコールを優先して処理するように割り込み管理を行なう。優先度の高いタスクBが、割り込み元のシステムコールと同一のシステムコールを発行する場合でも、タスクBがそのシステムコールを発行するまでは、割り込み元のシステムコールを中断して、優先度の高いタスクBの割り込み処理が実行され、タスクBがシステムコールを発行した時点で、中断している割り込み元のシステムコールの処理が再開される。
特許請求の範囲
【請求項1】 オペレーティング・システム内にシステムコール処理中のタスク番号を保存するシステムコール管理手段を設け、システムコール処理中に優先度の高いタスクを起動する割り込みが発生したとき、前記システムコールの処理を中断して前記優先度の高いタスクを直ちに起動し、該タスクが、前記システムコール管理手段にタスク番号が保存された中断中のシステムコールを発行したとき、該中断中のシステムコールを優先して処理することを特徴とする割り込み管理方式。
発明の詳細な説明
【0001】
【産業上の利用分野】本発明は、コンピュータ処理のマルチタスク・オペレーティング・システムにおいて、システムコール処理中に発生した割り込みを管理する割り込み管理方式に関し、特に、優先度の高いタスクの割り込みを迅速に実行できるように構成したものである。
【0002】
【従来の技術】複数のタスクを並列的に走行させることができるマルチタスク・オペレーティング・システムでは、タスク管理を実行するために、図3に示すように、タスク処理に使用するシステムコールの名称31〜3Nを登録した各タスク別のタスク管理データ3を保持している。これらのシステムコール名称は、タスク生成時に登録される。
【0003】オペレーティング・システムは、割り込み処理を実行する場合、割り込み元のタスクで使用されていたシステムコールを、割り込み先のタスクが競合して使用することのないように、この管理データをチェックする。
【0004】図4には、システムコール使用中に割り込みが発生した場合の従来の割り込み管理方式の下でのタイミング・チャートを示している。タスクAからシステムコールAが発行されると、オペレーティング・システムはシステムコールAに遷移させる(イベント41)。システムコール処理中に割り込みが発生すると(イベント42)、オペレーティング・システムは、直ちに割り込みハンドラを起動する。
【0005】割り込みハンドラがタスクAより優先度の高いタスクBを起動すると(イベント43)、割り込みハンドラの処理が終了した後(イベント44)、オペレーティング・システムは、タスクBの管理データ3の使用システムコール名31〜3nを検査し、タスクBにおいて、現在処理中のシステムコールAが使用されるか否かを調査する。
【0006】同一のシステムコールAが使用される場合には、システムコールの競合を避ける必要があり、そのためオペレーティング・システムは、処理中のシステムコールAの処理を継続し、システムコールAの処理が終了した時点で(イベント45)、タスクBを起動する。
【0007】タスクBがシステムコールAを発行すると(イベント46)、オペレーティング・システムは、システムコールAの処理を行なった後(イベント47)、タスクBの処理を終了して(イベント48)、割り込み元のタスクAに復帰する。
【0008】
【発明が解決しようとする課題】しかし、従来の割り込み管理方式では、システムコール処理中に割り込みが発生して、優先度の高いタスクが起動された場合に、システムコールの競合を避けるため、この優先度の高いタスクが割り込み元のシステムコールと同一のシステムコールを発行するかどうかがチェックされ、その結果、優先度の高いタスクが同一のシステムコールの発行を予定しているときには、割り込み元のシステムコールの処理が終了するまで、優先度の高いタスクのスケジューリングが保留される。そのため、優先度の高いタスクの起動は、同一のシステムコールを発行しないときでも、前記チェックに要する時間だけ開始が遅れ、また、同一のシステムコールを発行する場合には、割り込み元のシステムコールの処理が終了するまで起動開始が遅れるという問題点を有している。
【0009】本発明は、こうした従来の問題点を解決するものであり、管理データの構成を変えることによって、優先度の高いタスクの割り込み処理を迅速に行なうことができる割り込み管理方式を提供することを目的としている。
【0010】
【課題を解決するための手段】そこで、本発明では、オペレーティング・システム内にシステムコール処理中のタスク番号を保存するシステムコール管理手段を設け、システムコール処理中に優先度の高いタスクを起動する割り込みが発生したとき、システムコールの処理を中断して優先度の高いタスクを直ちに起動し、このタスクが、システムコール管理手段にタスク番号が保存された中断中のシステムコールを発行したときに、この中断中のシステムコールを優先して処理するように割り込み管理を行なっている。
【0011】
【作用】そのため、優先度の高いタスクBが、割り込み元のシステムコールと同一のシステムコールを発行する場合であっても、タスクBがそのシステムコールを発行するまでは、割り込み元のシステムコールを中断して、優先度の高いタスクBの割り込み処理が実行され、タスクBがシステムコールを発行した時点で、中断している割り込み元のシステムコールの処理が再開される。
【0012】従って、システムコールの競合は回避することができ、また、優先度の高いタスクBの起動時間は、短縮される。
【0013】
【実施例】本発明の割り込み管理方式を実施するオペレーティング・システムは、図1に示すように、システムコール別管理データ1を格納する領域を備えており、そこに各システムコール処理中のタスク番号11、12、13、14が登録されている。
【0014】実施例の割り込み管理方式は、図2に示すタイミング・チャートに沿って行なわれる。タスクAからシステムコールAが発行されると(イベント21)、オペレーティング・システムは、システムコール別管理データ1のシステムコールA処理中タスク番号11を検査し、システムコールAが現在処理中か否かを調査する。この場合には処理中のタスクが存在しないため、システムコールA処理中タスク番号11にタスクAのタスク番号を設定した後、システムコールAに遷移させる。
【0015】システムコールA処理中に割り込みが発生すると(イベント22)、オペレーティング・システムは、直ちに割り込みハンドラを処理する。割り込みハンドラがタスクBを起動すると(イベント23)、割り込みハンドラの処理が終了した後、直ちにタスクBを起動する(イベント24)。
【0016】オペレーティング・システムは、タスクBからシステムコールAが発行された時点で、システムコール別管理データ1のシステムコールA処理中タスク番号11を検査し、システムコールAが現在処理中か否かを調査する。この場合にはタスクAがシステムコールAを処理中であるため、システムコールの競合を避けるためにオペレーティング・システムはタスクAが優先して処理されようにスケジューリングを行ない(イベント25)、タスクAのシステムコールAの処理を再開する。
【0017】タスクAのシステムコールAの処理が終了すると、引き続きオペレーティング・システムは一旦中断したタスクBのシステムコールAの処理を継続する(イベント26)。タスクBがシステムコールAの処理を終了すると(イベント27)、システムコール別管理データ1のシステムコールA処理中タスク番号11をクリアし、タスクBに復帰する。タスクBが処理を終了すると、スケジューリングが行なわれ(イベント28)、タスクAが再起動される。
【0018】このように、実施例の割り込み管理方式では、システムコールAの処理中に優先度の高いタスクBの割り込みが発生した場合には、直ちにタスクBの処理を開始する。そして、タスクBがシステムコールAを発行した時点で始めて割り込み元のシステムコールAの処理に戻り、システムコールの競合を回避している。
【0019】また、こうした手順を可能にするために、オペレーティング・システム内に、システムコール別に処理中のタスク番号を登録したシステムコール管理データを設けている。
【0020】こうした手順を採ることにより、優先度の高いタスクBの起動までの時間を短縮することができる。優先度の高いタスクBは、システムコールAの発行を伴わない処理であるときには、システムコールAを発行するかどうかのチェックを受けないため、その分、起動開始から処理終了に至る時期が早まる。また、システムコールAの発行を伴う処理であるときには、システムコールAを発行するまでの間、タスクBの処理を進めることができる。
【0021】この割り込み処理を必要とする優先度の高いタスクBは、緊急性の高い仕事を担っており、通常、その早い段階で緊急性を要する処理を実行するようにプログラムされているのが普通である。従って、タスクBが、割り込み後に直ちに起動され、その初期段階のプログラムの処理が実行されることにより、緊急課題の大半が片付くことになる。
【0022】
【発明の効果】以上の実施例の説明から明らかなように、本発明の割り込み管理方式では、割り込みタスクの起動開始に至るまでの時間を最小限に抑えることができ、割り込み処理を迅速に行なうことができる。




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013