JPH01316831A - タスクスケジューラー装置およびタスクをスケジューリングする方法 - Google Patents

タスクスケジューラー装置およびタスクをスケジューリングする方法

Info

Publication number
JPH01316831A
JPH01316831A JP1059489A JP5948989A JPH01316831A JP H01316831 A JPH01316831 A JP H01316831A JP 1059489 A JP1059489 A JP 1059489A JP 5948989 A JP5948989 A JP 5948989A JP H01316831 A JPH01316831 A JP H01316831A
Authority
JP
Japan
Prior art keywords
task
state
locked
priority
tasks
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
JP1059489A
Other languages
English (en)
Inventor
Mitchell S Fletcher
ミツチエル・エス・フレツチヤー
Richard P Semma
リチヤード・ピイ・シーマ
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.)
Honeywell Inc
Original Assignee
Honeywell Inc
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 Honeywell Inc filed Critical Honeywell Inc
Publication of JPH01316831A publication Critical patent/JPH01316831A/ja
Pending 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
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Control By Computers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はオペレーティングシステム(以下os)に関す
るものでアシ、更に詳しくいえば、マルチプレクサ応用
/デマルチプレクサ応用のためのマルチタスキング動作
環境に関するものである。本発明のOSは記号的な表記
法とユーザーが定義する実行可能なモジュールを用いて
構成される。
〔従来の技術〕
あらゆる実時間応用は、第1図に示すような一連の事象
でおのおの構成される異なるプロセスとして定義できる
。事象の種類と、事象が実行される時刻とは用途に応じ
て独特である。本発明の6は、プロセッサ内の処理活動
を定義および統合するためにその一般化を使用する。本
発明のO8は数多くの処理アーキテクチャに拡張できる
ことが当業者にはわかるであろう。本発明の説明を容易
にするために、この明細書においてrFVO8J と呼
ぶフレキシブル・マルチプレクサ/デマルチプレクサ装
置(FMDM)のために使用されるO8に関して本発明
を説明することにする。
FMDMアーキテクチャは、中央処理装置(CPU)と
、入力および出力プロセッサ(IOP)と、算術処理装
置(APU )との3つのプロセッサで構成される。入
力および出力プロセッサと算術処理装置はCPUを時間
のかかる入力、出力および計算から解放することを目的
とするものである。したがって、それら3つのプロセッ
サの全てが事象を同時に処理する(同時処理として一般
的に知られている)々らば最適な性訃が得られる。FV
O8はこれを下記のようにして行うものである。
表1.0はタスク定義リストにおいて一緒に[織りまぜ
られた( threaded)J時にタスクを定義する
汎用命令と考えることができる。機能ライブラリィはユ
ーザーの用途を記号的な表記法でスケジュールするため
のツールをユーザーへ与、する。
機能ライブラリィは算術機能と、入力/出力(工10)
機能と、タスク作成/終了機能と、組込まれた機能と、
用途モジュールラン機能と、リセット機能とで構成され
る。そうすると、ユーザーのタスクを定義するためにユ
ーザーにそれらの機能を良く混合して与える。タスクの
状態またはタイミングを基にしてリスト内で飛越すすな
わちループするための能力をユーザーへ与える条件附き
飛越し機も含まれる。
入力および出力プロセッサはハードウェアに特有の直列
入力機能/出力機能を実行する。たとえば、入力および
出力プロセッサが直列入力または直列出力を現在実行し
ている間には、ハードウェアからの入力を実行すること
はできない。算術処理装置は用途に特有の方程式の結果
を計算する。
CPUは他の全ての機能を実行し、入力および出力プロ
セッサの機能と算術処理装置の機能の実行を依託し、同
時処理を開始する。ある機能はそれの定義にアドレスポ
インタを含ま危ければならない。たとえば、RUN機能
は用途モジュールの場所に対するポインタを有する。
INPUT機能と0UTPUT機能はそれぞれの入力バ
ッファまたは出力バッファに対するポインタを有する。
機能ライブラリィおよびポインタのリストがタスクを定
める。用途を構成する各タスクは同様にして定義され、
それから相対的な優先順位が割当てられる。それからC
PUはそれらのタスクリストを復号し、優先順位と利用
できる資源を基にして各機能を個々のプロセッサに割当
てる。
この技術的思想のFMDM (3つのプロセッサ)実現
により、8つの優先順位のうちの1つで128までのタ
スク定義リストの性能を持つことを許す。
これは利用できるメモリによってのみ制限され、最小の
改良で多重プロセッサ装置に拡張できる。
「フレキシブル」という用語は、広範囲のペイロード応
用に対して許されるFMDM設計の多くの領域に適用さ
れる。それらの用途のいくつかは、たとえば航空機に搭
載できるコンピュータ装置に実験を結びつける共通/応
答装置としての使用を含む。FMDMは独立した制御を
行うデータ獲得とデータ取扱いを制御するために使用す
ることもでき、る。第3図はマイクロプロセッサを含む
FMDM構成の一般的な例を示す。FVO8はユーザー
を割込み取扱い、I10バスの争い、装置のタイミング
等の重荷から解放すると同時に、FMDM資源の完全な
アクセスを許すために構成されたものである。FVO8
は8つの優先順位を持つマルチタスキング環境と、時間
的に重要な事象に対するほとんど即時の応答と、簡単な
1線指令を介して10Mのいずれかと通信を行う能力と
を提供する。
〔発明の概要〕
本発明は、方程式リストと、機能ライブラリィと、入力
ドライバと、出力ドライバと、大きなタスクのユーザー
作成タスク定義リストと、小さいタスクのユーザー作成
タスク定義リストと、割込ミハンドラーとを含む実時間
マルチタスキング・オペレーティングシステムに使用す
る優先行列のプレイを含むタスクスケジューラ装置を提
供するものである。本発明のタスクスケジューラ装置は
、各ライブラリィ機能が終了した時に優先行列が質問さ
れ、求められている資源を利用できる最高優先順位のタ
スクセグメントが見出されて、実行され、同じ優先行列
中のタスクセグメントがラウンドロビンのやシ方で実行
されるような、優先順位に従ってタスクをスケジューリ
ングする手段を含む。本発明の装置は、ユーザー作成リ
ストを更新する手段と、ユーザー作aIJストを質問す
る手段とを含むタスク作成手段を更に含む。本発明の装
置は、タスクスケジューラ−がロックされたタスクだけ
を実行することを許し、優先実行の正常な状態がオーバ
ーライドされるような動作モードにタスクをロックする
手段と、ライブラリィ機能の終了を求めるタスクに動作
を一時休止させる待機手段とを含み、ロックされないで
実行されり状態と、ロックされないでアクティブな状態
と、ロックされないで待機する状態と、ロックされてア
クティブな状態と、またはロックされて待機する状態と
に装置の全−Cの大きなタスクの状態を維持スる手段と
を更に含む。
〔実施例〕
以下、図面を参照して本発明の詳細な説明する。
本発明は、ユーザー用途のだめのマルチタスク環境を作
成する3レベルのソフトウェアを含むオペレーティング
システム(O8)を有する。第2図はFMDM処理装置
すなわちrFVO8Jにおいて用いられるO8である本
発明の一実施例の略図である。第2図に示すように、第
1のレベルは入力/田力(Ilo)ドライバ12と、割
込み・・ンドラ14とを有する。タスクの作成と同期は
割込みノ\ンドラの1つとして実現される。次のレベル
はタスクスケジューラ−20を含み、最後のレベルは機
能ライブラリィ30とを含む。FVOSは、フレキシブ
ル・マルチプレクサ/デマルチプレクサ(FMDM)用
途のためのマルチタスキング動作環境を提供し、マルチ
タスクの実行を制御でき、時間的に厳しい事象において
優先順位の高いタスクに迅速に応答できる。本発明の一
実施例においては、FVO8は128個までのタスクの
実行を制御できる。
再び第2図を参照して、ユーザーは男根リストと、構成
リストと、アプリケーションモジュールとを供給せねば
なら々い。それらのリストとモジュールはzsoマクロ
アセンブラとFVOSマクロ機能ライブラリィとを用い
て作成される。本発明を工業用制御装置のような多くの
種類の実時間制御応用に使用できることが当業者には明
らかであろうが、以下に行う本発明の説明は、実時間で
、かつ互いに同時に実行される多くの科学実験のモニタ
および制御に関連して用いられるFMDM処理装置に関
連してオペレーティングシステムヲ用いることについて
のものである。
タスクスケジューラ−20は中央処理装置(CPU)と
、算術処理装置(APU )と、I/Q資源とを統合す
る。優先順位を基にして、タスクスケジューラ−20は
機能実行の優先順位を選択する。各機能の実行に続いて
、制御はタスクスケジューラ−20へ戻る。タスクスケ
ジューラ−20については後で詳しく説明する。
機能ライブラリィ30は、ある系列で構成された時にタ
スクを形成する各種の基本的なオペレーションで構成さ
れる。ある機能はIlo ドライバを用い、別の機能は
APUを用いる。機能が実行される唯一のやり方はタス
クスケジューラ−20からの開始によるものである。方
程式リストと、タスク定義リストと、アプリケーション
モジュールとはFVO8の一部ではないが、特定の応用
を満すことに関するFVO8の動作の1i要な部分であ
る。方程式リストは、計算機能により解釈され、APU
により実行されるべきである応用に特有の数値方程式を
定める。タスク定義リストはアプリケーションに特有の
リストであって、タスクを構成する基本的な順次動作と
、附近のタスクの間相対的な優位順位と、各タスクの実
行頻度とを定める。タスク定義リストは、諸機卵の実行
を統合する九めにタスクスケジューラ−20にょシ解釈
すべきである。アプリケーションモジュールはアプリケ
ーションのために求められる結合可能なオブジェクトコ
ードモジュールである。
ii’vosの機能についての説明、F’VO8は、実
行すべき全てのタスクのトップダウン状に構成すれた定
義を基にしている。アプリケーションは構成されたやシ
方で定められ、各アプリケーションは1つのタスクまた
はマルチタスクとして表すことができる。各タスクには
相対的な優先順位が割尚てられる。各タスクは機能ライ
ブラリィからの機能で構成される。それらの機能はタス
クセグメントである。それらのタスクセグメントの実行
はCPUによシ直列に開始させられるが、IOP とA
PUにより並列に実行される。
FVO8の太き々機能部分は初期化モジュール(図示せ
ず)と、タスクスケジューラ−20と、機能ライブラリ
ィ30とである。FVO8ソフトウェアモジュールのそ
れぞれの機能による詳しい分類が表2に示されている。
初期化モジュールは動作のためにFVO3を用意する。
タスクスケジューラ−20は全てのタスクの実行を依託
する。
機能ライブラリィ30は、アプリケーションと記号表記
を定めるためにユーザーが利用できる指令を含む。
O8の初期化において、FMDM装置で用いられるF’
VO8と呼ばれるO8の一実施例においては、下記の初
期化手続きが続く。工ントリイが行われるとFVO8が
初期化され、タスクゼロ(最初のユーザーが定めたタス
ク)が最高優先行列内に置かれ、タスクスケジューラ−
に入れられる。FVO8は、1)ROMを零にする、2
)全てのポインタを初期化する、3)割込みベクトルと
優先順位のメモリをセットする。4)EEPROMの3
ページをRAM中へ動かす、5)小さいフレームタイミ
ングと大きなフレームタイミングをセットし、6)割込
みを可能にする。
それの最初の機能を最高優先順位行列に置くことによシ
タスフゼロが開始される。それから、タスクスケジュー
ラ−20へ制御が与えられる。そのタスクスケジューラ
−は、優先序位と資源の利用可能性を基にして、現在行
列中にあるタスクセグメントを実行する。他のタスクは
、タスクゼロ、タスク作成および同期ルーチンと、”!
たけ特殊な割込みとにより行列に加えられるそれらの他
のタスクの最初の要素によシ実行される。各タスクは、
1度に1つのセグメントずつ、一連のタスクセグメント
として実行される。実行される用意ができているタスク
セグメントは、最高の優先順位を初めに順序づけられて
いる一連の行列中に維持される。タスクセグメントが完
了させられると、その大きなタスク内の次のタスクセグ
メントが行列に加えられ、次にどのタスクセグメントを
実行するかを判定するために、優先順位がタスクスケジ
ューラ−により再び評価させられる。同じ優先順位のタ
スクは、タスクの停止なしにラウンドロビンのやシ方で
実行される。
タスクスケジューラ−0タスクスケジューラ−20は、
一連のポインタと、状態レジスタと、カウンタと、複数
の優先順位行列とを維持することにより、優先順位と資
源の利用可能性とを基にして全てのタスクの実行を制御
する。本発明のF■O8の面においては、優先順位行列
のレベルの数は8である。正常な動作において装置に電
源が投入されると最初の太きがタスクが実行され、初期
化機能のためにそれがユーザーにより通常留保される。
各タスクセグメントの実行に続いてタスク2ケジユーラ
ーが再び入れられる。タスクスケジューラ−のタスク作
成および同期化部分は装置クロックの各刻時(各10ミ
リ秒)ごとに入れられる。
タスクスケジューラ−はCPUが行列中の最初のタスク
(最高優先順位)を実行することを許す。
小さいタスクセグメントが呼出している機能がビジー状
態である(たとえば、計算を終った、またはIOMから
の入力、あるいはIOMへの出力を直列に転送している
動作中である、というような、データを待っている)と
すると、タスクスケジューラ−は行列中の要素へ進む。
科学計算および入力/出力のような資源処理はCPU機
能と並列に実行されるから、そのやり方は実効処理性能
を最高にする。
タスクスケジューラ−はあらゆる大きなタスクの状態の
維持も行う。太き々タスクの状態は次のようにして定義
される(装置においては他の全ての状態は不法である)
:0OH= ロックされず、実行された、81H=ロツ
クされアクティブ、01Hコロツクされず、アクティブ
、83H=ロツクされず、アクティブ、83H=ロツク
され、待機、03H=ロツクされず、待機。
ロックされたタスクは「ロックされた」動作モードにあ
るタスクとして定義される。実行されたタスクは、作成
されることを待っているタスクとして定義される。ある
タスクが実行のために優先順位行列中に置かれる時にそ
のタスクは「作成される」。アクティブタスクは現在実
行されている(すなわち、行列中の要素を有する)タス
クとして定義される。待機するタスクは、APUまたは
Ilo の機能の実行を開始したが、その機能は100
%終了してい力いものを待っていると定義される。第4
図に示すように、初期化の直後に全てのタスクは実行さ
れる。タスクがひとたびアクティブ・ロックされると、
ロックされない機能または行われた機能を実行すること
により、そのタスクはアクティブ・ロックされない機能
へ戻される。ロックされたモードにおいては、タスクは
アクティブから実行された、ま九は待機へ進むことがで
きるが、実行されたから待機へ、または待機から実行さ
れたへ動くことはできない。
タスクスケジューラ−のタスク作成および同期化部分は
プログラム可能なタイマのための割込みサービスルーチ
ンである。装置クロックの各刻時(10ミリ秒)ごとに
、F’MDM任意経過時間(MgT)が、小さいおよび
大きなフレームタイミングとともに増加させられる。こ
の時間は必要があればグリニッチ標準時間に同期させる
ことができる。タスクは小さいフレームタイミングまた
は太きカフレームタイミング、指定された遅延時間、ま
たはMETを基にして作成される。タスクスケジューラ
−は特定の小さいフレーム、大キなフレーム、METま
たは遅延時間に作成させるタスクのリストを維持する。
正確な時刻にリストの各要素が評価され、その要素が成
長したとすると、そのIIIは実行のために使先順位行
列中に置かれる。
機能ライブラリィ、 機能ライブラリィは、ユーザーの
アプリケーションを記号的な表記で作成するためのツー
ルをそのユーザーへ与える。機能ライブラリィは算術機
能と、110機能と、タスク作成/終了機能と、BIT
E機能と、アプリケーションモジュールRUN機能と、
メモIJ操fl[能と、RESET機能とで構成される
。タスク状態、タイミングまたはユーザーが形成したフ
ラッグを基にして飛越しまたはループするための能力を
提供する条件附き飛越し機能も含まれる。タスクセグメ
ントは、タスク構成リストにおいて定められた特定の入
力および出力を持つ機能でなければならない。タスクセ
グメントのリストがタスクを形成する。アプリケーショ
ンモジュールは高レベルの言語またはアセンブラ言語で
書くことができ、それからRUN機能によシ実行できる
機能ライブラリィは、タスク構成リストにょシー緒に[
織シ合わされた(threaded) j時にタスクを
形成する汎用命令の集りと考えることができる。各ユー
ザー機能は記号的表記法で書かれる。
その記号的表記法は、1組のFVOSマクロによp拡張
されると、構成リストを形成する。マクロ定義はテクト
o=クス(Tektronix) z80 アセンブラ
で動作するために行うべきである。
FVOS機能の流れ: FVO8は、第5図に示すよう
に、3つの主な動作モードを有する。それらのタスクは
正常(タスタータスク)動作モード、ロックされた動作
モード、および留保された資源動作モードでなければな
らない。タスタータスク動作が正常な動作モードとして
第5図(a)に示されている。最高優先順位のタスクが
実行され、他のタスクが行列に留ってそれらのタスクの
順番を待つために行列中に留まる。第5図(a)は優先
順位行列のアレイを示す。本発明のFVO8実施例にお
いては、8列の行列が、要素とも呼ばれる8個のサブタ
スクのためのアドレスポインタと優先順位状態を含む。
同じ優先順位のタスクが、タスクの停止なしにラウンド
ロビンのやり方で実行される。現在のタスクが実行され
た後で、優先順位が再び判定され、最高優先順位のタス
クが実行される。
また第5図(B)を参照して、たとえば、現在実行され
ているタスクはブロックTexによ9表され、そのタス
クがひとたび実行されると、タスクスケジューラ−は優
先順位行列を再び調べて、次に最高優先順位の次のタス
クを探す。最高優先順位のタスクをT1と仮定すると、
そのタスクが次に実行されるタスクである。タスクTI
、 T2 、 T3 。
T4の順位が全て同じであるとすると、タスクT1が最
初に実行され、それから、タスクはラウンドロビンのや
υ方でとられるから、タスクT2が次に1等というよう
にして実行される。
ロックされた動作モード、 次に第5図(b)を参照す
る。この図にはロックされた動作モードの記号図が示さ
れている。大きなタスク内の一連の事象が時間的に重要
か時にロックされた動作モードがスケジュールされる。
先に述べたように、太き々タスクは、大きな時間フレー
ム以内で終了すべき一連のサブタスクである。ブロック
TXで示されているように、ロックされたタスクは正常
な優先順位を打消し、利用できる全ての資源を有する。
ロックされたタスクは、1行われた」機能または「ロッ
クされていない」機能に遭遇するまで、行列を評価する
ことのない機能の後で実行される機能である。行われた
機能またはロックされていない機能は太き々タスク内の
サブタスクとして実行される。全てのサブタスクが実行
された時にタスクは「行われる」。[行われた一1機能
は、そのタスクに対する操作を停止することをタスクス
ケジューラ−に告げる。それから、第5図(a)に示す
ように、FVO8は正常なタスク−タスク動作モードへ
戻る。
留保された資源動作モード、 留保された資源動作モー
ドは、第5図(c)に示すように、予測された事象に対
する迅速な応答が求められた時に設けられる。F’VO
8m象が起ることを待つ。事象が起ると、「行われた」
機能または「ロックされない」機能に遭遇するまで、そ
の留保されているタスクは実行され、それによりFVO
8は正常な動作モードへ戻される。(ユーザーにより供
給される)指定された時間切れ期間内に事象が起ら力か
ったとすると、タスクスケジューラ−により誤りがフラ
ッグされる。本発明の一実施例においては、8つの別々
の割込みが事象の発生を合図できる。
それらは時刻を計られた割込み、またはF’VOS装置
の外部からの(ボタンを押すというような)刺激を基に
した割込みとすることができる。FVO8は、優先順位
行列のアレイを探索し、タスクまたはサブタスクが留保
すべき資源を要求するかどうかを調べることにより、留
保されている資源動作モードに、またはそれの動作モー
ドのいずれかに入るか否かを判定する。
時間線、FVO8動作は、各タスクセグメントの実行の
間で実行するタスクスケジューラ−と、プログラム可能
がタイマ割込みによりドライブされ、10ミリ秒ごとに
実行されるタスク作成およヒ同期化モジュールとの2つ
の群に分けられる。
タスクスケジューラ−の機能の流れが第6図に示されて
いる。
次に第6図を参照する。FVO8はウオームスタート場
所50と、コールドスタート場所55との2つのエント
リイ点を有することに注目されたい。
2つの機能の間の主力違いは、ウオームスタートがMB
Tをリセットしないのに、コールドスタートがMETを
リセットすることである。また、コールドスタートはそ
れのエントリインースを評価しくすなわち、0OOOH
へ行く、すなわち電源投入)、それに従って電源投入状
態フラッグをセットする。
タスクスケジューラ−は、現在のFVO8動作モードを
基にして、どのタスクを次に実行するかを決定する。タ
スクスケジューラ−の実行頻度は実行される機能ごとに
1回である。
初期化52の後で、タスクスケジューラ−はブロック6
5で始まるループ60内で動作する。そのブロック65
は、優先順位行列から次のタスクを得る実行ブロックで
ある。
次ニ、タスクスケジューラ−は判定ブロック70へ進み
、次のタスクがロック機能であるかどうかを判定する。
タスクがロック機能であれば、ロックされない要素また
は行われた要素に遭遇するまで、行列を評価することな
しにタスクが要素ごとに実行される(ブロック72)。
その同じ機能線に続いて、ロックされないタスクまたは
行われたタスクに遭遇するとぐブロック72)、タスク
スケジエーラーは次の機能すなわち次のサブタスクを実
行し、または行われたとすると、動作はブロック65へ
進んで次のタスクを行列から得る。次のタスクがロック
された機能でないことが判定されると(ブロック70)
、タスクスケジエーラーは判定ブロックT5へ進み、そ
のタスクが留保されている機能であるか否かを判定する
。その判定結果が肯定であれば、タスクスケジューラ−
は判定ブロック80へ進んで、時間的に重要が事象が起
きたか否かを判定する。判定結果が肯定であると機能は
実行ブロック72へ進む。
判定ブロックT5における判定の結果が否定であれば動
作は判定ブロック82へ進む。その判定ブロックにおい
ては次のタスクがタスク作成機能であるか否かについて
の判定が行われ、その判定結果が肯定であれば、動作は
実行ブロック85へ進んで、新しいタスクが適切なリス
トまたは優先順位行列に置く。判定ブロック82におけ
る判定結果が否定であれば、タスクスケジューラ−は行
われたサブタスクを調べ、次の機能を適切なリストまた
は行列に置く。
次に、タスク作成および同期化モジュールが示されてい
る第7図を参照する。タスク作成および同期化フォーグ
ラウンド機能の流れが時間に従い、MgTを基にして優
先順位行列にタスクを加え、各種のハウスキーピング機
能を実行する。このモジュールにはプログラム可能なタ
イマ割込み毎に1同人る。そのタイマ割込みはFVO8
が10ミリ秒の速さで初期化する。このモジュール内の
タスク作成機能はMET、小さいフレームタイミング、
および大きなフレームタイミングを基にした条件附きタ
スク作成機能である。各ユーザーアプリケーションには
小さい時間フレームと大きな時間フレームが組合わされ
る。この明細書では小さいフレームのことを小さい時間
フレームと呼び、かつそれらの小さいフレームは1〜2
56までの10ミリ秒の装置の刻時の数である。この明
細書では大きなフレームのことを太き4時間フレームと
呼び、かつそれは1〜256の小さいフレームの数で構
成される。大きなフレームと小さいフレームは、プログ
ラム機能の流れに関して、それぞれ高速内部ループおよ
び低速外部ループと考えることができる。ユーザーの応
用の必要に合わせてユーザーは大きなフレームの数と小
さいフレームの数を定めることができる。
再び第7図を参照して、タスク作成および同期化モジュ
ールは機能ブロック100において機能の流れに入る。
そのブロック100においてMETは10ミリ秒だけ長
くされる。判定ブロック105においてMETリストが
空いているか否かの判一定が行われ、そのMETIJス
トが成熟したタスクを含んでいるものとすると、それら
のタスクの最初の要素が機能ブロック110において優
先順位行列に加えられる。機能ブロック110内の注釈
[全ての成熟要素を作成する」は「成熟した」(すなわ
ち、実行するばかりになっている要素)サブタスクを優
先順位行列に加えることを意味する。
MIETIJストが空であるか、全ての成熟要素が作成
されたとすると、このモジュールは判定ブロック115
へ入って、遅延リストが空かどうかを判定する。遅延リ
スト内の各タスクに対する遅延時間は10ミリ秒だけ短
くされる。遅延時間がゼロに等しいと、遅延リスト中の
要素は「成熟しており」、機能ブロック120内のリス
トに加えられる。遅延リストが空であるか、全ての成熟
要素が作成されたとすると、モジュールの動作は判定ブ
ロック120へ進む。この判定ブロックにおいては次の
小さいフレームが始まるか否かの判定が行われる。その
判定結果が肯定であれば、小さいフレームリスト中の全
ての要素が作成される(ブロック125)。また、その
判定結果が否定であるか、全ての要素が作成されている
とすると、動作は判定ブロック130へ進み、そこにお
いて次の大きなフレームが始っているかどうかの判定が
行われる。その判定結果が肯定であれば大きなフレーム
リスト中の全ての要素が作成される(ブロック135)
。次に、留保されている時間切れが生じたかどうかの判
定がブロック140で行われる。この時間切れが生じた
かどうかの判定は安全を保持する特徴であって、資源が
留保されたとすると、時間的に厳しい事象を待っている
間に、それらの資源の留保のために制限時間がユーザー
によシセットされる。時間的に厳しい事象が起る前に留
保されている時間切れが生じたとすると、ブロック14
5へ留保されている時間切れ誤りが送られる。
留保されている時間切れが起らないと、FVO8は割込
みからタスクスケジューラ−モジュールへ戻る。
第8図はFVO8初期化と3つの各動作モードとのため
の計算された時間線を示す。F’VOS の初期化に続
いて、3つの動作モードのうちの1つに入る。各動作モ
ードに対する求められているコンテキスト・スイッチン
グ時間も第8図に示されている。
第8図に示されている時間は最高優先順位行列中のただ
1つの要素を基にして計算されたものであることに注目
すべきである。それはほとんど理想的な状況である。各
大き々タスクの現在の状態と、優先順位行列中の要素の
構成とに応じて数多くの状況が存在し得る。コンテキス
ト・スイッチング時刻を見積るために第8図の時間線に
下記の変更が加えられる。下記の変更においては、実行
するためにタスクスケジューラ−が選択するタスクセグ
メントを対虫とするタスクセグメントと呼ぶことにする
1、前のタスクセグメントがそのタスクの最後のセグメ
ントであれば、43.5マイクロ秒をタスクスケジュー
ラ−実行時間に加える。
2、対象とするタスクセグメントが210機能またはA
PU機能であるとすると、10パーセントをタスクスケ
ジューラ−実行時間に加える。
3、対象とするタスクセグメントが最高優先順位でない
とすると、最高優先順位以下の各優先順位に16.5マ
イクロ秒を加える。
4、 210機能または入PU機能が現在同時に処理し
ておシ、それが対象とするタスクセグメントよシ優先順
位が高いとすると、210機能またはAPU機能に61
.25マイクロ秒を加える。
割込み、  FMDMに用いられる本発明の一実施例に
おいては、FMDM割込み構造は280割込みモード2
である。ある優先順位で構成された9つのFMDM割込
みがある。APU割込みと、IOM0Mディスエイプル
みと、プログラム可能彦タイマ割込みと、IOM転送完
了(行われた)割込みはユーザーにとっては明らかで6
.り、IOM番号ゼロ割込みと、フレキシブル割込みと
、外部割込みと、誤シ割込みと、マスク可能でない割込
みとはユーザーによシ定められる。マスク可能でない割
込み(NMI)はFMDMへ供給されていた電力が断た
れた時に行われる。NMIサービスルーチンはおだやか
な停電シーケンスに備え、実行する。
IOM転送完了(行われた)割込みは入力/出力転送の
たびに行われ、I/Q転送が完了したこと、およびI/
Q制御器においてデータを得ることができることを知ら
せる(別のI10転送がいま行うことができる)。この
割込みはユーザーにとっては明らかであり、FVO8K
よシ完全にサービスされる。
轟業者であれば容易にわかるように、本発明のオペレー
ティングシステムには多くの潜在的な用途がある。1つ
の可能な用途は材料処理実験を制御することである。こ
の場合には、センサが入力をあるタスクに関連するオペ
レーティングシステムへ供給する。それらのタスクには
優先順位がつけられ、かつそれらのタスクはオペレーテ
ィング’/スfAKよシ実行される。オペレーティング
システムは、指定された機訃を動作させるために信号を
制御手段へ出力する。たとえば、装置のユーザーは結晶
を成長させるために実験を行うことができる。ユーザー
は、正しい環境条件の下に結晶を成長させる適切な溶液
でスタートする。オペレーティングシステムは、ユーザ
ーがたとえばボタンを押すととKよυプロセスを開始さ
せることを待つ。それから、オペレーティングシステム
はいくつかのセンサから入力を並列に受け、1台の制御
器を用いて多数の結晶成長実験を並列に行う。
1つの可能な筋書きは、溶液が真空室に注入された後で
、真空室を排気することをオペレーティングシステムが
指令することである。それから、オペレーティングシス
テムは、真空室内の圧力センサから人力を受けることに
よシ真空室内部の圧力をモニタする。真空室内の圧力が
らる値たとえば10  TOHに達すると、加熱器によ
る加熱が開始される。そのために溶液は制御された温度
上昇率で温度が上昇する。オペレーティングシステムは
外部センサから入力を受けて真空室の内部の温度を連続
して監視する。それと同時に、オペレーティングシステ
ムは、温度測定値に応答する制御手段により溶液温度を
調節する。第3のセンサが結晶の重量を測定できる。結
晶の重量が所定値に達すると、上記のプロセスが逆に行
われて真空−室を常温常圧の状態へ戻す。
このオペレーティングシステムの別の可能な応用は、建
物内部のセンサにそれを取付けることである。センサは
建物内部の環境制御装置を運転させることができる。そ
の環境制御には加熱および空調が含まれる。このオペレ
ーティングシステムを用いると、電灯を点滅させるため
にMET機能を用いるというような、他の多くのタスク
を同時に実行することが可能である。建物内部の電灯を
点滅させるというような機能は「大きなフレーム」タス
クまたは外部ループタスクより以上のものである。その
理由は、そのような機能は長期間にわたって行うことが
でき、第2のタイミングを分割することを要しないから
である。
第9図は、検出手段SMと、オペレーティングシステム
O8と、制御手段CMとを含み、本発明のオペレーティ
ングシステムを用いる制御装置を示す。検出手段SMは
、複数の出力端子200と複数の入力端子202を有す
る複数のセンサを含む。オペレーティングシステムは、
検出手段から受けた刺激に対応する入力と出力を受ける
。そうするとタスクが実行され、オペレーティングシス
テム210の出力端子を介して電圧の形の信号が制御手
段の入力端子へ送られる。制御手段CMの出力端子21
5 には外部装置へ供給される制御信号が現われる。も
ちろん、複数の入力と複数の出力を持つ必要はないが、
複数の入力と複数の出力を持つとオペレーティングシス
テムを最も効率的に使用できる。オペレーティングシス
テムハ、与えられた環境において、1個のセンサおよび
1つの制御器で動作できる。
表 2 FVOSソフトウェアモジュール機能の概要NMI S
Rマスク可能でない割込み  U0M 0NFJ6  ディスエイプル割込み    DFL田
07レギシブル割込み     UDONεI  Do
Nf割込み       l0APUI   APU 
割込ミ& 10MI   IOM *O割込み      l0U
IJTI  外部割込み      UFJRRORI
 vAり割込み       UDMASK  割込み
マスク修正    Uタスク作成  CT DLY遅延
の後でタスク作成  TCTJltAJ大きなフレーム
でタスク作成 TCTJIN小さいフレームでタスク作
成  1表2(続き) FVOSソフトウェアモジュール機能の概要EC)10
  出力へのエコー人力   !0優先    LOC
K   ”Lock’機能      Tオーバーライ
ド艶UNLOCK  ’Unlock’  機能   
      1表2(続き) FVOSソフトウェアモジュール機能の概要JMPNZ
 非ゼロへ飛越す     TJMP P  正へ飛越
す       TJMP N  負へ飛越す    
   T組込まれた 131TEPs 電源BITE 
        D試験機能  BITEMM メモリ
モジュールBITFJDBITECPUCPUモジュー
ルBITE     DBITg*PU APUモジュ
ールBITε    D付加機能   RUN    
アプリケーションモジュールラン USETIME  
FMDM経過時間*ッm   TINQUIRE状態質
問機能      DINIT   初期化     
    。
LOAD]  メモリバイトに値をロードする  U表
2(続I) FVOSノットウェアモジュール機能の概要LOADJ
  メモリ語に値をロードする  U注;I=大入力0
