【手続補正書】
【提出日】平成27年7月23日(2015.7.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
プログラム実行サービスのための１つまたは複数のコンピュータシステムにより、１つまたは複数の要求を前記プログラム実行サービスのクライアントから受け取るステップであって、前記受け取った１つまたは複数の要求は少なくとも１つのオペレーティングシステムの指定および前記オペレーティングシステムのインスタンスのいくつかが実行されるかまたはすべてが実行されるかの指定を含む、受け取るステップと、
指定された前記オペレーティングシステムの実行に使用するために、前記１つまたは複数のコンピュータシステムにより、前記プログラム実行サービスの複数のコンピューティングノードのサブセットを選択するステップと、
前記選択された複数のコンピューティングノードのサブセットに、前記指定されたオペレーティングシステムの１つまたは複数のインスタンスを前記選択された複数のコンピューティングノードのサブセットに関連付けられた１つまたは複数の仮想マシン内で、前記１つまたは複数のコンピュータシステムにより実行させるステップであって、前記実行は、受け取った前記オペレーティングシステムのインスタンスのいくつかが実行されるかまたはすべてが実行されるかの前記指定に少なくとも部分的に基づく、実行させるステップと、
を備えることを特徴とするコンピュータ実行方法。
【請求項２】
前記１つまたは複数のコンピュータシステムにより、インターフェースを提供するステップを含むことを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項３】
提供される前記インターフェースはグラフィカルユーザーインターフェースを含み、前記１つまたは複数の要求は前記グラフィカルユーザーインターフェースを介して受け取られることを特徴とする請求項２に記載のコンピュータ実行方法。
【請求項４】
提供される前記インターフェースはアプリケーションプログラミングインターフェース（ＡＰＩ）を含み、前記１つまたは複数の要求を受け取ることは、前記クライアントの遠隔コンピューティングシステムによる前記ＡＰＩの呼び出しに基づくことを特徴とする請求項２に記載のコンピュータ実行方法。
【請求項５】
受け取った前記指定は、指定された前記オペレーティングシステムの前記１つまたは複数のインスタンスを実行する１つまたは複数の仮想マシンの実行に使用する前記プログラム実行サービスのコンピューティングノードの個数を規定しており、選択された前記複数のコンピューティングノードのサブセットは規定された個数のコンピューティングノードを含むことを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項６】
受け取った前記指定は、実行する前記指定されたオペレーティングシステムのインスタンスの個数を規定しており、選択された前記複数のコンピューティングノードのサブセットに、指定された前記オペレーティングシステムの１つまたは複数のインスタンスを実行させるステップは、前記指定されたオペレーティングシステムの前記規定された個数のインスタンスを実行させるステップであって、前記規定された個数は仮想マシンと同じ個数以内であることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項７】
受け取った前記指定は、実行する前記指定されたオペレーティングシステムのインスタンスの最小個数または実行する前記指定されたオペレーティングシステムのインスタンスの最大個数を少なくとも規定しており、選択された前記複数のコンピューティングノードのサブセットに、前記指定されたオペレーティングシステムの１つまたは複数のインスタンスを実行させることは、前記規定された最小個数および／または最大個数のインスタンスにしたがって行われることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項８】
受け取った前記指定は、指定されたオペレーティングシステムの１つまたは複数のインスタンスの実行を開始する１つまたは複数の時刻を規定しており、選択された前記複数のコンピューティングノードのサブセットに、前記指定されたオペレーティングシステムの１つまたは複数のインスタンスを実行させることは、前記規定された１つまたは複数の時刻にしたがって行われることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項９】
受け取った前記指定は、指定されたオペレーティングシステムの１つまたは複数のインスタンスの実行を終了させる１つまたは複数の時刻を規定しており、
前記１つまたは複数のコンピュータシステムにより、前記１つまたは複数の仮想マシンの実行を、当該規定された１つまたは複数の時刻にしたがって管理するステップをさらに備えることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１０】
受け取った前記指定は、指定されたオペレーティングシステムを実行するために使用される１つまたは複数のコンピューティング関連リソースに関連した１つまたは複数の基準を規定していることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１１】
前記規定されるコンピューティング関連リソースの基準は、指定メモリ容量、プロセッサの指定使用量、ネットワークバンド幅の指定量、ディスクスペースの指定容量およびスワップスペースの指定容量の少なくとも１つに関連することを特徴とする請求項１０に記載のコンピュータ実行方法。
【請求項１２】
前記規定されるコンピューティング関連リソースの基準は、前記１つまたは複数の仮想マシンにより使用されるコンピューティング関連リソースの１つまたは複数の容量についての指示に関連していることを特徴とする請求項１０に記載のコンピュータ実行方法。
【請求項１３】
前記規定されるコンピューティング関連リソースの基準は、指定されたオペレーティングシステムの実行に使用される１つまたは複数のコンピューティング関連リソースの最小容量および指定されたオペレーティングシステムの実行に使用される１つまたは複数のコンピューティング関連リソースの最大容量の少なくとも１つを含むことを特徴とする請求項１０に記載のコンピュータ実行方法。
【請求項１４】
前記複数のコンピューティングノードのサブセットは、グループ化されることが可能であり、前記プログラム実行サービスの複数のコンピューティングノードの一部分であり、前記前記プログラム実行サービスの複数のコンピューティングノードは２つまたはそれ以上の地理的に別個の位置に位置しており、受け取った前記指定は、指定された前記オペレーティングシステムを実行するための１つまたは複数の地理的な位置についての指示を含み、前記複数のコンピューティングノードのサブセットを選択することは前記指示される１つまたは複数の地理的な位置に少なくとも部分的に基づくことを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１５】
前記１つまたは複数の要求はユーザアカウントを示し、前記ユーザアカウントが、指定されたオペレーティングシステムを実行することの権限を付与されていることを前記１つまたは複数のコンピュータシステムにより判定するステップをさらに備えることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１６】
前記１つまたは複数のコンピュータシステムにより、指定されたオペレーティングシステムの１つまたは複数のインスタンスの実行についての料金情報を生成するステップであって、前記料金情報は、選択された１つまたは複数のコンピューティングノードにより１つまたは複数の仮想マシンが実行される時間量に少なくとも部分的に基づいていることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１７】
前記複数のコンピューティングノードのサブセットは、指定された前記オペレーティングシステムのローカルコピーが前記複数のコンピューティングノードのサブセットの少なくとも１つに格納されているかどうかに少なくも部分的に基づいて、選択されることを特徴とする請求項１に記載のコンピュータ実行方法。
【請求項１８】
複数の格納コンテンツを有する非一時的コンピュータ読み取り可能記憶媒体であって、前記複数の格納コンテンツはコンピューティングシステムに、
プログラム実行サービスのインターフェースを介して、イメージの１つまたは複数のインスタンスを実行する要求を受け取ることであって、前記イメージはプログラムを含み、前記要求は前記イメージのインスタンスのいくつかが実行されるかまたはすべてが実行されるかの指定を含む、受け取ることと、
前記１つまたは複数のインスタンスをホストする前記プログラム実行サービスの複数のコンピューティングノードのサブセットを選択することであって、前記１つまたは複数のインスタンスは、前記イメージのインスタンスのいくつかが実行されるかまたはすべてが実行されるかの前記指定に基づいて、前記選択された複数のコンピューティングノードのサブセットに関連付けられた１つまたは複数の仮想マシンを使用して実行される、選択することと、
前記１つまたは複数の仮想マシンを実行するために選択された前記複数のコンピューティングノードのサブセットを管理することと
を実行させることを特徴とする非一時的コンピュータ読み取り可能記憶媒体。
【請求項１９】
前記インターフェースはグラフィカルユーザーインターフェースを含むことを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２０】
前記インターフェースはアプリケーションプログラミングインターフェース（ＡＰＩ）を含み、前記要求を受け取ることは遠隔コンピューティングシステムによる前記ＡＰＩの呼び出しに基づくことを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２１】
受け取った前記指定は、前記イメージを実行する前記プログラム実行サービスのコンピューティングノードの個数または実行する前記イメージのインスタンスの個数を規定していることを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２２】
受け取った前記指定は、実行するイメージのインスタンスの最小個数または実行するイメージのインスタンスの最大個数を規定していることを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２３】
受け取った前記指定は、前記イメージの１つまたは複数のインスタンスの実行を開始する１つまたは複数の時刻または前記イメージの１つまたは複数のインスタンスを終了させる１つまたは複数の時刻を規定していることを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２４】
受け取った前記指定は、前記イメージの１つまたは複数のインスタンスを実行するために使用されるコンピューティング関連リソースに関連する１つまたは複数の基準を規定しており、当該規定される基準は、指定メモリ容量、プロセッサの指定使用量、ネットワークバンド幅の指定量、ディスクスペースの指定容量またはスワップスペースの指定容量に関連することを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２５】
前記複数のコンピューティングノードは、グループ化されることが可能であり、選択された前記複数のコンピューティングノードのサブセットは、前記プログラム実行サービスの複数のコンピューティングノードの一部分であり、当該前記プログラム実行サービスの複数のコンピューティングノードは２つまたはそれ以上の地理的に別個の位置に位置しており、受け取った前記指定は、前記イメージの少なくともいくつかのインスタンスを実行する１つまたは複数の地理的な位置についての指示を含み、前記複数のコンピューティングノードのサブセットを選択することは当該指示される１つまたは複数の地理的な位置に少なくとも部分的に基づくことを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２６】
前記格納コンテンツはさらにコンピュータシステムに、
前記イメージの１つまたは複数のインスタンスを実行する料金を決定することであって、前記決定される料金は、１つまたは複数のインスタンスが実行される時間量に少なくとも部分的に基づく、決定することを実行させることを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２７】
前記選択された複数のコンピューティングノードのサブセットの少なくとも１つは、指定されたプログラム識別子に関連付けられた前記オペレーティングシステムのローカルコピーを格納していることを特徴とする請求項１８に記載の非一時的コンピュータ読み取り可能記憶媒体。
【請求項２８】
個々のコンピューティングシステムが１つまたは複数のプロセッサを有している１つまたは複数のコンピューティングシステムと、
命令を含む少なくとも１つのメモリであって、前記１つまたは複数のプロセッサの少なくとも１つによる実行時に前記命令がシステムに、
プログラム実行サービスによるプログラムの実行において使用するために提供されるインターフェースを介して、クライアントから要求を受け取ることであって、受け取った前記要求は少なくとも１つの指定のプログラムのインスタンスのいくつかを実行するかまたはすべてを実行するかの指定を含む、受け取ることと、
前記指定のプログラムの１つまたは複数のインスタンスの実行に使用するために前記プログラム実行サービスの複数のコンピューティングノードのサブセットを選択することであって、前記指定のプログラムのインスタンスのいくつかを実行するかまたはすべてを実行するかの前記指定に基づく、前記１つまたは複数のインスタンスは、前記選択された複数のコンピューティングノードのサブセットに関連付けられた１つまたは複数の仮想マシン上で実行される、選択することと、
前記指定のプログラムの１つまたは複数のインスタンスの実行を前記クライアントのために前記選択された複数のコンピューティングノードのサブセットにより管理することと
を実行させる、メモリと
を備えたことを特徴とするシステム。
【請求項２９】
前記インターフェースはアプリケーションプログラミングインターフェースを含み、前記要求を受け取ることは前記クライアントの遠隔コンピューティングシステムによる前記ＡＰＩの呼び出しに基づくことを特徴とする請求項２８に記載のシステム。
【請求項３０】
受け取った前記指定は、前記指定のプログラムの実行に使用する前記プログラム実行サービスのコンピューティングノードの個数および実行する前記指定のプログラムのインスタンスの個数の少なくとも１つを規定していることを特徴とする請求項２８に記載のシステム。
【請求項３１】
受け取った前記指定は、前記指定のプログラムの１つまたは複数のインスタンスの実行を開始する１つまたは複数の時刻または前記指定のプログラムの１つまたは複数のインスタンスの実行を終了させる１つまたは複数の時刻の少なくとも１つを規定していることを特徴とする請求項２８に記載のシステム。
【請求項３２】
受け取った前記指定は、前記指定のプログラムの実行に使用する１つまたは複数のコンピューティング関連リソースに関連する１つまたは複数の基準を規定しており、前記規定される基準は、指定メモリ容量、プロセッサの指定使用量、ネットワークバンド幅の指定量、ディスクスペースの指定容量およびスワップスペースの指定容量の少なくとも１つに関連することを特徴とする請求項２８に記載のシステム。
【請求項３３】
前記実行を管理することは、前記指定のプログラムの１つまたは複数のインスタンスを選択された前記複数のコンピューティングノードのサブセットにより第１の時点で開始することを含み、前記メモリは、実行時に前記システムに、
第２の時点で前記インターフェースを介して、前記指定のプログラムのインスタンスのいくつかを実行するかまたはすべてを実行するかの追加の指定を前記クライアントから受け取ることであって、前記第２の時点は前記第１の時点よりも遅く、前記追加の指定は１つまたは複数の個々の前記プログラムの実行に関連する１つまたは複数の修正を規定している、受け取ることと、
前記追加の指定の受け取りに応答して、前記指定のプログラムの１つまたは複数のインスタンスの少なくとも１つの実行を動的に修正することと
をさらに実行させる命令を含むことを特徴とする請求項２８に記載のシステム。
【請求項３４】
前記複数のコンピューティングノードのサブセットは、前記指定のプログラムのコピーが前記複数のコンピューティングノードのサブセットの少なくとも１つに格納されているかどうかに少なくとも部分的に基づいて選択されることを特徴とする請求項２８に記載のシステム。