JP2009541852A - コンピュータマイクロジョブ - Google Patents
コンピュータマイクロジョブ Download PDFInfo
- Publication number
- JP2009541852A JP2009541852A JP2009516504A JP2009516504A JP2009541852A JP 2009541852 A JP2009541852 A JP 2009541852A JP 2009516504 A JP2009516504 A JP 2009516504A JP 2009516504 A JP2009516504 A JP 2009516504A JP 2009541852 A JP2009541852 A JP 2009541852A
- Authority
- JP
- Japan
- Prior art keywords
- microjob
- job
- time
- microjobs
- computer
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims description 61
- 230000004044 response Effects 0.000 claims description 4
- 230000008569 process Effects 0.000 description 20
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 241000700605 Viruses Species 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 239000000969 carrier Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/505—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5017—Task decomposition
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)
- Multi Processors (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
この発明は、コンピュータ環境でソフトウェアアプリケーションを実行することに関する。特に、この発明の実施例は、アプリケーションのコンピュータまたは入出力ジョブをマイクロジョブに分割すること、およびそのマイクロジョブを実行することに関する。
多くのマルチタスクオペレーティングシステムにおいて、プロセスはいくつかのスレッドに細かくされる。スレッドは、オペレーティングシステム(O/S)によって実行される1つのコードである。マルチスレッディングの概念は、1つのプロセス内のいくつかのコード(またはスレッド)を「同時に」動作可能にすることである。たとえば、ワードプロセッサが動作している場合、ユーザは「メニュー項目を探す」をクリックしてポップアップボックスを表示することができる。このポップアップは、メインのワードプロセッサウインドウから独立して移動および操作され得る。したがって、ポップアップのためにメインのワードプロセッサウインドウが非アクティブになることはない。これが、ワードプロセッサプロセス内で動作する2つの異なるスレッドの例である。
ロセスが消費しているプロセッサ時間が多過ぎるために、ユーザがデータを入力するように現れることができない。
以下の説明では、説明のために、多数の特定的な詳細が記載されてこの発明の完全な理解を与える。しかし、この発明はこれらの特定的な詳細がなくても実施され得ることが明らかになるであろう。他の場合では、この発明を不要に不明瞭にするのを避けるため、周知の構造および装置がブロック図形態で示される。
大多数のコンピュータは、常に自身のリソース容量のすべてを利用しているとは限らない。これは典型的に、1日24時間、週7日よく使用されているように見えるコンピュータ、および毎日わずかな間しか立ち上げられないコンピュータについても当てはまる。したがって、コンピュータ時間およびリソースが無駄である。たとえば、24時間にわたって、かなり多用され、かつ活動時に短時間のスパイクを有し得るコンピュータシステムは、平均して約5から20パーセントのリソースしか使用していない可能性がある。
ータジョブは継続的にコンピュータ上で動作し得るが、あまりに微小であるため、ユーザまたは他のコンピュータジョブには感知不可能であり得る。したがって、ジョブは、ユーザならびに他のジョブおよびアプリケーションにとって完全に透明であり得る。ユーザはジョブをスケジュールする必要はなく、この方法を用いれば、ジョブは性能臨界時間中を含むいつでも動作可能である。
1つの実施例では、マイクロジョブのサイズは、特定のマイクロジョブが処理ジョブを実行するために使用されるリソースを所有する割当時間内にその特定のマイクロジョブが完了可能なサイズである。1つの実施例では、各マイクロジョブは、自身の割当時間内に完了するようなサイズである。しかし、マイクロジョブの中には、大きすぎて自身の割当時間内に実行を完了不可能なものもあり得る。
。したがって、この発明の1つの実施例に従って、マイクロジョブの実行は、コンピュータシステム内の他のアプリケーションの性能に重大な影響を与えないように十分少量のリソースを消費する。
I) アプリケーションが自身のコンピュータジョブをマイクロジョブに分割する
1つの実施例では、アプリケーションプログラムが自身のコンピュータジョブを複数のマイクロジョブに分割する。本明細書中で用いられているように、複数という用語は、1よりも大きいいずれかの数を意味する。図1は、この発明の実施例に従った、マイクロジョブを実行するためのアーキテクチャ100の図である。各MJS対応のアプリケーション115(1)〜115(n)が、自身のコンピュータジョブをマイクロジョブ125に分割して実行する。たとえば、アプリケーションプログラマがアプリケーションコード内の適切な場所で、マイクロジョブ125を実行するMJS110の許可を要求する呼出しを行うことができ、これが事実上コンピュータジョブをマイクロジョブ125に分割する。例として、コンピュータジョブは、バックアップ、索引付け、ソフトウェア更新、ウイルスおよび有害ソフトスキャン、ならびにフラグメンテーション解消などのメンテナンスを行い得る。しかし、MJS対応のアプリケーション115(1)〜115(n)はメンテナンス以外のソフトウェアであってもよい。
ケジュールする。時間間隔に基づいたスケジューリングが以下に説明される。
1つの実施例では、MJS110がコンピュータジョブをマイクロジョブ125に分割する。図2を参照して、MJS110は、コンピュータジョブ205をマイクロジョブ125に分割するマイクロジョブ分割ロジック210を有する。MJS110はまた、マイクロジョブ125を実行するためにスケジュールするマイクロジョブスケジューリングロジック220も有する。たとえば、MJS110は、MJS対応でないアプリケーションプログラムに巻付けられたシェルとして作動し得る。したがって、この例では、シェルMJS110は、それを通じて如何なる実行形式のファイルも動作させることが可能な完全なソフトウェアアプリケーションである。したがって、1つの実施例では、シェルMJS110は、コンピュータジョブを実行形式のファイルからマイクロジョブ125に自動的に分割する。換言すれば、この実施例では、アプリケーションプログラマはアプリケーションをマイクロジョブ125に分割する必要がない。
ョブ125に分割し得る。
1つの実施例では、マイクロジョブ125は時間間隔に基づいて実行される。たとえば、MJS110は時間間隔に基づいてマイクロジョブ125をスケジュールする。たとえば、MJS110はマイクロジョブ125の実行をある時間にわたって分散させる。たとえば、コンピュータジョブは、マイクロジョブ125に分割されていない場合、完了するのに12分かかり得る。しかし、マイクロジョブ125に分割された場合、コンピュータジョブ全体の実行を24時間にわたって分散させることができ、各特定のマイクロジョブ125は2,3秒に1度実行される。
1つの実施例では、マイクロジョブ125は、事象に基づいて実行がスケジュールされる。たとえば、MJS110は、発生するある数の演算に基づいてマイクロジョブ125をスケジュールする。別の例として、MJS110は、発生するある数の量子に基づいてマイクロジョブ125をスケジュールする。異なる量子は異なるサイズであり得る。したがって、1つの実施例では、MJS110は事象に基づいてマイクロジョブ125の実行を分散させる。
1つの実施例では、マイクロジョブ125はリソース利用に基づいてスケジュールされる。たとえば、1つの実施例では、MJS110はリソースに基づいたスケジューラである。たとえば、MJS110は、マイクロジョブ125が遊休リソースしか利用しないようにマイクロジョブ125をスケジュールする。MJS110は、リソース利用が1つ以上の遊休基準に準拠しているかどうかを判断してスケジューリング決定を下す。例として、MJS110はディスク使用率を分析し得る。マイクロジョブ125を有するアプリケーション以外のアプリケーションがそのディスクを使用している場合、MJS110は、この他のアプリケーションが終わるのを待ってからマイクロジョブ125をスケジュールする。MJS110はディスクI/O利用を監視し続け、ディスクI/Oへのアクセスを求めている他のアプリケーションがなければ、別のマイクロジョブ125をスケジュールできるようにする。しかし、別のアプリケーションがディスクI/Oの利用を求めている場合は、MJS110は別のマイクロジョブ125をスケジュールできないようにして、この他のアプリケーションがディスクI/Oを利用することができる。
は実行がスケジュールされない。
図3は、この発明の実施例に従った、コンピュータジョブをマイクロジョブ125に分割することによってコンピュータジョブを実行するためのプロセス300のステップを図示するフローチャートである。ステップ302において、コンピュータジョブが開始される。コンピュータジョブは、MJS対応のアプリケーション115からのものであり得る。しかし、コンピュータジョブは、MJS対応のアプリケーション115に関連付けられなくてもよい。
アプリケーション115は、動作すべきコンピュータジョブを有するまで遊休状態にあり続ける。この遊休状態では、MJS対応のアプリケーション115は、時折の監視などのいくつかの機能を果たし得る。ある点で、MJS対応のアプリケーション115は、記憶媒体のデフラグ、またはウイルススキャンなどの行うべきコンピュータジョブを有する。コンピュータジョブは、単一のディスクまたはそれに記憶されるファイルをデフラグすることであり得、MJS対応のアプリケーション115は継続的にそのディスクをデフラグする。
複数のCPUがある場合、異なるマイクロジョブ125が異なるCPUで同時に実行され得る。
この発明の実施例は、MJS対応のアプリケーション115がMJS110とインターフェイス接続できるようにするためのAPIである。例示的なAPIは、CPU、ディスク、およびネットワークについて以下のリソース閾値パラメータを有する。
・保留ディスクI/Oカウント閾値
・ネットワーク利用閾値
各マイクロジョブ125について上記のパラメータが指定され得る。換言すれば、異なるマイクロジョブ125には異なるリソース閾値パラメータが割振られ得る。たとえば、ネットワークを使用するマイクロジョブ125については、ネットワーク閾値が使用され得る。しかし、ネットワークを使用しないマイクロジョブ125については、ネットワー
ク閾値はゼロであり得る。したがって、この発明の実施例に従って、細分化されたリソース管理が提供される。
・ネットワーク利用ウィンドウ
CPU利用ウィンドウパラメータは、それにわたるCPU利用が計算されるタイムウィンドウを規定する。たとえば、最新のnミリ秒にわたるCPU利用が平均化される。ネットワーク利用ウィンドウは、それにわたるネットワーク利用が計算されるタイムウィンドウを規定する。これらのパラメータはMJS110に内在し得る。しかし、MJS対応のアプリケーション115はこれらのパラメータをオーバーライドし得る。保留ディスクI/Oはどの時点においても絶対であり、したがって計算する必要はない。
MJS110は、すべてのマイクロジョブ125が実行された後のシステム遊休時間であると規定される「遊休時間」を追跡する。上述のように、MJS対応のアプリケーション115(s)は、MJS110を用いてマイクロジョブ125を待ち行列に入れることができる。MJS待ち行列にマイクロジョブ125がない場合、MJS110は指定された必須の遊休時間だけ待ってから起きて、MJS対応のアプリケーション115(s)が付加的な作業を行なうことを認可する。たとえば、MJS対応のデフラグ用プログラムは、まずある数のマイクロジョブ125を実行してディスクドライブをデフラグし、その後MJS110によって休止され得る。指定された必須の遊休時間の後、MJS110は、MJS対応のデフラグ用プログラムを呼出して付加的な作業を認可する。たとえば、MJS対応のデフラグ用プログラムは、メモリの解放などのクリーンアップジョブを実行し得る。必須の遊休時間は、MJS対応のアプリケーション115によって調整され得るデフォルトパラメータであり得る。
・最大待ち時間
リソース利用が現在高すぎてマイクロジョブを実行できないとMJS110が判断した場合、MJS110は、指定された待ち時間だけ待ってから、リソース利用を再確認する。待ち時間パラメータは、MJS110がリソース利用が高すぎると判断するたびに増加され得る。たとえば、MJS110は、最大待ち時間に達するまで待ち時間パラメータを
増加させることができる。これらのパラメータは、MJS対応のアプリケーション115が最初に始動されるときにアプリケーション115によって指定され得る。MJS対応のアプリケーション115は、実行時間中にこれらのパラメータを調整することができる。
図4は、本発明の実施例が実現され得るコンピュータシステム400を図示するブロック図である。プロセス300のステップは、システム400の1つ以上のコンピュータ読取可能媒体の命令として記憶され、コンピュータシステム400のプロセッサ上で実行される。コンピュータシステム400は、情報を通信するためのバス402または他の通信メカニズムと、バス402に結合される、情報を処理するためのプロセッサ404とを含む。コンピュータシステム400はまた、バス402に結合される、プロセッサ404によって実行されるべき情報および命令を記憶するための、ランダムアクセスメモリ(RAM)または他の動的記憶装置などのメインメモリ406も含む。メインメモリ406はまた、プロセッサ404によって実行されるべき命令の実行中に、一時変数または他の中間情報を記憶するために用いられ得る。コンピュータシステム400はさらに、バス402に結合される、プロセッサ404のための静的情報および命令を記憶するための読出専用メモリ(ROM)408または他の静的記憶装置を含む。情報および命令を記憶するための、磁気ディスクまたは光学ディスクなどの記憶装置410が設けられ、バス402に結合される。コンピュータシステム400は、プロセッサ400をいくつでも有してよい。たとえば、1つの実施例では、コンピュータシステム400はマルチプロセッサシステムである。プロセッサ404は、コアをいくつでも有してよい。1つの実施例では、プロセッサ404はマルチコアプロセッサ404である。コンピュータシステム400は、ハイパースレッドマシン内で用いられ得る。
発性媒体は、たとえば、記憶装置410などの光学または磁気ディスクを含む。揮発性媒体は、メインメモリ406などの動的メモリを含む。送信媒体は、バス402を備える配線を含む、同軸ケーブル、銅線および光ファイバを含む。送信媒体はまた、電波および赤外線データ通信中に発生されるような音波または光波の形態も取り得る。すべてのそのような媒体は、媒体によって搬送される命令が、機械に命令を読込む物理メカニズムによって検出され得るように具体的である必要がある。
じてアプリケーションプログラムについての要求コードを送信し得る。
Claims (29)
- 機械によって実現される方法であって、
コンピュータジョブを複数のマイクロジョブに分割するステップを備え、前記コンピュータジョブを分割するステップは、前記コンピュータジョブにリソースの所有権が与えられる割当時間に基づいて前記マイクロジョブのサイズを選択するステップを含み、前記方法はさらに
前記複数のマイクロジョブを前記リソースを用いて実行させることによって、前記コンピュータジョブを実行するステップを備える、方法。 - 前記マイクロジョブの前記サイズを選択するステップは、各マイクロジョブが、前記コンピュータジョブに当該マイクロジョブを実行するために使用されるリソースの所有権が与えられる割当時間内に実行を完了できるように、前記マイクロジョブの前記サイズを選択するステップを含む、請求項1に記載の方法。
- 前記コンピュータジョブは、個々の前記マイクロジョブの各々の実行を、前記割当時間より短い時間で、または前記割当時間と等しい時間で完了することによって完了する、請求項2に記載の方法。
- 前記コンピュータジョブを実行するステップは、
特定のマイクロジョブを動作させるのに必要な1つ以上のリソースが、1つ以上の遊休基準にいつ準拠するかを判断するステップと、
前記特定のマイクロジョブを動作させるのに必要な前記1つ以上のリソースの利用が1つ以上の遊休基準に準拠しているという判断に応答して、前記特定のマイクロジョブを前記割当時間内に実行させて完了するステップとを含む、請求項1に記載の方法。 - 前記コンピュータジョブを実行するステップは、連続するマイクロジョブの実行の間の待ち時間の長さを判断するステップを含む、請求項1記載の方法。
- 前記時間の長さを判断するステップは、前記コンピュータジョブが分割されて生じるマイクロジョブの数、および前記コンピュータジョブが分散されることになる期間に基づく、請求項5に記載の方法。
- 前記コンピュータジョブを実行するステップは、連続するマイクロジョブの実行の間の時間間隔だけ待つステップを含む、請求項1に記載の方法。
- 前記コンピュータジョブを実行するステップは、連続するマイクロジョブの実行の間に、ある数の演算だけ待つステップを含む、請求項1に記載の方法。
- 前記コンピュータジョブを実行するステップは、連続するマイクロジョブの実行の間に、ある数の量子だけ待つステップを含む、請求項1に記載の方法。
- 量子の少なくとも2つは、互いに異なるサイズである、請求項1に記載の方法。
- 前記マイクロジョブの少なくとも1つは、スレッドの一部を含む、請求項1に記載の方法。
- 前記割当時間は量子である、請求項1に記載の方法。
- 機械によって実現される方法であって、
コードの一部にリソースの所有権が与えられる時間量を割当てるオペレーティングシステムの制御下で実行されることになるコンピュータジョブからマイクロジョブを分けるステップを備え、前記マイクロジョブのサイズは、前記マイクロジョブが割当時間内に実行を完了することが予想されるように選択され、前記方法はさらに
前記マイクロジョブを前記割当時間内に実行させて完了するステップを備え、前記マイクロジョブは、前記割当時間の終了までに前記リソースの所有権を放棄する、方法。 - 前記コンピュータジョブから複数のマイクロジョブを分けるステップをさらに備え、前記マイクロジョブの各々の前記サイズは、各マイクロジョブが前記割当時間内に実行を完了することが予想されるように選択され、さらに
各マイクロジョブを、それぞれの前記マイクロジョブの前記割当時間内に実行させて完了するステップを備え、各マイクロジョブは、それぞれの前記マイクロジョブの前記割当時間の終了までに前記リソースの所有権を放棄する、請求項13に記載の方法。 - 各マイクロジョブを実行させるステップは、前記コンピュータジョブを完了する、請求項13に記載の方法。
- 前記マイクロジョブを実行させて完了するステップは、
前記マイクロジョブを動作させるのに必要な1つ以上のリソースが、1つ以上の遊休基準にいつ準拠するかを判断するステップと、
前記マイクロジョブを動作させるのに必要な前記1つ以上のリソースの利用が1つ以上の遊休基準に準拠しているという判断に応答して、前記マイクロジョブを前記割当時間内に実行させて完了するステップとを含む、請求項13に記載の方法。 - マイクロジョブを分ける前記ステップは、
前記リソースを用いて前記割当時間内に実行可能な前記コンピュータジョブの演算の数を判断するステップと、
前記コンピュータジョブから、前記数よりも少ないまたは前記数と等しい数の演算に分けて、前記マイクロジョブを形成するステップとを含む、請求項13に記載の方法。 - 前記マイクロジョブはスレッドの一部を備える、請求項13に記載の方法。
- 前記割当時間は量子である、請求項13に記載の方法。
- 機械によって実現される方法であって、
コードの一部にリソースの所有権が与えられる時間量を割当てるオペレーティングシステムの制御下で実行されることになるコンピュータジョブを複数のマイクロジョブに分割するステップを備え、前記コンピュータジョブを分割するステップは、前記コンピュータジョブにリソースの所有権が与えられる時間量に基づいて前記マイクロジョブのサイズを選択するステップを含み、前記方法はさらに
前記コンピュータジョブの実行をある期間にわたって分散させるステップを備える、方法。 - 前記コンピュータジョブの実行を分散させる前記ステップは、前記コンピュータジョブの2つの連続するマイクロジョブの実行の間の待ち時間の長さを判断するステップを含む、請求項20に記載の方法。
- 時間の長さを判断するステップは、前記コンピュータジョブが分割されて生じるマイクロジョブの数、および前記コンピュータジョブが分散されることになる期間に基づく、請求項21に記載の方法。
- 前記コンピュータジョブの実行をある期間にわたって分散させる前記ステップは、
特定のマイクロジョブを動作させるのに必要な1つ以上のリソースが、1つ以上の遊休基準にいつ準拠するかを判断するステップと、
前記特定のマイクロジョブを動作させるのに必要な前記1つ以上のリソースの利用が1つ以上の遊休基準に準拠しているという判断に応答して、前記特定のマイクロジョブを前記割当時間内に実行させて完了するステップとを含む、請求項20に記載の方法。 - 前記コンピュータジョブの実行を分散させる前記ステップは、前記コンピュータジョブの2つの連続するマイクロジョブの実行の間の、ある長さだけ待つステップを含む、請求項21に記載の方法。
- 前記コンピュータジョブの実行を分散させる前記ステップは、前記コンピュータジョブの2つの連続するマイクロジョブの実行の間に、ある数の演算だけ待つステップを含む、請求項21に記載の方法。
- 前記コンピュータジョブの実行を分散させる前記ステップは、前記コンピュータジョブの2つの連続するマイクロジョブの実行の間に、ある数の量子だけ待つステップを含む、請求項21に記載の方法。
- 量子の少なくとも2つは、互いに異なるサイズである、請求項21に記載の方法。
- 前記マイクロジョブの少なくとも1つは、スレッドの一部を備える、請求項21に記載の方法。
- 割当時間は量子である、請求項21に記載の方法。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/471,466 | 2006-06-19 | ||
US11/471,466 US8239869B2 (en) | 2006-06-19 | 2006-06-19 | Method, system and apparatus for scheduling computer micro-jobs to execute at non-disruptive times and modifying a minimum wait time between the utilization windows for monitoring the resources |
US11/546,072 | 2006-10-10 | ||
US11/546,072 US8056083B2 (en) | 2006-10-10 | 2006-10-10 | Dividing a computer job into micro-jobs for execution |
PCT/US2007/013452 WO2007149228A1 (en) | 2006-06-19 | 2007-06-06 | Computer micro-jobs |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009541852A true JP2009541852A (ja) | 2009-11-26 |
JP2009541852A5 JP2009541852A5 (ja) | 2010-07-08 |
JP5299869B2 JP5299869B2 (ja) | 2013-09-25 |
Family
ID=38610635
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009516504A Expired - Fee Related JP5299869B2 (ja) | 2006-06-19 | 2007-06-06 | コンピュータマイクロジョブ |
Country Status (8)
Country | Link |
---|---|
EP (2) | EP2038747A1 (ja) |
JP (1) | JP5299869B2 (ja) |
KR (1) | KR101377195B1 (ja) |
AU (1) | AU2007261611A1 (ja) |
CA (1) | CA2654423A1 (ja) |
RU (1) | RU2450330C2 (ja) |
TW (1) | TW200813819A (ja) |
WO (1) | WO2007149228A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012003341A (ja) * | 2010-06-14 | 2012-01-05 | Toshiba Tec Corp | 情報処理システム、クライアント端末装置、サーバ装置、クライアント端末プログラムおよびサーバプログラム |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI486048B (zh) * | 2008-09-12 | 2015-05-21 | Chi Mei Comm Systems Inc | 手機圖片轉換系統及方法 |
FR3004825B1 (fr) * | 2013-04-19 | 2015-04-24 | Krono Safe | Procede d'allocation temporelle de taches permettant une recuperation d'erreur deterministe en temps reel |
RU2538920C2 (ru) * | 2013-05-06 | 2015-01-10 | Общество с ограниченной ответственностью "Аби ИнфоПоиск" | Способ распределения задач сервером вычислительной системы, машиночитаемый носитель информации и система для реализации способа |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0385642A (ja) * | 1989-08-30 | 1991-04-10 | Toshiba Corp | Cpu負荷制御装置 |
JP2001242730A (ja) * | 2000-02-29 | 2001-09-07 | Canon Inc | 画像形成装置 |
JP2004272366A (ja) * | 2003-03-05 | 2004-09-30 | Sumitomo Rubber Ind Ltd | 業務監視方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19500957A1 (de) * | 1994-07-19 | 1996-01-25 | Bosch Gmbh Robert | Verfahren zur Steuerung von technischen Vorgängen oder Prozessen |
US7234139B1 (en) * | 2000-11-24 | 2007-06-19 | Catharon Productions, Inc. | Computer multi-tasking via virtual threading using an interpreter |
-
2007
- 2007-06-06 CA CA002654423A patent/CA2654423A1/en not_active Abandoned
- 2007-06-06 WO PCT/US2007/013452 patent/WO2007149228A1/en active Application Filing
- 2007-06-06 JP JP2009516504A patent/JP5299869B2/ja not_active Expired - Fee Related
- 2007-06-06 EP EP07777432A patent/EP2038747A1/en not_active Withdrawn
- 2007-06-06 RU RU2008149048/08A patent/RU2450330C2/ru not_active IP Right Cessation
- 2007-06-06 EP EP11187051A patent/EP2413240A1/en not_active Withdrawn
- 2007-06-06 KR KR1020097000685A patent/KR101377195B1/ko not_active IP Right Cessation
- 2007-06-06 AU AU2007261611A patent/AU2007261611A1/en not_active Abandoned
- 2007-06-20 TW TW096122166A patent/TW200813819A/zh unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0385642A (ja) * | 1989-08-30 | 1991-04-10 | Toshiba Corp | Cpu負荷制御装置 |
JP2001242730A (ja) * | 2000-02-29 | 2001-09-07 | Canon Inc | 画像形成装置 |
JP2004272366A (ja) * | 2003-03-05 | 2004-09-30 | Sumitomo Rubber Ind Ltd | 業務監視方法 |
Non-Patent Citations (1)
Title |
---|
JPN6012033790; Tiago Ferreto et al: 'Scheduling Divisible Workloads Using the Adaptive Time Factoring Algorithm' Lecture Notes in Computer Science Vol. 3719, 2005, pages232-239, Springer-Verlag * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012003341A (ja) * | 2010-06-14 | 2012-01-05 | Toshiba Tec Corp | 情報処理システム、クライアント端末装置、サーバ装置、クライアント端末プログラムおよびサーバプログラム |
Also Published As
Publication number | Publication date |
---|---|
AU2007261611A2 (en) | 2009-07-02 |
KR20090024255A (ko) | 2009-03-06 |
AU2007261611A1 (en) | 2007-12-27 |
KR101377195B1 (ko) | 2014-03-25 |
EP2038747A1 (en) | 2009-03-25 |
CA2654423A1 (en) | 2007-12-27 |
RU2008149048A (ru) | 2010-07-27 |
WO2007149228A1 (en) | 2007-12-27 |
TW200813819A (en) | 2008-03-16 |
RU2450330C2 (ru) | 2012-05-10 |
JP5299869B2 (ja) | 2013-09-25 |
EP2413240A1 (en) | 2012-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9727372B2 (en) | Scheduling computer jobs for execution | |
US8056083B2 (en) | Dividing a computer job into micro-jobs for execution | |
US9507631B2 (en) | Migrating a running, preempted workload in a grid computing system | |
US9588809B2 (en) | Resource-based scheduler | |
US20060037021A1 (en) | System, apparatus and method of adaptively queueing processes for execution scheduling | |
JP2013218744A (ja) | リソースに基づいたスケジューラ | |
JP5299869B2 (ja) | コンピュータマイクロジョブ | |
JP2000020323A (ja) | スケジュ―リング装置及び方法並びに記録媒体 | |
US20230035129A1 (en) | Method for allocating processor resource, computing unit and video surveillance arrangement |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100520 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100520 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100716 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100817 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120619 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120703 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121002 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130115 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130306 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20130417 |
|
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: 20130521 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130610 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5299869 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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 |