JP4580845B2 - タスク実行装置 - Google Patents

タスク実行装置 Download PDF

Info

Publication number
JP4580845B2
JP4580845B2 JP2005243417A JP2005243417A JP4580845B2 JP 4580845 B2 JP4580845 B2 JP 4580845B2 JP 2005243417 A JP2005243417 A JP 2005243417A JP 2005243417 A JP2005243417 A JP 2005243417A JP 4580845 B2 JP4580845 B2 JP 4580845B2
Authority
JP
Japan
Prior art keywords
time
task
type
execution
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.)
Active
Application number
JP2005243417A
Other languages
English (en)
Other versions
JP2007058601A (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 JP2005243417A priority Critical patent/JP4580845B2/ja
Priority to US11/464,864 priority patent/US8370846B2/en
Priority to CNB2006101212968A priority patent/CN100543682C/zh
Publication of JP2007058601A publication Critical patent/JP2007058601A/ja
Application granted granted Critical
Publication of JP4580845B2 publication Critical patent/JP4580845B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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

Description

本発明は、CPU(Central Processing Unit)で実行されるタスクの実行時間を割り当てるタスク実行装置、すなわちOS(Operating System)に関する。
OSの主な機能は、ハードウェア管理、タスク管理、データ管理および入出力管理である。中でもタスク管理はタスクの実行順序を管理するものであり、CPU、メモリおよび入出力装置等を効率良く動作させるための重要な機能である。ここで、「タスク」とは、プログラムの起動、実行および終了などの一連の流れを一括管理する制御単位のことである。OSの管理下で動作するプログラムはタスクとして扱われ、プログラムの実行に関するOSの操作はすべてタスクを単位として行われる。
タスクの実行順序を決定するアルゴリズムの一つとして、時分割スケジューリング法が知られている。時分割スケジューリング法は、各タスクに、ある実行時間を割り当て、割り当てられた時間の間は、CPUの実行権があるタスクに与えられ、当該タスクに割り当てられた時間が過ぎると別のタスクに実行権を移すタスクのスケジューリング方法である。これにより、すべてのタスクに平等かつ決められた時間で実行権が割り当てられる。
割当時間の決め方は、タスクの特性を鑑みて固定で与える方法や、タスクの実行状況にあわせて動的に決定する方法があり、例えば、優先度に基づいて実行権の割当時間を調整する方法などが知られている(例えば、特許文献1参照)。
特開2005−18560号公報
しかしながら従来のOSは、タスクがイベントを待つ必要がある際にタスクを待ち状態に遷移させた場合には、次のタスクに実行権を移すか、または待ち状態に遷移させたタスクの割当時間が消費するまで何の処理も実行しない。また、タスクとして、処理性能の保証を必要とするものと、イベント駆動処理などのように非同期に処理が発生するものとが混在する実行環境では、全体処理の周期を保持しながら処理性能を分配しつつ、非同期処理を実行しなければならない。このため、割当時間を常に調整して実行することにより、オーバーヘッドが発生し、処理性能が低下するという問題がある。
本発明は、上述の課題を解決するためになされたもので、一定の処理性能を保証しつつ、かつタスクの実行時間の割当調整に係る負担を軽減することができるタスク実行装置および方法を提供することを目的とする。
上記目的を達成するために、本発明に係るタスク実行装置は、複数のタスクを切り換えながら時分割実行させるためのタスク実行装置であって、前記複数のタスクの各々には、割当時間が割り当てられており、前記複数のタスクは、複数の第1タイプのタスクと、単一の第2タイプのタスクとを含み、前記複数のタスクの割当時間の合計時間である周期時間を記憶する周期時間記憶手段と、前記複数のタスクのうち、予め定められた順序に従いタスクを選択するタスク選択手段と、選択されたタスクが第2タイプのタスクの場合には、前記周期時間内に前記複数のタスクの実行が完了するように、前記第2タイプのタスクについて割り当てられた割当時間を修正する修正手段と、選択されたタスクの実行が割り当てられたまたは修正された前記割当時間内に完了するように、当該タスクを実行させるタスク実行制御手段とを備える。
この構成によると、プロセッサで実行されるタスクを、第1タイプのタスクと第2タイプのタスクとに分割し、第2タイプのタスクのみについて、複数のタスクが周期時間内に実行されるように割当時間の修正を行なっている。このため、一定の処理性能を保証しつつ、かつタスクの実行時間の割当調整に係る負担を軽減することができるタスクスケジューリング装置を提供することができる。なお、第1タイプのタスクがすべて待ち状態に遷移した場合には、第2タイプのタスクの割当時間の修正を行なわずに済む。
好ましくは、前記第2タイプのタスクについて割り当てられた割当時間は、当該タスクの実行時において最低限実行しなければならない時間である第1割当時間と、当該第1割当時間に予め定められた余裕時間を加算した第2割当時間との2種類の時間からなり、前記修正手段は、前記複数の第1タイプのタスクの実行により消費された総消費時間を算出する総消費時間算出部と、前記余裕時間から、前記総消費時間と前記複数の第1タイプのタスクの総割当時間との差を減算し、減算の結果を前記第1割当時間に加算することにより、前記第2タイプに割り当てられた割当時間を修正する割当時間修正部とを有する。より具体的には、前記割当時間修正部は、前記総消費時間と前記総割当時間との差が、前記余裕時間よりも大きい場合には、前記複数のタスクを1回ずつ実行する区間を1周期とした場合に、前記周期時間を超えない範囲で、前記総消費時間と前記総割当時間との差から前記余裕時間を減じた時間を次の周期以降の前記第2タイプのタスクの第1割当時間に加算することにより、前記第2タイプに割り当てられた割当時間を修正する。
このような構成にする事により、第2タイプのタスクに対しては、確実に第1割当時間を確保してタスク実行することができる。
さらに好ましくは、上述のタスク実行装置は、さらに、前記第2タイプのタスクが待ち状態に遷移した場合に、当該タスクの割当時間の間、当該タスクが実行されるプロセッサへの電力の供給を低減させる電力供給低減手段を備える。また、上述のタスク実行装置は、さらに、前記複数のタスクのすべてが待ち状態に遷移した場合に、当該タスクが実行されるプロセッサへの電力の供給を停止させる電力供給停止手段を備える。
タスクの実行状況を検出し、プロセッサへの電力の供給状態を変化させることにより、タスクの実行に要する消費電力を低減することができる。
なお、本発明は、このような特徴的な手段を備えるタスク実行装置として実現することができるだけでなく、タスク実行装置に含まれる特徴的な手段をステップとするタスク実行方法として実現したり、タスク実行装置に含まれる特徴的な手段としてコンピュータを機能させるOSとして実現したりすることもできる。そして、そのようなOSは、CD−ROM(Compact Disc−Read Only Memory)等の記録媒体やインターネット等の通信ネットワークを介して流通させることができるのは言うまでもない。
本発明によると、一定の処理性能を保証しつつ、かつタスクの実行時間の割当調整に係る負担を軽減することができるタスク実行装置および方法を提供することができる。
〔全体構成〕
図1は本発明の実施の形態におけるタスク切換を行うプログラム実行装置の主要部の構成を示すブロック図である。同図は、プロセッサにおいてOSの一部の機能としてタスク切換を行うソフトウェアを実行することにより実現される機能を模式的に表している。プロセッサのハードウェア構成は、一般的なものでよい。
このプログラム実行装置は、各々が割当時間の指定を有する複数のタスクを1つのプロセッサ内で扱い、各タスクの必要性能を確保しながら実行するよう構成されている。
同図のようにプログラム実行装置は、タスクスケジューリング部10、プログラム記憶部20、タイマ制御部30および実行制御部40より構成される。
タスクスケジューリング部10は、割当時間の指定を有するタスクのそれぞれに1つのタイムスロットを割り当て、予め定められた周期内において各タスクを少なくとも1回選択する時分割スケジューリングを行う。ここで、「タイムスロット」とは、プロセッサにおけるプログラムを実行する時間をあらかじめ定められた周期T内において割当時間ごとに区切ったものである。
プログラム記憶部20は、タスクスケジューリング部10によるスケジューリング対象となるタスクの本体であるプログラムとプログラムに関する情報とを記憶する。
タイマ制御部30は、タスクスケジューリング部10から割当時間を設定される毎に、時間のカウントを開始し、当該割当時間に達したときにタイムアウト信号を出力する。このタイムアウト信号は、タイムスロットの切り換えタイミングを知らせるために、タスクスケジューリング部10に通知される。
実行制御部40は、タスクスケジューリング部10により選択されたタスクを実行する。実行制御部40は、タスクを実行するCPU等のハードウェアに相当する。
〔タスクスケジューリング部10の構成〕
タスクスケジューリング部10は、タスク受付部11、タイムスロット記憶部12、タスク記憶部13、タイムスロット切換部14およびタスク選択部15から構成される。
<1.タスク受付部11>
タスク受付部11は、ユーザ操作やユーザプログラム等からの指示に従ってタスクの追加要求を受け付け、プログラム記憶部20から当該タスクに関する情報として、「タスク情報」および「割当時間」を読み出す。また、タスク受付部11は、当該タスクがスケジューリングの対象となるように、タイム情報および割当時間よりタイムスロット情報100(110)およびタスク管理ブロック200(210)を生成し、タイムスロット記憶部12およびタスク記憶部13にそれぞれ設定する。
ここで、「タスク情報」は、「プログラム開始アドレス」と「スタックポインタ」とからなる。「プログラム開始アドレス」は、タスクが書き込まれた先頭のアドレスである。スタックポインタは、タスクの切換が生じた際にタスクの状態を一時的に退避する格納場所を示す位置情報である。
タスクは、タスクスケジューリング部10において、タイムスロットに1対1に対応して割り当てられ、当該タイムスロットの割当時間の間は確実に実行される。
タスクは、実行特性に合わせて2つの種別(種別Aおよび種別B)に分類される。
固定の処理性能を必要とするタスクを「種別A」とする。いわゆるタイムドリブン型と呼ばれるタスクを種別Aとすべきである。例えば、動画データのデコード/エンコード処理、音声データのデコード/エンコード処理など継続して一定の処理性能を必要とするタスクを種別Aとすることが望ましい。
一方、固定の処理性能を必要としないタスクを「種別B」とする。いわゆるイベントドリブン型と呼ばれるタスクを種別Bとすべきである。例えば、ユーザ操作をイベントとして文字や静止画からなるメニュー表示を行う処理など継続して一定の処理性能を必要としないが不定期に随時発生するタスクを種別Bとすることが望ましい。
「割当時間」は、タスクに対応するタイムスロットの割当時間を指定する値である。この割当時間は、プログラムによって指定されるものとする。
なお、一周期で実行されるタスクの割当時間の合計が周期Tとして周期レジスタ16に保持されている。
<2.タイムスロット記憶部12>
タイムスロット記憶部12は、タスクの切り換えの基準となるタイムスロットを生成するためのタイムスロット情報を記憶する。
図2は、タイムスロット記憶部12内のタイムスロット情報と、タスク記憶部13内のタスク管理ブロックとの具体例を示す図である。同図のように、タイムスロット記憶部12は、複数のタイムスロット情報100、110、…120、130を記憶する。タイムスロット情報100〜120は、種別Aのタスクが割り当てられたタイムスロットを示すものとする。また、残り1つのタイムスロット情報130は、種別Bのタスクが割り当てられたタイムスロットを示すものとする。
タイムスロット情報100は、1つのタイムスロットに対応し、割当時間100a、実行フラグ100bおよびポインタ100cからなる。他のタイムスロット情報も同様である。
割当時間100aは、タイムスロットに対応するタスクが実行することができる時間を示す。タスクが実際に実行された時間が割当時間に達すると次のタイムスロットに対応するタスクが実行される。種別Aのタスクに対応する割当時間100a〜120aは、タイムスロット情報100〜120の生成と同時にそれぞれタイマ制御部30に設定される。種別Bの複数タスクに対応する割当時間130aは、周期レジスタ16に保持された一周期の時間Tから、他のタイムスロットの割当時間100a〜120aの合計時間を引いた残り時間としている。この残り時間はタスクスケジューリングによって変化する値である。なお、割当時間130aの算出方法は、一例であり、その他の算出方法については後に詳述する。
「実行フラグ」は、当該タイムスロットが有効か無効かを示す。実行フラグは、タイムスロット情報の生成時には有効と設定され、タスク実行中にアクセス先の資源がロック状態にあって待ち状態になった時に無効と設定され、その後待ち状態から実行可能状態に戻った時に有効と設定される。実行フラグが無効を示す場合は、タイムスロット切換部14によってタイムスロット情報が存在しないものとみなされる。
「ポインタ」は、当該タイムスロットに対応するタスク管理ブロックを示している。これらのタイムスロット情報100、110、…、120、130は配列を構成し、その順序はタイムスロットの生成順を表すものとする。
<3.タスク記憶部13>
タスク記憶部13は、タイムスロットに割り当てられたタスクに対応するタスク管理ブロック200、210、…、220、230を記憶する。タスク管理ブロック200、210、…、220、230は、それぞれ1つのタスクに対応し、当該タスクを管理するための情報である。
タスク管理ブロック200は、タスク情報200aからなる。タスク情報200aは、プログラム開始アドレス(またはプログラムを再開すべきアドレス)およびスタックポインタを含む。タスク管理ブロック200の生成時には、タスク情報200aは、タスク受付部11によって入力されたタスク情報そのものである。タスク切換時には、タスク情報200aは、中断されたタスクの実行アドレスおよび当該時点でのスタックポインタの値を示す。
<4.タイムスロット切換部14>
タイムスロット切換部14は、現在のタイムスロットにおいてタスクの実行時間が割当時間に達したときに、タイムスロットの切換を行う。割当時間に達したかどうかはタイマ制御部30によるタイムアウト信号によって通知される。通知を受けたタイムスロット切換部14は、次のタイムスロット情報を選択する。
本実施の形態では、次に選択されるタイムスロット情報は、その配列順によるものとする。すなわち、タイムスロット情報100、110、…、120、130の順にタイムスロット情報が選択され、最後のタイムスロット情報130が選択された後は、最初のタイムスロット情報100が再度選択されるものとする。
タイムスロット切換部14は、選択したタイムスロット情報から割当時間を取得してタイマ制御部30に設定する。これにより次のタイムスロットの割当時間のカウントが開始される。
<5.タスク選択部15>
タスク選択部15は、タイムスロット切換部14によるタイムスロット切り換え時または実行中のプログラムからの指示があった時に、現在実行中のタスクの実行アドレスおよびスタックポインタ等を、当該タスクのタスク管理ブロックにタスク情報として退避し、次に実行すべきタスクのタスク管理ブロックからタスク情報を取り出して、実行制御部40へ出力する。これと同時に、タスク選択部15は、実行中のタスクのコンテキスト(レジスタデータ等)の退避と、次に実行すべきタスクのコンテキストの復帰も行なう。これにより次に実行すべきタスクが実行状態になる。
図3は、タイムスロット切換部14およびタスク選択部15によるタスク切換の様子を示す説明図である。
同図において、周期Tは周期レジスタ16に保持された周期を示す。t1〜tnはそれぞれ種別Aのn個のタスクに対応するn個のタイムスロット情報100、110、…、120に対応するタイムスロットであり、その長さ(t1〜tn)は、n個のタスクの割当時間をそれぞれ示す。また、t0は種別Bのタスクに対応するタイムスロット情報130に対応するタイムスロットであり、その長さ(t0)は、当該タスクの割当時間を示す。
Sは、タイムスロット切換部14およびタスク選択部15によってタスク切換を行うスケジューリング処理を示す。
同図のように、タイムスロットt1の開始時のスケジューリング処理Sでは、タイムスロット情報100に対応する種別AのタスクA1が選択され、実行される。タイムスロットt2〜tnについても同様に種別Aのタスクが実行される。また、最終タイムスロットt0におけるスケジューリング処理Sでは、種別BのタスクBが選択され、実行される。このように全てのタスクは1つの周期Tの間に必ず1回は実行される。また、種別BのタスクBは1つの周期Tの間に1回実行されるのみである。
〔処理の詳細〕
以下、本実施の形態におけるプログラム実行装置が実行するスケジューリング処理について説明する。
<1.スケジューリング処理>
スケジューリング処理について、図4のフローチャートに基づいて説明する。タイマ制御部30が設定された時間を経過すると、タイムスロット切換部14にタイムアウト信号が送信され、スケジューリング処理が開始される。まず、現在実行しているタスクの状態がタスク情報に退避される(S301)。次に、タイムスロット切換部14は、タイムスロットの選択処理を行う(S302)。すなわち、タイムスロット情報の配列の現在選択されている要素の次の要素が、次に選択されるタイムスロット情報とされる。次の要素がない場合は、タイムスロット情報配列の先頭の要素を選択する。すなわち、タイムスロット切換部14は、タイムスロットt1のタイムスロット情報100から順にタイムスロットt0のタイムスロット情報130まで選択を行ない、その後、再度タイムスロットt1のタイムスロット情報100から順に選択を行なう。
次に選択するタイムスロットがタイムスロットt0か否かにより、割当時間の扱いや、タイムスロット上のタスクが無効または待ち状態の場合の動作が異なる(S303)。
タイムスロットt0以外のタイムスロットが選択された場合(S303でNo)、タイムスロット切換部14は、選択したタイムスロットのタイムスロット情報に含まれる割当時間を取り出し、タイマ制御部30に出力する(S304)。この時点より割当時間だけ経過した後、タイマ制御部30より再びタイムアウト信号が送信される。
選択されたタイムスロットのタイムスロット情報が保持する実行フラグが無効であれば(S305でNo)、当該タイムスロットでは実行するタスクがないかタスクが待ち状態であることを示している。このため、タイムスロット切換部14は、次のタイムスロットに切り換えて同様の処理を有効なタイムスロットが見つかるまで行う。
有効なタイムスロットがあれば(S305でYes)、タスク選択部15は、当該タイムスロットに対応する中断していたタスクの状態を復帰させ、実行制御部40がタスクの実行を再開する(S306)。
タイムスロット切換部14がタイムスロットt0を選択する場合(S303でYes)、タイムスロット切換部14は、まずタイムスロットt0の割当時間を算出する(S307)。当該処理は多岐に渡るため、その詳細については後述する。タイムスロット切換部14は、当該処理で算出された割当時間をタイマ制御部30に出力する(S308)。
前記タイムスロットが保持する実行フラグが有効であれば(S309でYes)、上記タイムスロットt0以外の場合と同様に、タスク選択部15は、タイムスロットt0に対応する中断タスクの状態を復帰させ、実行制御部40が当該タスクの実行を再開する(S306)。
前記タイムスロットが保持する実行フラグが無効ならば(S309でNo)、タイムスロット切換部14は、タイムスロットt0以外のタイムスロットの実行フラグが全て無効かどうかを調べる(S310)。全ての実行フラグが無効であれば(S310でYes)、全てのタイムスロット上のタスクの有効な実行処理がない状態なので、タスク選択部15は、CPUを停止状態に移行させる。停止状態から復帰するには割込みなどの外部信号を用いて行う。
有効なタイムスロットが1つでもあれば、CPUは動作させておくが、タイムスロットt0の割当時間の間はCPUを動作させておく必要がないため、当該時間の間CPUを低電力状態に移行させる。
<2.タイムスロットt0割当時間算出処理>
次に、タイムスロットt0の割当時間を算出する処理(図4のS307)について、図5および図6のフローチャートに基づいて説明する。当該処理は3つのバリエーションがあり、それぞれについて説明する。
(a)待ち状態のタイムスロットの割当時間をタイムスロットt0に割り当てる場合
図5に示されるように、タイムスロットt1〜tnのタイムスロットについて、過去1周分のタスクの実行で消費した総時間(総消費時間)と実行フラグが無効であるタイムスロットの総割当時間(非実行時間)とを計算する(S401〜S404)。
総消費時間がタイムスロットt1〜tnの総割当時間より大きい場合は、割込みなどの外的要因の影響と考えられる。このため、実行フラグが無効のタイムスロットの総割当時間、すなわち非実行時間から、(総消費時間−総割当時間)を減算する(S405)。すなわち、外的要因によりオーバーした時間である(総消費時間−総割当時間)を、タイムスロットに割り当てられているもののタスクが実行されていない時間(非実行時間)から減算する。
この値にタイムスロットt0の割当時間を加えたものがタイムスロットt0の算出後の割当時間となる(S406)。
なお、前記総消費時間が前記総割当時間より小さい場合であっても、同じ式を使用することにより、タイムスロットt0の割当時間を算出することができる。
(b)マージン時間を設定し、割当時間から伸びた分をマージン時間から減じる場合
図6に示されるように、タスク受付部11よりマージン値17が予め設定されるものとし、当該値をタスク受付部11より取得する(S411)。マージン値17とは、タイムスロットのt0の割当時間に割り当てられるマージン時間(余裕時間)Mのことである。すなわち、タイムスロットt0の割当時間には、t0と(t0+M)の2段階あるものとする。
まず、タイムスロットt1〜tnについて、過去1周分の実行で消費した時間の合計(総消費時間)を計算する(S412,S413)。
次に、総消費時間が総割当時間より多い場合は、マージン時間Mから(総消費時間−総割当時間)を減算する(S414)。ここで、総割当時間とは、タイムスロットt1〜tnの総割当時間を指す。
減算後の値にタイムスロットt0の割当時間を加えたものがタイムスロットt0の算出後の割当時間となる(S415)。
なお、マージンM<(総消費時間−総割当時間)の場合、すなわち、S414で求められた値が負の場合には、マージン時間Mを0にするとともに、((総消費時間−総割当時間)−マージンM)を、次の周期のタイムスロットt0で実行するように時間調整する。これにより、この周期Tでは、タイムスロットt0の割当時間t0は確保して実行することができる。
(c)マージン値の代わりにタスク受付部11より周期15を取得し、周期T(割当時間の合計)から総消費時間を減算した値をタイムスロットt0の算出後の割当時間としてもよい。
以上説明したように、本実施の形態におけるプログラム実行装置によれば、特定のタイムスロットの割当時間のみを算出、設定することにより、他のタイムスロットの割当時間を再計算することなく、性能を確保することができる。その結果、状況が変化した場合の割当時間の再設定に要するオーバーヘッドを削減することが可能となる。
また、タイムスロットの実行状況を検出しCPU状態を変更することにより、実行にかかる消費電力の削減に寄与することができる。
なお、上記実施の形態では、種別Aのタスクのタイムスロットについては、タスク情報ごとに1つの割当時間が固定値として指定されている場合について説明したが、すべてのタイムスロットについて割当時間の最大値および最小値を示す2つの固定値を保有し、全てのタイムスロットについての割当時間の最大値の合計を周期とし、実行状況に応じて各タイムスロットがどちらかの割当時間を選択しながら動作する構成としてもよい。
また、全てのタイムスロットが最小値を選択していることを検出した場合には、短時間で処理が終了してしまう。このため、設定された周期T内に1周期分の処理が終了する範囲内で、CPUの動作周波数を下げてタスクを実行させるようにしてもよい。その結果、タスクの実行に要する消費電力の削減にさらに寄与することができる。なお、割当時間の最大値を使用するか、最小値を使用するかは、これらのタスクを実行するプログラムにより決定される。
本発明にかかるプログラム実行装置は、処理性能を保証する固定の時間割当を行いつつ、処理性能によらない時間割当で全体の割当時間を調整する機能を有する。このことから、処理性能を保証する処理に対して割当時間の調整に掛かる負担を軽減することができ、例えば映像再生処理において、外部からのアクセスによって映像出力にかかるノイズや乱れの影響を受けることなく、処理を遂行することができる。特に、音声映像処理と非同期の制御処理をリアルタイムに行う機器や、当該機器の開発環境等として適用可能である。
本発明の実施の形態におけるタイムスロット切換を行うプログラム実行装置の主要部の構成を示すブロック図である。 タイムスロット記憶部内のタイムスロット情報と、タスク記憶部内のタスク管理ブロックとの具体例を示す図である。 タイムスロット切換部およびタスク選択部によるタスク切換の様子を説明するための図である。 タスクスケジューリング部によるスケジューリング処理のフローチャートである。 タスクスケジューリング部によるイベントドリブン型のタスクのタイムスロットへの割当時間を算出する処理のフローチャートである。 タスクスケジューリング部によるイベントドリブン型のタスクのタイムスロットへの割当時間を算出する処理のフローチャートである。
符号の説明
10 タスクスケジューリング部
11 タスク受付部
12 タイムスロット記憶部
13 タスク記憶部
14 タイムスロット切換部
15 タスク選択部
20 プログラム記憶部
30 タイマ制御部
40 実行制御部
100、110、120、130 タイムスロット情報
100a、110a、120a、130a 割当時間
100b、110b、120b、130b 実行フラグ
100c、110c、120c、130c ポインタ
200、210、220、230 タスク管理ブロック
200a、210a、220a、230a タスク情報

Claims (11)

  1. 複数のタスクを切り換えながら時分割実行させるためのタスク実行装置であって、
    前記複数のタスクの各々には、割当時間が割り当てられており、
    前記複数のタスクは、複数の第1タイプのタスクと、単一の第2タイプのタスクとを含み、
    前記複数のタスクの割当時間の合計時間である周期時間を記憶する周期時間記憶手段と、
    前記複数のタスクのうち、予め定められた順序に従いタスクを選択するタスク選択手段と、
    選択されたタスクが第2タイプのタスクの場合には、前記割当時間内に前記複数の第1タイプのタスクの実行が過去に完了しなかったときに、前記単一の第2タイプのタスクについて割り当てられた割当時間の一部第1タイプのタスクが前記割当時間を超えた時間として割当てるように、前記第2タイプのタスクについて割り当てられた割当時間を修正する修正手段と、
    選択されたタスクの実行が割り当てられたまたは修正された前記割当時間内に完了するように、当該タスクを実行させるタスク実行制御手段とを備える
    ことを特徴とするタスク実行装置。
  2. 前記修正手段は、前記複数の第1タイプのタスクのうち、実行状態にはなかったタスクの総割当時間である非実行時間を、前記第2タイプのタスクについて割り当てられた割当時間に加算することにより、当該割当時間を修正する
    ことを特徴とする請求項1に記載のタスク実行装置。
  3. 前記修正手段は、
    前記複数の第1タイプのタスクの実行により消費された総消費時間を算出する総消費時間算出部と、
    前記複数の第1タイプのタスクのうち、実行状態にはなかったタスクの総割当時間である非実行時間を算出する非実行時間算出部と、
    前記非実行時間から、前記総消費時間と前記複数の第1タイプのタスクの総割当時間との差を減算し、減算の結果を前記第2タイプのタスクの割当時間に加算することにより、前記第2タイプに割り当てられた割当時間を修正する割当時間修正部とを有する
    ことを特徴とする請求項2に記載のタスク実行装置。
  4. 前記修正手段は、前記周期時間と前記複数の第1タイプのタスクの実行により消費された総消費時間との差を前記第2タイプのタスクについて割り当てられた割当時間とする
    ことを特徴とする請求項1に記載のタスク実行装置。
  5. 前記第2タイプのタスクについて割り当てられた割当時間は、当該タスクの実行時において最低限実行しなければならない時間である第1割当時間と、当該第1割当時間に予め定められた余裕時間を加算した第2割当時間との2種類の時間からなり、
    前記修正手段は、
    前記複数の第1タイプのタスクの実行により消費された総消費時間を算出する総消費時間算出部と、
    前記余裕時間から、前記総消費時間と前記複数の第1タイプのタスクの総割当時間との差を減算し、減算の結果を前記第1割当時間に加算することにより、前記第2タイプに割り当てられた割当時間を修正する割当時間修正部とを有する
    ことを特徴とする請求項1に記載のタスク実行装置。
  6. 前記割当時間修正部は、前記総消費時間と前記総割当時間との差が、前記余裕時間よりも大きい場合には、前記複数のタスクを1回ずつ実行する区間を1周期とした場合に、前記周期時間を超えない範囲で、前記総消費時間と前記総割当時間との差から前記余裕時間を減じた時間を次の周期以降の前記第2タイプのタスクの第1割当時間に加算することにより、前記第2タイプに割り当てられた割当時間を修正する
    ことを特徴とする請求項5に記載のタスク実行装置。
  7. さらに、前記単一の第2タイプのタスクが待ち状態に遷移した場合に、当該第2タイプのタスクの割当時間の間、当該第2タイプのタスクが実行されるプロセッサへの電力の供給を低減させる電力供給低減手段を備える
    ことを特徴とする請求項1〜6のいずれか1項に記載のタスク実行装置。
  8. さらに、前記複数のタスクのすべてが待ち状態に遷移した場合に、当該タスクが実行されるプロセッサへの電力の供給を停止させる電力供給停止手段を備える
    ことを特徴とする請求項1〜7のいずれか1項に記載のタスク実行装置。
  9. 前記複数のタスクの各々に割り当てられた割当時間には最大値および最小値が設けられており、
    前記周期時間記憶手段には、前記複数のタスクの割当時間の最大値の合計時間である周期時間が記憶されており、
    前記タスク実行制御手段は、前記複数の第1タイプのタスクの各々が、当該タスクに割り当てられた割当時間の最大値または最小値内に実行が完了するように制御する
    ことを特徴とする請求項1に記載のタスク実行装置。
  10. 前記タスク実行制御手段は、前記複数の第1タイプのタスクのすべてについて当該タスクの割当時間の最小値内に実行が完了するようにスケジューリングを行なう際には、当該タスクが実行されるプロセッサの動作周波数を下げる
    ことを特徴とする請求項9に記載のタスク実行装置。
  11. 複数のタスクを切り換えながら時分割実行させるためのオペレーティングシステムであって、
    前記複数のタスクの各々には、割当時間が割り当てられており、
    前記複数のタスクは、複数の第1タイプのタスクと、単一の第2タイプのタスクとを含み、
    前記複数のタスクのうち、予め定められた順序に従いタスクを選択するステップと、
    選択されたタスクが第2タイプのタスクの場合には、前記割当時間内に前記複数の第1タイプのタスクの実行が過去に完了しなかったときに、前記単一の第2タイプのタスクについて割り当てられた割当時間の一部第1タイプのタスクが前記割当時間を超えた時間として割当てるように、前記第2タイプのタスクについて割り当てられた割当時間を修正するステップと、
    選択されたタスクの実行が割り当てられたまたは修正された前記割当時間内に完了するように、当該タスクを実行させるステップとをコンピュータに実行させる
    ことを特徴とするオペレーティングシステム。
JP2005243417A 2005-08-24 2005-08-24 タスク実行装置 Active JP4580845B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005243417A JP4580845B2 (ja) 2005-08-24 2005-08-24 タスク実行装置
US11/464,864 US8370846B2 (en) 2005-08-24 2006-08-16 Task execution device and method
CNB2006101212968A CN100543682C (zh) 2005-08-24 2006-08-24 任务执行装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005243417A JP4580845B2 (ja) 2005-08-24 2005-08-24 タスク実行装置

Publications (2)

Publication Number Publication Date
JP2007058601A JP2007058601A (ja) 2007-03-08
JP4580845B2 true JP4580845B2 (ja) 2010-11-17

Family

ID=37778511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005243417A Active JP4580845B2 (ja) 2005-08-24 2005-08-24 タスク実行装置

Country Status (3)

Country Link
US (1) US8370846B2 (ja)
JP (1) JP4580845B2 (ja)
CN (1) CN100543682C (ja)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8141089B2 (en) * 2007-01-11 2012-03-20 International Business Machines Corporation Method and apparatus for reducing contention for computer system resources using soft locks
US8171488B1 (en) * 2007-02-16 2012-05-01 Vmware, Inc. Alternating scheduling and descheduling of coscheduled contexts
US8127301B1 (en) 2007-02-16 2012-02-28 Vmware, Inc. Scheduling selected contexts in response to detecting skew between coscheduled contexts
US8296767B1 (en) 2007-02-16 2012-10-23 Vmware, Inc. Defining and measuring skew between coscheduled contexts
US8176493B1 (en) 2007-02-16 2012-05-08 Vmware, Inc. Detecting and responding to skew between coscheduled contexts
JP2009059310A (ja) * 2007-09-03 2009-03-19 Panasonic Corp プログラム制御装置
DE102009025572A1 (de) * 2009-06-19 2010-12-23 Wolfgang Pree Gmbh Eine Methode zur Entwicklung von garantiert korrekten Echtzeitsystemen
US20110185365A1 (en) * 2010-01-28 2011-07-28 International Business Machines Corporation Data processing system, method for processing data and computer program product
JP5590114B2 (ja) * 2010-03-11 2014-09-17 富士通株式会社 ソフトウェア制御装置、ソフトウェア制御方法、およびソフトウェア制御プログラム
JP5376042B2 (ja) * 2010-03-18 2013-12-25 富士通株式会社 マルチコアプロセッサシステム、スレッド切り替え制御方法、およびスレッド切り替え制御プログラム
US8752058B1 (en) 2010-05-11 2014-06-10 Vmware, Inc. Implicit co-scheduling of CPUs
WO2012001835A1 (ja) * 2010-07-02 2012-01-05 パナソニック株式会社 マルチプロセッサシステム
US20130310976A1 (en) * 2011-01-31 2013-11-21 Toyota Jidosha Kabushiki Kaisha Safety control device and safety control method
CN102880500B (zh) * 2011-07-13 2016-06-15 阿里巴巴集团控股有限公司 一种任务树的优化方法和装置
CN102371955B (zh) * 2011-10-27 2014-05-28 苏州海格新能源汽车电控系统科技有限公司 用于整车控制器的分时任务的实现方法
US9430286B2 (en) * 2011-12-12 2016-08-30 International Business Machines Corporation Authorizing distributed task processing in a distributed storage network
WO2013140517A1 (ja) * 2012-03-19 2013-09-26 富士通株式会社 検出装置、通知方法、および通知プログラム
JP2014006788A (ja) * 2012-06-26 2014-01-16 Azbil Corp 情報処理装置およびプログラム実行方法
CN102883218B (zh) * 2012-09-21 2015-04-01 北京君正集成电路股份有限公司 一种解码多个视频文件的方法及设备
JP6180866B2 (ja) * 2013-09-24 2017-08-16 株式会社東芝 スケジューリング装置、システム、装置、方法およびプログラム
GB2519080B (en) * 2013-10-08 2021-04-14 Arm Ip Ltd Scheduling function calls
US9413707B2 (en) 2014-04-11 2016-08-09 ACR Development, Inc. Automated user task management
US8942727B1 (en) 2014-04-11 2015-01-27 ACR Development, Inc. User Location Tracking
US9678773B1 (en) 2014-09-30 2017-06-13 Amazon Technologies, Inc. Low latency computational capacity provisioning
US9600312B2 (en) 2014-09-30 2017-03-21 Amazon Technologies, Inc. Threading as a service
US9146764B1 (en) 2014-09-30 2015-09-29 Amazon Technologies, Inc. Processing event messages for user requests to execute program code
US9830193B1 (en) 2014-09-30 2017-11-28 Amazon Technologies, Inc. Automatic management of low latency computational capacity
WO2016079786A1 (ja) * 2014-11-17 2016-05-26 株式会社日立製作所 計算機システム及びデータ処理方法
US9413626B2 (en) 2014-12-05 2016-08-09 Amazon Technologies, Inc. Automatic management of resource sizing
US9733967B2 (en) 2015-02-04 2017-08-15 Amazon Technologies, Inc. Security protocols for low latency execution of program code
US9588790B1 (en) 2015-02-04 2017-03-07 Amazon Technologies, Inc. Stateful virtual compute system
US9762585B2 (en) 2015-03-19 2017-09-12 Microsoft Technology Licensing, Llc Tenant lockbox
US10931682B2 (en) 2015-06-30 2021-02-23 Microsoft Technology Licensing, Llc Privileged identity management
CN105320570B (zh) * 2015-11-09 2019-01-29 深圳市万普拉斯科技有限公司 资源管理方法和系统
US9910713B2 (en) 2015-12-21 2018-03-06 Amazon Technologies, Inc. Code execution request routing
US11132213B1 (en) 2016-03-30 2021-09-28 Amazon Technologies, Inc. Dependency-based process of pre-existing data sets at an on demand code execution environment
CN107291767B (zh) * 2016-04-11 2020-07-17 西门子工厂自动化工程有限公司 任务执行时间的优化处理方法和装置
US10102040B2 (en) 2016-06-29 2018-10-16 Amazon Technologies, Inc Adjusting variable limit on concurrent code executions
US10725826B1 (en) * 2017-06-21 2020-07-28 Amazon Technologies, Inc. Serializing duration-limited task executions in an on demand code execution system
CN107818407A (zh) * 2017-10-20 2018-03-20 平安科技(深圳)有限公司 任务分配方法、装置、存储介质和计算机设备
US10853115B2 (en) 2018-06-25 2020-12-01 Amazon Technologies, Inc. Execution of auxiliary functions in an on-demand network code execution system
US11146569B1 (en) 2018-06-28 2021-10-12 Amazon Technologies, Inc. Escalation-resistant secure network services using request-scoped authentication information
US10949237B2 (en) 2018-06-29 2021-03-16 Amazon Technologies, Inc. Operating system customization in an on-demand network code execution system
US11099870B1 (en) 2018-07-25 2021-08-24 Amazon Technologies, Inc. Reducing execution times in an on-demand network code execution system using saved machine states
US11243953B2 (en) 2018-09-27 2022-02-08 Amazon Technologies, Inc. Mapreduce implementation in an on-demand network code execution system and stream data processing system
US11099917B2 (en) 2018-09-27 2021-08-24 Amazon Technologies, Inc. Efficient state maintenance for execution environments in an on-demand code execution system
US11943093B1 (en) 2018-11-20 2024-03-26 Amazon Technologies, Inc. Network connection recovery after virtual machine transition in an on-demand network code execution system
CN109815372A (zh) * 2019-01-24 2019-05-28 杭州嘉楠耘智信息科技有限公司 Scrypt算法工作量证明方法及装置
US11010188B1 (en) 2019-02-05 2021-05-18 Amazon Technologies, Inc. Simulated data object storage using on-demand computation of data objects
US11861386B1 (en) 2019-03-22 2024-01-02 Amazon Technologies, Inc. Application gateways in an on-demand network code execution system
US11119809B1 (en) 2019-06-20 2021-09-14 Amazon Technologies, Inc. Virtualization-based transaction handling in an on-demand network code execution system
US11159528B2 (en) 2019-06-28 2021-10-26 Amazon Technologies, Inc. Authentication to network-services using hosted authentication information
US11190609B2 (en) 2019-06-28 2021-11-30 Amazon Technologies, Inc. Connection pooling for scalable network services
US11115404B2 (en) 2019-06-28 2021-09-07 Amazon Technologies, Inc. Facilitating service connections in serverless code executions
CN111314776B (zh) * 2019-11-27 2022-01-21 重庆紫光华山智安科技有限公司 一种针对存储录像不连续的分片加速方法
US11119826B2 (en) 2019-11-27 2021-09-14 Amazon Technologies, Inc. Serverless call distribution to implement spillover while avoiding cold starts
US11714682B1 (en) 2020-03-03 2023-08-01 Amazon Technologies, Inc. Reclaiming computing resources in an on-demand code execution system
US11188391B1 (en) 2020-03-11 2021-11-30 Amazon Technologies, Inc. Allocating resources to on-demand code executions under scarcity conditions
US11593270B1 (en) 2020-11-25 2023-02-28 Amazon Technologies, Inc. Fast distributed caching using erasure coded object parts
US11550713B1 (en) 2020-11-25 2023-01-10 Amazon Technologies, Inc. Garbage collection in distributed systems using life cycled storage roots
US11388210B1 (en) 2021-06-30 2022-07-12 Amazon Technologies, Inc. Streaming analytics using a serverless compute system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295694A (ja) * 1994-04-25 1995-11-10 Matsushita Electric Ind Co Ltd 演算処理装置の省電力方法
JPH08305416A (ja) * 1995-05-10 1996-11-22 Mitsubishi Electric Corp 遠隔操作命令の実行完了時間保証方法
JP2000056989A (ja) * 1998-08-03 2000-02-25 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク設計方法
JP2000122883A (ja) * 1998-10-19 2000-04-28 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク管理方法
JP2003298599A (ja) * 2002-03-29 2003-10-17 Denso Corp 分散制御方法及び装置
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法
JP2004280297A (ja) * 2003-03-13 2004-10-07 Matsushita Electric Ind Co Ltd タスク切換装置、方法及びプログラム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3681799D1 (de) * 1985-01-22 1991-11-14 Applied Materials Inc Halbleiter-bearbeitungseinrichtung.
JPS61291032A (ja) * 1985-06-17 1986-12-20 Fujitsu Ltd 真空装置
NL8900544A (nl) * 1989-03-06 1990-10-01 Asm Europ Behandelingsstelsel, behandelingsvat en werkwijze voor het behandelen van een substraat.
ES2130295T3 (es) * 1989-10-20 1999-07-01 Applied Materials Inc Aparato de tipo robot.
JPH05218176A (ja) * 1992-02-07 1993-08-27 Tokyo Electron Tohoku Kk 熱処理方法及び被処理体の移載方法
US5628013A (en) * 1992-09-30 1997-05-06 Apple Computer, Inc. Apparatus and method for allocating processing time in a frame-based computer system
KR100221983B1 (ko) * 1993-04-13 1999-09-15 히가시 데쓰로 처리장치
JP3037182B2 (ja) * 1997-02-17 2000-04-24 日本電気株式会社 タスク管理方式
US6719516B2 (en) * 1998-09-28 2004-04-13 Applied Materials, Inc. Single wafer load lock with internal wafer transport
US6834386B1 (en) * 1999-07-16 2004-12-21 Microsoft Corporation Method and system for regulating background tasks using performance measurements
US7012684B1 (en) * 1999-09-07 2006-03-14 Applied Materials, Inc. Method and apparatus to provide for automated process verification and hierarchical substrate examination
US7925869B2 (en) 1999-12-22 2011-04-12 Ubicom, Inc. Instruction-level multithreading according to a predetermined fixed schedule in an embedded processor using zero-time context switching
US7308686B1 (en) 1999-12-22 2007-12-11 Ubicom Inc. Software input/output using hard real time threads
US7120783B2 (en) 1999-12-22 2006-10-10 Ubicom, Inc. System and method for reading and writing a thread state in a multithreaded central processing unit
US7047396B1 (en) 2000-06-22 2006-05-16 Ubicom, Inc. Fixed length memory to memory arithmetic and architecture for a communications embedded processor system
US7010612B1 (en) 2000-06-22 2006-03-07 Ubicom, Inc. Universal serializer/deserializer
US6684342B1 (en) 2000-06-22 2004-01-27 Ubicom, Inc. Apparatus and method of dynamic and deterministic changes in clock frequency for lower power consumption while maintaining fast interrupt handling
FR2818769B1 (fr) * 2000-12-21 2004-06-18 Eads Airbus Sa Procede et systeme d'exploitation temps reel multitaches
WO2002069174A1 (fr) * 2001-02-28 2002-09-06 Fujitsu Limited Procede d'execution en parallele de processus et ordinateur a processeurs multiples
US20030037091A1 (en) * 2001-08-09 2003-02-20 Kozo Nishimura Task scheduling device
JP2003077974A (ja) * 2001-08-31 2003-03-14 Hitachi Kokusai Electric Inc 基板処理装置および半導体装置の製造方法
JP3922576B2 (ja) 2003-06-27 2007-05-30 株式会社日立製作所 命令プロセッサ割り当てスケジューリング方法、該命令プロセッサ割り当てスケジューリング方法を実現する計算機システムおよびそのためのプログラム
US8060884B2 (en) * 2007-07-10 2011-11-15 Sharp Laboratories Of America, Inc. Deterministic task scheduling in a computing device

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07295694A (ja) * 1994-04-25 1995-11-10 Matsushita Electric Ind Co Ltd 演算処理装置の省電力方法
JPH08305416A (ja) * 1995-05-10 1996-11-22 Mitsubishi Electric Corp 遠隔操作命令の実行完了時間保証方法
JP2000056989A (ja) * 1998-08-03 2000-02-25 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク設計方法
JP2000122883A (ja) * 1998-10-19 2000-04-28 Chokosoku Network Computer Gijutsu Kenkyusho:Kk タスク管理方法
JP2003298599A (ja) * 2002-03-29 2003-10-17 Denso Corp 分散制御方法及び装置
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法
JP2004280297A (ja) * 2003-03-13 2004-10-07 Matsushita Electric Ind Co Ltd タスク切換装置、方法及びプログラム

Also Published As

Publication number Publication date
CN100543682C (zh) 2009-09-23
CN1920781A (zh) 2007-02-28
US8370846B2 (en) 2013-02-05
JP2007058601A (ja) 2007-03-08
US20070050779A1 (en) 2007-03-01

Similar Documents

Publication Publication Date Title
JP4580845B2 (ja) タスク実行装置
US6820155B1 (en) Interruption managing device and interruption managing method
US8949641B2 (en) Information processing apparatus and method for controlling information processing apparatus restoration order of images that reduces the waiting time when restoration from a hibernation state
US7376853B2 (en) Network apparatus, method for controlling the same, and program for the same
TWI307477B (ja)
JP2008506187A (ja) 複数のカーネルの並列実行のための方法およびシステム
JP5243711B2 (ja) プロセッサ
JP4345630B2 (ja) 情報処理装置、割り込み処理制御方法、並びにコンピュータ・プログラム
JP3952992B2 (ja) 情報処理装置、プロセス制御方法、並びにコンピュータ・プログラム
JP2005202767A (ja) プロセッサシステム、dma制御回路、dma制御方法、dmaコントローラの制御方法、画像処理方法および画像処理回路
JP2005056067A (ja) Dma転送制御装置
JP4523910B2 (ja) 並列処理装置及び並列処理方法及び並列処理プログラム
JP2008108075A (ja) タスク切替え制御方法及びコンピュータシステム
JP4659008B2 (ja) ホスト負荷調整機能付周辺回路
JP4675891B2 (ja) タスクスケジューリング装置、タスクスケジューリング方法、タスクスケジューリングプログラム、記録媒体、及び伝送媒体
WO2016033755A1 (zh) 任务处理装置、电子设备及方法
JP2006146758A (ja) コンピュータシステム
WO2002071218A2 (en) Method of and system for withdrawing budget from a blocking task
JP2001117786A (ja) プロセススケジューリング装置およびプロセススケジューリング方法
JP2012116138A (ja) 制御装置、制御プログラム、画像形成装置
KR101085393B1 (ko) 복수의 프로세스를 멀티태스킹하기 위한 명령 실행 방법 및장치
JP4798445B2 (ja) 省電力制御方法、画像形成装置およびプログラム
JP2006302168A (ja) コプロセッサ、および、その演算制御方法
JP2009157731A (ja) 仮想計算機システムおよび仮想計算機システムの制御方法
JP2004118300A (ja) Dmaコントローラ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080528

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100518

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100817

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100830

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

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4580845

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250