=出力、T−タスク統合。
D=診断、U=ユーザ一定義、^=算術表3 FVO8割込みの概要 10M#OI OM# 0   ユーザ一定義 ユーザ
一定義ERRORiigシレジスタ l[1条件時  
ユーザ一定義
【図面の簡単な説明】
第1図は実時間処理機能の流れの記号的な図、第2図は
FVO8機能構造の略図、第3図はシンプレックスMC
U FMDM構成の一般的な例を示す略図、第4図はF
VO8タスク状態図、第5(a)図、第5(b)図及び
第5(c)図はFVO8の動作モードを示す略図、第6
図はFVOSタスクスケジューラ−機能の流れを示す機
能流れ図、第7図はFVOSタスク作成および同期機能
の流れを示す機能流れ図、第8図はFVO8動作モード
時間線図、第9図は本発明のオペレーティングシステム
を利用する可能な制御装置の構成を示すブロック図であ
る。 12・・・・人力出力ドライバ、14・・・・割込みハ
ンドラー、2G−・−・タスクスケジューラ−、SM・
・・・検出手段、CM・・・・制御手段。 特許出願人  ハネウェル・インコーボレーテツド復代
理人 山川政樹 一 FIG3 FIG、9 E迄 FIG、4 FVO5汲勲會 (し)Oツウこ財力」dイ旨し−に ’;vos ti加−も−V゛ 双りスケシ!−ラーのオ会岩Eめ〉状 9に冷域あ・よバ鳴期ん祢能c−,5v(2)ネ71穎
Y6ミード FIG、8 手続補正書(木矢) 平成   年   月   日 特許庁長官殿          1−1231、事件
の表示 平成1手持  許願第別+gイ号 3、補正をする者

Claims (4)

    【特許請求の範囲】
  1. (1)方程式リストと、構成リストと、機能ライブラリ
    ィと、入力ドライバと、出力ドライバと、大きなタスク
    のユーザー作成タスク定義リストと、小さいタスクのユ
    ーザー作成タスク定義リストと、割込みハンドラーとを
    含む実時間マルチタスキング・オペレーティングシステ
    ムに使用する優先行列のアレイを含むタスクスケジユー
    ラ装置において、 各ライブラリィ機能が終了した時に優先行列が質問され
    、求められている資源を利用できる最高優先順位のタス
    クセグメントが見出されて、実行され、同じ優先行列中
    のタスクセグメントがラウンドロビンのやり方で実行さ
    れるような、優先順位に従つてタスクをスケジユーリン
    グする手段と、ユーザー作成リストを更新する手段と、
    ユーザー作成リストを質問する手段とを含むタスク作成
    手段と、 タスクスケジユーラーがロックされたタスクだけを実行
    することを許し、優先実行の正常な状態がオーバーライ
    ドされるような動作モードにタスクをロックする手段と
    、ライブラリィ機能の終了を求めるタスクに動作を一時
    休止させる待機手段とを含み、ロックされないで実行さ
    れた状態と、ロックされないでアクティブな状態と、ロ
    ックされないで待機する状態と、ロックされてアクティ
    ブな状態と、またはロックされて待機する状態とに装置
    の全ての大きなタスクの状態を維持する手段と、 を備えることを特徴とするタスクスケジユーラー装置。
  2. (2)タスクスケジユーラーがロックされたタスクだけ
    を実行することを許し、優先実行の正常な状態がオーバ
    ーライドされるような動作モードにタスクをロックする
    手段と、ライブラリィ機能の終了を求めるタスクに動作
    を一時休止させる待機手段とを含み、ロックされないで
    実行された状態と、ロックされないでアクティブな状態
    と、ロックされないで待機する状態と、ロックされてア
    クティブな状態と、またはロックされて待機する状態と
    に装置の全ての大きなタスクの状態を維持する手段、 を備えることを特徴とする実時間マルチタスキング・オ
    ペレーティングシステムに使用する大きなタスク状態装
    置。
  3. (3)方程式リストと、構成リストと、機能ライブラリ
    ィと、入力ドライバと、出力ドライバと、大きなタスク
    のユーザー作成タスク定義リストと、小さいタスクのユ
    ーザー作成タスク定義リストと、割込みハンドラーとを
    含む実時間マルチタスキング・オペレーティング・シス
    テムに使用する優先行列のアレイを含み、タスクをスケ
    ジユーリングする方法において、 各ライブラリィ機能が終了した時に優先行列が質問され
    、求められている資源を利用できる最高優先順位のタス
    クセグメントが見出されて、実行され、同じ優先行列中
    のタスクセグメントがラウンドロビンのやり方で実行さ
    れるような、優先順位に従つてタスクをスケジユーリン
    グする過程と、ユーザー作成リストを更新および質問す
    る過程を含むタスク作成過程と、 タスクスケジユーラーがロックされたタスクだけを実行
    することを許し、優先実行の正常な状態がオーバーライ
    ドされるような動作モードにタスクをロックする手段と
    、ライブラリィ機能の終了を求めるタスクに動作を一時
    休止させる待機手段とを含み、ロックされないで実行さ
    れた状態と、ロックされないでアクティブな状態と、ロ
    ックされないで待機する状態と、ロックされてアクティ
    ブな状態と、またはロックされて待機する状態とに装置
    の全ての大きなタスクの状態を維持する過程と、 を備えることを特徴とするタスクをスケジユーリングす
    る方法。
  4. (4)タスクスケジユーラーがロックされたタスクだけ
    を実行することを許し、優先実行の正常な状態がオーバ
    ーライドされるような動作モードにタスクをロックする
    手段と、ライブラリィ機能の終了を求めるタスクに動作
    を一時休止させる待機手段とを含み、ロックされないで
    実行された状態と、ロックされないでアクティブな状態
    と、ロックされないで待機する状態と、ロックされてア
    クティブな状態と、またはロックされて待機する状態と
    に装置の全ての大きなタスクの状態を維持する過程、 を備えることを特徴とする実時間マルチタスキング・オ
    ペレーティングシステムに使用するためのタスクの状態
    を定める方法。
JP1059489A 1988-03-10 1989-03-10 タスクスケジューラー装置およびタスクをスケジューリングする方法 Pending JPH01316831A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/166,334 US5012409A (en) 1988-03-10 1988-03-10 Operating system for a multi-tasking operating environment
US166334 1988-03-10

Publications (1)

Publication Number Publication Date
JPH01316831A true JPH01316831A (ja) 1989-12-21

Family

ID=22602827

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1059489A Pending JPH01316831A (ja) 1988-03-10 1989-03-10 タスクスケジューラー装置およびタスクをスケジューリングする方法

Country Status (4)

Country Link
US (1) US5012409A (ja)
EP (1) EP0332148A3 (ja)
JP (1) JPH01316831A (ja)
CN (1) CN1038712A (ja)

Families Citing this family (134)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2650965B2 (ja) * 1988-05-27 1997-09-10 株式会社日立製作所 計算機システムおよびそのタスクスケジュール方法
US5361365A (en) * 1989-11-06 1994-11-01 Sharp Kabushiki Kaisha Microprocessor for selectively performing cold and warm starts
AU650242B2 (en) * 1989-11-28 1994-06-16 International Business Machines Corporation Methods and apparatus for dynamically managing input/output (I/O) connectivity
US5168570A (en) * 1989-12-29 1992-12-01 Supercomputer Systems Limited Partnership Method and apparatus for a multiple request toggling priority system
US5208914A (en) * 1989-12-29 1993-05-04 Superconductor Systems Limited Partnership Method and apparatus for non-sequential resource access
US5452452A (en) * 1990-06-11 1995-09-19 Cray Research, Inc. System having integrated dispatcher for self scheduling processors to execute multiple types of processes
US5265257A (en) * 1990-06-22 1993-11-23 Digital Equipment Corporation Fast arbiter having easy scaling for large numbers of requesters, large numbers of resource types with multiple instances of each type, and selectable queuing disciplines
ATE119732T1 (de) * 1990-06-26 1995-03-15 Siemens Ag Programmgesteuerte kommunikationsanlage.
US5249297A (en) * 1991-04-29 1993-09-28 Hewlett-Packard Company Methods and apparatus for carrying out transactions in a computer system
US5247675A (en) * 1991-08-09 1993-09-21 International Business Machines Corporation Preemptive and non-preemptive scheduling and execution of program threads in a multitasking operating system
CA2076293A1 (en) * 1991-10-11 1993-04-12 Prathima Agrawal Multiprocessor computer for solving sets of equations
EP0537721B1 (en) * 1991-10-15 1998-11-25 Hewlett-Packard Company Hardware-configured operating system kernel for a multitasking processor
US5307482A (en) * 1992-01-28 1994-04-26 International Business Machines Corp. Computer, non-maskable interrupt trace routine override
US5640563A (en) * 1992-01-31 1997-06-17 International Business Machines Corporation Multi-media computer operating system and method
JPH05250187A (ja) * 1992-03-06 1993-09-28 Hitachi Ltd レディ空間キューによるタスク制御方式
US5715474A (en) * 1992-04-30 1998-02-03 Motorola, Inc. Simultaneous control of radio frequency modem in a multi-tasking system using a single session manager program with separate command queue for each application program
US5392433A (en) * 1992-09-25 1995-02-21 International Business Machines Corporation Method and apparatus for intraprocess locking of a shared resource in a computer system
US6951019B1 (en) 1992-09-30 2005-09-27 Apple Computer, Inc. Execution control for processor tasks
US5471618A (en) * 1992-11-30 1995-11-28 3Com Corporation System for classifying input/output events for processes servicing the events
US5513354A (en) * 1992-12-18 1996-04-30 International Business Machines Corporation Fault tolerant load management system and method
US5844980A (en) * 1993-03-03 1998-12-01 Siemens Business Communication Systems, Inc. Queue managing system and method
US5379432A (en) * 1993-07-19 1995-01-03 Taligent, Inc. Object-oriented interface for a procedural operating system
US5428789A (en) * 1993-08-27 1995-06-27 Waldron, Iii; Theodore C. Method and apparatus for optimizing user response time in a priority preemptive operating system
US5487170A (en) * 1993-12-16 1996-01-23 International Business Machines Corporation Data processing system having dynamic priority task scheduling capabilities
JP2856681B2 (ja) * 1994-01-27 1999-02-10 インターナショナル・ビジネス・マシーンズ・コーポレイション 外部事象を処理する方法およびシステム
US5504904A (en) * 1994-02-23 1996-04-02 International Business Machines Corporation Personal computer having operating system definition file for configuring computer system
DE19500957A1 (de) * 1994-07-19 1996-01-25 Bosch Gmbh Robert Verfahren zur Steuerung von technischen Vorgängen oder Prozessen
US5513351A (en) * 1994-07-28 1996-04-30 International Business Machines Corporation Protecting a system during system maintenance by usage of temporary filenames in an alias table
US5511220A (en) * 1994-09-01 1996-04-23 Perlman; Noah Multi-user computer system with a clock driven batch dispatching mechanism
JPH08212086A (ja) * 1994-09-30 1996-08-20 Microsoft Corp オフィスマシンのオペレーティングシステム及び方法
WO1996017306A2 (en) * 1994-11-21 1996-06-06 Oracle Corporation Media server
JPH096633A (ja) * 1995-06-07 1997-01-10 Internatl Business Mach Corp <Ibm> データ処理システムに於ける高性能多重論理経路の動作用の方法とシステム
US6769128B1 (en) 1995-06-07 2004-07-27 United Video Properties, Inc. Electronic television program guide schedule system and method with data feed access
US5940612A (en) * 1995-09-27 1999-08-17 International Business Machines Corporation System and method for queuing of tasks in a multiprocessing system
US6078942A (en) * 1996-04-25 2000-06-20 Microsoft Corporation Resource management for multimedia devices in a computer
US5801787A (en) * 1996-06-14 1998-09-01 Starsight Telecast, Inc. Television schedule system and method of operation for multiple program occurrences
US5954792A (en) * 1996-12-30 1999-09-21 Cadence Design Systems, Inc. Method for schedule validation of embedded systems
US6829764B1 (en) * 1997-06-23 2004-12-07 International Business Machines Corporation System and method for maximizing usage of computer resources in scheduling of application tasks
FR2765361B1 (fr) * 1997-06-26 2001-09-21 Bull Cp8 Microprocesseur ou microcalculateur imprevisible
US6408324B1 (en) * 1997-07-03 2002-06-18 Trw Inc. Operating system having a non-interrupt cooperative multi-tasking kernel and a method of controlling a plurality of processes with the system
WO1999004561A1 (en) 1997-07-21 1999-01-28 E-Guide, Inc. Systems and methods for displaying and recording control interfaces
US6182120B1 (en) * 1997-09-30 2001-01-30 International Business Machines Corporation Method and system for scheduling queued messages based on queue delay and queue priority
US5987492A (en) * 1997-10-31 1999-11-16 Sun Microsystems, Inc. Method and apparatus for processor sharing
US5999963A (en) * 1997-11-07 1999-12-07 Lucent Technologies, Inc. Move-to-rear list scheduling
US6510460B1 (en) * 1997-12-18 2003-01-21 Sun Microsystems, Inc. Method and apparatus for enforcing locking invariants in multi-threaded systems
US6678713B1 (en) * 1998-04-29 2004-01-13 Xerox Corporation Machine control using a schedulerlock construct
US6549928B1 (en) * 1998-04-29 2003-04-15 Xerox Corporation Machine control integrating event based model with task based model
CN1867068A (zh) 1998-07-14 2006-11-22 联合视频制品公司 交互式电视节目导视系统及其方法
US6215559B1 (en) * 1998-07-31 2001-04-10 Eastman Kodak Company Image queing in photofinishing
US6061709A (en) * 1998-07-31 2000-05-09 Integrated Systems Design Center, Inc. Integrated hardware and software task control executive
US6898762B2 (en) 1998-08-21 2005-05-24 United Video Properties, Inc. Client-server electronic program guide
US6105050A (en) * 1998-08-25 2000-08-15 International Business Machines Corporation System for resource lock/unlock capability in multithreaded computer environment
US6112222A (en) * 1998-08-25 2000-08-29 International Business Machines Corporation Method for resource lock/unlock capability in multithreaded computer environment
US6105049A (en) * 1998-08-25 2000-08-15 International Business Machines Corporation Resource lock/unlock capability in multithreaded computer environment
US6334159B1 (en) * 1998-12-22 2001-12-25 Unisys Corporation Method and apparatus for scheduling requests within a data processing system
US6633942B1 (en) * 1999-08-12 2003-10-14 Rockwell Automation Technologies, Inc. Distributed real-time operating system providing integrated interrupt management
CN1668104A (zh) 2000-10-11 2005-09-14 联合视频制品公司 提供数据存储到点播媒体传递系统中服务器上的系统和方法
US20020083063A1 (en) * 2000-12-26 2002-06-27 Bull Hn Information Systems Inc. Software and data processing system with priority queue dispatching
DE10065417B4 (de) * 2000-12-27 2011-07-21 Siemens AG, 80333 Programmierung von zyklischen Maschinen
DE10065419B4 (de) * 2000-12-27 2011-01-20 Siemens Ag Industrielle Steuerung mit taktsynchronem Ablaufebenenmodell
US6941175B2 (en) * 2000-12-27 2005-09-06 Siemens Aktiengesellschaft Method of operating an industrial controller
KR100424458B1 (ko) * 2001-02-07 2004-03-26 삼성전자주식회사 리얼타임 멀티타스킹 오퍼레이팅 시스템에서의 타스크관리 방법
KR101548473B1 (ko) * 2001-02-21 2015-08-28 로비 가이드스, 인크. 개인용 비디오 녹화 특징을 갖는 대화식 프로그램 가이드를 위한 시스템 및 방법
DE10122422A1 (de) 2001-05-09 2002-11-21 Siemens Ag Verfahren und Vorrichtung zum Einstellen der Bandbreite einer Verbindung zwischen mindestens zwei Kommunikationsendpunkten in einem Datennetz
US20030009508A1 (en) * 2001-06-26 2003-01-09 Troia Terry A. Method and system for providing processor task scheduling
US20030037091A1 (en) * 2001-08-09 2003-02-20 Kozo Nishimura Task scheduling device
JP2003099272A (ja) * 2001-09-20 2003-04-04 Ricoh Co Ltd タスク切替システムと方法およびdspとモデム
US7647591B1 (en) * 2001-09-26 2010-01-12 Palmsource Inc. Method for dynamically enabling the expansion of a computer operating system
US7305675B1 (en) * 2002-01-11 2007-12-04 Advanced Micro Devices, Inc. Processing tasks with failure recovery
US7774816B2 (en) * 2002-04-23 2010-08-10 Rovi Technologies Corporation Conflict manager for a video recorder
US20030206719A1 (en) * 2002-04-23 2003-11-06 Jim Bumgardner Storage Management for a Video Recorder
US20030225817A1 (en) * 2002-06-04 2003-12-04 Prashanth Ishwar Concurrent execution of kernel work and non-kernel work in operating systems with single-threaded kernel
US7577816B2 (en) * 2003-08-18 2009-08-18 Cray Inc. Remote translation mechanism for a multinode system
US7243351B2 (en) * 2002-12-17 2007-07-10 International Business Machines Corporation System and method for task scheduling based upon the classification value and probability
CN100349149C (zh) * 2003-01-24 2007-11-14 中兴通讯股份有限公司 嵌入式实时操作系统的进程调度方法
US7493646B2 (en) 2003-01-30 2009-02-17 United Video Properties, Inc. Interactive television systems with digital video recording and adjustable reminders
US8116611B2 (en) * 2003-02-10 2012-02-14 Aptiv Digital, Inc. Tuner sharing video recorder system architecture
US20040213557A1 (en) * 2003-04-23 2004-10-28 Pioneer Digital Technologies, Inc. Non-hierarchical interface screens for use in a video recorder
US7503048B1 (en) 2003-08-18 2009-03-10 Cray Incorporated Scheduling synchronization of programs running as streams on multiple processors
US7519771B1 (en) 2003-08-18 2009-04-14 Cray Inc. System and method for processing memory instructions using a forced order queue
US7543133B1 (en) 2003-08-18 2009-06-02 Cray Inc. Latency tolerant distributed shared memory multiprocessor computer
US8307194B1 (en) 2003-08-18 2012-11-06 Cray Inc. Relaxed memory consistency model
US7743223B2 (en) * 2003-08-18 2010-06-22 Cray Inc. Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system
US7735088B1 (en) * 2003-08-18 2010-06-08 Cray Inc. Scheduling synchronization of programs running as streams on multiple processors
US7421565B1 (en) * 2003-08-18 2008-09-02 Cray Inc. Method and apparatus for indirectly addressed vector load-add -store across multi-processors
JP2005122470A (ja) * 2003-10-16 2005-05-12 Matsushita Electric Ind Co Ltd 自律型デバイスドライバ
CN1310146C (zh) * 2004-02-09 2007-04-11 中兴通讯股份有限公司 单片机操作系统的模块化实现方法
WO2005089241A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing object triggers
US8707317B2 (en) * 2004-04-30 2014-04-22 Microsoft Corporation Reserving a fixed amount of hardware resources of a multimedia console for system application and controlling the unreserved resources by the multimedia application
US20050267792A1 (en) * 2004-05-28 2005-12-01 Sumit Mehrotra Method and system for laboratory management
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
CN1317640C (zh) * 2004-08-31 2007-05-23 华为技术有限公司 实时操作系统环境下多任务应用软件模块的管理方法
US8171474B2 (en) * 2004-10-01 2012-05-01 Serguei Mankovski System and method for managing, scheduling, controlling and monitoring execution of jobs by a job scheduler utilizing a publish/subscription interface
US8806533B1 (en) 2004-10-08 2014-08-12 United Video Properties, Inc. System and method for using television information codes
US7669204B2 (en) * 2004-10-14 2010-02-23 International Business Machines Corporation Autonomic SMT System tuning
US7814490B2 (en) * 2004-10-14 2010-10-12 International Business Machines Corporation Apparatus and methods for performing computer system maintenance and notification activities in an opportunistic manner
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
CN100437495C (zh) * 2004-12-21 2008-11-26 鸿富锦精密工业(深圳)有限公司 解决资源重复锁定冲突系统及方法
US8510737B2 (en) * 2005-01-07 2013-08-13 Samsung Electronics Co., Ltd. Method and system for prioritizing tasks made available by devices in a network
US8229283B2 (en) 2005-04-01 2012-07-24 Rovi Guides, Inc. System and method for quality marking of a recording
US7646962B1 (en) * 2005-09-30 2010-01-12 Guideworks, Llc System and methods for recording and playing back programs having desirable recording attributes
US8214869B2 (en) 2005-12-29 2012-07-03 Rovi Guides, Inc. Systems and methods for managing a status change of a multimedia asset in multimedia delivery systems
US7765235B2 (en) * 2005-12-29 2010-07-27 Rovi Guides, Inc. Systems and methods for resolving conflicts and managing system resources in multimedia delivery systems
US7774341B2 (en) 2006-03-06 2010-08-10 Veveo, Inc. Methods and systems for selecting and presenting content based on dynamically identifying microgenres associated with the content
US8316394B2 (en) 2006-03-24 2012-11-20 United Video Properties, Inc. Interactive media guidance application with intelligent navigation and display features
CN100517236C (zh) * 2006-04-03 2009-07-22 北京握奇数据系统有限公司 智能卡嵌入式操作系统及其控制方法
JP2007287007A (ja) * 2006-04-19 2007-11-01 Orion Denki Kk 操作タスク予約機能を備えた情報処理装置及び操作タスク予約処理プログラム及び操作タスクの予約処理方法
US20080046935A1 (en) * 2006-08-18 2008-02-21 Krakirian Haig H System and method for displaying program guide information
US8832742B2 (en) 2006-10-06 2014-09-09 United Video Properties, Inc. Systems and methods for acquiring, categorizing and delivering media in interactive media guidance applications
JP5243711B2 (ja) * 2006-11-10 2013-07-24 セイコーエプソン株式会社 プロセッサ
US7801888B2 (en) 2007-03-09 2010-09-21 Microsoft Corporation Media content search results ranked by popularity
US8738606B2 (en) * 2007-03-30 2014-05-27 Microsoft Corporation Query generation using environment configuration
US8141079B2 (en) * 2007-06-28 2012-03-20 Samsung Electronics Co., Ltd. Dynamic application scheduler in a polling system
US8126860B2 (en) * 2007-07-17 2012-02-28 Ricoh Company, Limited Method and apparatus for processing data
US9953282B2 (en) 2007-09-04 2018-04-24 International Business Machines Corporation System and method for providing automatic task assignment and notification
CA2715385A1 (en) * 2008-02-12 2009-08-20 Pacific Biosciences Of California, Inc. Compositions and methods for use in analytical reactions
US8989561B1 (en) 2008-05-29 2015-03-24 Rovi Guides, Inc. Systems and methods for alerting users of the postponed recording of programs
US10063934B2 (en) 2008-11-25 2018-08-28 Rovi Technologies Corporation Reducing unicast session duration with restart TV
JP4709268B2 (ja) * 2008-11-28 2011-06-22 日立オートモティブシステムズ株式会社 車両制御用マルチコアシステムまたは内燃機関の制御装置
US8266477B2 (en) * 2009-01-09 2012-09-11 Ca, Inc. System and method for modifying execution of scripts for a job scheduler using deontic logic
US9166714B2 (en) 2009-09-11 2015-10-20 Veveo, Inc. Method of and system for presenting enriched video viewing analytics
US20110252423A1 (en) 2010-04-07 2011-10-13 Apple Inc. Opportunistic Multitasking
WO2012094564A1 (en) 2011-01-06 2012-07-12 Veveo, Inc. Methods of and systems for content search based on environment sampling
US8805418B2 (en) 2011-12-23 2014-08-12 United Video Properties, Inc. Methods and systems for performing actions based on location-based rules
CN103293967A (zh) * 2012-02-29 2013-09-11 陕西省地方电力(集团)有限公司 一种用于智能抄表终端的多任务控制方法
CN102937915B (zh) * 2012-11-28 2016-02-24 中国人民解放军国防科学技术大学 用于多核处理器的硬件锁实现方法及装置
US9336068B2 (en) 2013-06-07 2016-05-10 Apple Inc. Throttling of application access to resources
JP6318751B2 (ja) * 2014-03-20 2018-05-09 富士通株式会社 情報処理装置、アクション切替方法、及びアクション切替プログラム
US10354609B2 (en) * 2016-03-02 2019-07-16 Samsung Electronics Co., Ltd. Functional mode aware resource management
US10051442B2 (en) * 2016-12-27 2018-08-14 Motorola Solutions, Inc. System and method for determining timing of response in a group communication using artificial intelligence
US11593668B2 (en) 2016-12-27 2023-02-28 Motorola Solutions, Inc. System and method for varying verbosity of response in a group communication using artificial intelligence
US11143516B2 (en) * 2019-12-30 2021-10-12 GM Cruise Holdings, LLC Task management system for high-definition maps
US11953921B2 (en) 2021-06-11 2024-04-09 Rockwell Collins, Inc. Vehicular system and method for pre-arming actions according to conditional timeline and associated trigger events
CN116974728B (zh) * 2023-09-20 2024-01-02 深圳市德兰明海新能源股份有限公司 单片机任务调度方法、单片机产品及存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3618045A (en) * 1969-05-05 1971-11-02 Honeywell Inf Systems Management control subsystem for multiprogrammed data processing system
US3643227A (en) * 1969-09-15 1972-02-15 Fairchild Camera Instr Co Job flow and multiprocessor operation control system
FR2253428A5 (ja) * 1973-11-30 1975-06-27 Honeywell Bull Soc Ind
US4001783A (en) * 1975-03-26 1977-01-04 Honeywell Information Systems, Inc. Priority interrupt mechanism
US4047161A (en) * 1976-04-30 1977-09-06 International Business Machines Corporation Task management apparatus
US4228495A (en) * 1978-12-19 1980-10-14 Allen-Bradley Company Multiprocessor numerical control system

Also Published As

Publication number Publication date
EP0332148A3 (en) 1990-08-08
CN1038712A (zh) 1990-01-10
US5012409A (en) 1991-04-30
EP0332148A2 (en) 1989-09-13

Similar Documents

Publication Publication Date Title
JPH01316831A (ja) タスクスケジューラー装置およびタスクをスケジューリングする方法
US9904576B2 (en) Method and apparatus implemented in processors for real-time scheduling and task organization based on response time order of magnitude
US4980824A (en) Event driven executive
US4414624A (en) Multiple-microcomputer processing
US6430593B1 (en) Method, device and article of manufacture for efficient task scheduling in a multi-tasking preemptive priority-based real-time operating system
US5390329A (en) Responding to service requests using minimal system-side context in a multiprocessor environment
US5949994A (en) Dedicated context-cycling computer with timed context
US7565659B2 (en) Light weight context switching
EP0637802A2 (en) Interrupt vector method and apparatus
JPS5833586B2 (ja) 情報処理システム
Lamie Real-time embedded multithreading: using ThreadX and ARM
Furht et al. Performance of REAL/IX TM-fully preemptive real time UNIX
Koroušić-Seljak Task scheduling policies for real-time systems
Wada et al. Fast interrupt handling scheme by using interrupt wake-up mechanism
Caprani et al. Implementation of real-time scheduling algorithms in a transputer environment
JPH03253965A (ja) コントローラによるマルチタスク処理方式
EP1008054A1 (en) Real time software system
WO1992003784A1 (en) Scheduling method for a multiprocessing operating system
JPH1074150A (ja) プロセススケジューリング方法ならびにそのためのプロセススケジューリング装置およびプログラム記憶媒体
Schrott A generalized task concept for multiprocessor real-time systems
Colnarič et al. A hardware supported operating system kernel for embedded hard real-time applications
Raxmonova et al. Analysis of scheduling algorithms in operating systems
JPS63163640A (ja) スケジユ−リング方式
Chattergy Microprogrammed implementation of a scheduler
WO1992003783A1 (en) Method of implementing kernel functions