JP2004530196A - 区分処理環境におけるリソース平衡化 - Google Patents
区分処理環境におけるリソース平衡化 Download PDFInfo
- Publication number
- JP2004530196A JP2004530196A JP2002571989A JP2002571989A JP2004530196A JP 2004530196 A JP2004530196 A JP 2004530196A JP 2002571989 A JP2002571989 A JP 2002571989A JP 2002571989 A JP2002571989 A JP 2002571989A JP 2004530196 A JP2004530196 A JP 2004530196A
- Authority
- JP
- Japan
- Prior art keywords
- partition
- memory
- manager
- throughput
- partitions
- 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
- 238000012545 processing Methods 0.000 title abstract description 28
- 238000005192 partition Methods 0.000 claims abstract description 211
- 230000015654 memory Effects 0.000 claims description 173
- 238000000034 method Methods 0.000 claims description 84
- 238000004891 communication Methods 0.000 claims description 33
- 230000000694 effects Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 abstract description 13
- 230000008569 process Effects 0.000 description 46
- 230000006870 function Effects 0.000 description 20
- 238000003860 storage Methods 0.000 description 16
- 239000004744 fabric Substances 0.000 description 14
- 238000012546 transfer Methods 0.000 description 14
- 238000000638 solvent extraction Methods 0.000 description 12
- 230000008901 benefit Effects 0.000 description 8
- 238000007726 management method Methods 0.000 description 8
- 238000013507 mapping Methods 0.000 description 7
- 230000007246 mechanism Effects 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 230000008878 coupling Effects 0.000 description 6
- 238000010168 coupling process Methods 0.000 description 6
- 238000005859 coupling reaction Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- PWPJGUXAGUPAHP-UHFFFAOYSA-N lufenuron Chemical compound C1=C(Cl)C(OC(F)(F)C(C(F)(F)F)F)=CC(Cl)=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F PWPJGUXAGUPAHP-UHFFFAOYSA-N 0.000 description 5
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000012552 review Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 238000004513 sizing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 102000004137 Lysophosphatidic Acid Receptors Human genes 0.000 description 1
- 108090000642 Lysophosphatidic Acid Receptors Proteins 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002860 competitive effect Effects 0.000 description 1
- 238000013329 compounding Methods 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000010219 correlation analysis Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000009474 immediate action Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 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
-
- 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/5061—Partitioning or combining of resources
- G06F9/5077—Logical partitioning of resources; Management or configuration of virtualized resources
-
- 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/5083—Techniques for rebalancing the load in a distributed system
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】スループット情報を使用して、区分されたリソースについてのリソース平衡化指示を作成する。処理システムは、少なくとも第1のパーティションおよび第2のパーティションを含む。第2のパーティションからスループットに関する情報を受け取り、リソース平衡化指示を決定するパーティション・リソース・マネジャが提供される。コミュニケータは、パーティション・マネジャから第2のパーティションのカーネルにリソース平衡化指示を通信し、カーネルは、パーティション・マネジャから受け取ったリソース平衡化指示に従って第2のパーティションにリソースを割り振る。
【選択図】図1
Description
【0001】
(関連出願の相互参照)
本出願は、以下の同時係属米国特許出願に関連する。
Baskey他による米国特許出願番号09/801407「INTER-PARTITIONMESSAGE PASSING METHOD, SYSTEM AND PROGRAM PRODUCT FOR THROUGHPUT MEASUREMENTIN A PARTITIONED PROCESSING ENVIRONMENT」(整理番号POU92000−0200US1)、
Baskey他による米国特許出願番号09/802185「INTER-PARTITIONMESSAGE PASSING METHOD, SYSTEM AND PROGRAM PRODUCT FOR A SHARED I/O DRIVER」(整理番号POU92000−0202US1)、および
Baskey他による米国特許出願番号09/801492「INTER-PARTITIONMESSAGE PASSING METHOD, SYSTEM AND PROGRAM PRODUCT FOR A SECURITY SERVER IN APARTITIONED PROCESSING ENVIRONMENT」(整理番号POU92001−0012US1)。
【0002】
本発明は、一般には、パーティションに区分されたデータ処理システムに関し、詳細には、システムのパーティション内で複数のオペレーティング・システム・イメージを実行することが可能なユニプロセッサ・システムおよびマルチプロセッサ・システムに関する。
【背景技術】
【0003】
今日の中企業、大企業の大半は、かつては集中化された「温室」であったデータ・センターの到達範囲を自組織の範囲一杯まで、そして実際には範囲を越えて拡張するために各自のITインフラストラクチャを発展させている。このような発展の推進力の元となるのは、部分的には、従来は本質的に異なっていた部門別の業務を相互に結びつけ、納入業者や顧客とリアルタイムで意思の疎通を図りたいという要望であり、そして、電子商取引を行う媒体としてのインターネットの急速な成長と、それに伴い、そのような接続性を得るための相互接続とビジネス間のソリューションを次第に多く利用できるようになったことによりさらに加速されている。
【0004】
この近年の発展に伴うのは、今日の企業が、多くの異なる作動プラットフォームを動的にリンクして相互に接続されたシームレスなシステムを作り出す必要性である。諸企業には、集中化していない仕入れ業務、適用分野に応じた要件、および合併に関連する活動から生じる本質的に異なる技術プラットフォームの作成などの要因による、異種の要素を含む情報システム・インフラストラクチャを備えることを特徴とすることが多い。さらに、納入業者、提携業者、および顧客間を結ぶリアルタイムの企業外部の接続性を促進したいという要望から、異種の環境に接続性を提供しようとするさらに強い動機が生じる。
【0005】
急速に増大する顧客の様々な要求に対して、情報技術の提供者は、企業のデータ・センターへのより高い接続性を求めるニーズに対応するデータ処理ソリューションの考案に着手している。
【0006】
本明細書の主題に関連する背景情報には以下が含まれる。コンピュータ・システムのアクティビティ分析について記載する、Ruffin他による米国特許出願番号09/183961「COMPUTATIONAL WORKLOAD-BASED HARDWARE SIZERMETHOD, SYSTEM AND PROGRAM PRODUCT」;論理パーティション間の共有メモリについて記載する、Temple他による米国特許出願番号09/584276「INTER-PARTITIONSHARED MEMORY METHOD, SYSTEM AND PROGRAM PRODUCT FOR A PARTITIONED PROCESSINGENVIRONMENT」;高帯域幅の内蔵アダプタについて記載する、Baskey他による米国特許出願番号09/253246「A METHOD OFPROVIDING DIRECT DATA PROCESSING ACCESS USING QUEUED DIRECT INPUT-OUTPUT DEVICE」;システム中の2つの異なるクライアント・サーバのパーティショニングについて記載する、Temple他による米国特許出願番号09/583501「HeterogeneousClient Server Method, System and Program Product For A Partitioned ProcessingEnvironment」;複数パーティションのワークロード管理について記載する、IBM文書SG24−5326−00「OS/390 WorkloadManager Implementation and Exploitation」ISBN:0738413070;および、ESA/390命令セット・アーキテクチャについて記載するIBM文書SA22−7201−06「ESA/390Principles of Operation」。これらの文書は、参照により本明細書に組み込む。
【0007】
当初、動作上の依存性を有する可能性がある各種のアプリケーションに対する処理サポートを同時に提供する統合システムを供給する必要性により、区分多重処理システムの市場が拡大した。単一の物理的なコンピューティング・システムで複数のオペレーティング・システム・イメージをサポートする能力を提供するこの区分システムは、かつてはメインフレーム・コンピュータ(IBM S/390システムなど)の分野でのみ用いられていたが、次第に広範囲の供給者から販売されるようになっている。例えば、Sun Microsystems社は最近、Ultra Enterprise 10000ハイエンド・サーバでシステム・パーティショニングの一形態を提供し始めた。これについては、1996年12月12日に出願され、1999年8月3日に発行され、SunMicrosystems社に譲渡された、Drogichen他による米国特許第5,931,938号「Multiprocessor Computer HavingConfigurable Hardware System Domains」に詳細に記載される。他社もこの種のシステムに対する関心を示す方向性を表明している。
【0008】
この業界による採用は、1企業内の各種の計算ワークロードを1台(あるいは数台)の物理的なサーバ・コンピュータに統合する際に、そして動的に再構成することが可能なハードウェア環境でテスト・レベルおよび製造レベルのコードを同時に実装するために、システムの区分から得られる「systems within a system」の利点を明確に示すものである。さらに、前述の相互参照される特許出願で挙げたIBM S/390コンピュータ・システムなど、特定の区分多重処理システムでは、そのシステムで行う作業に割り当てられた優先度に応じて、リソース(プロセッサ、メモリ、およびI/O)を論理パーティション内および論理パーティション間で動的に割り振ることができる(IBMおよびS/390は、InternationalBusiness Machines社の登録商標)。このワークロードの優先度に応じて動的にリソースを割り振る能力により、長年にわたる容量計画の問題が対処される。従来は、データ・センターの管理者が、一時的なワークロードの急増に対処するために予想される計算ワークロードに過剰な量のリソースを意図的に指定することによりこの問題に対応していた。
【特許文献1】
米国特許出願番号09/801407
【特許文献2】
米国特許出願番号09/802185
【特許文献3】
米国特許出願番号09/801492
【特許文献4】
米国特許出願番号09/183961
【特許文献5】
米国特許出願番号09/584276
【特許文献6】
米国特許出願番号09/253246
【特許文献7】
米国特許出願番号09/583501
【特許文献8】
米国特許第5,931,938号
【特許文献9】
米国特許第5,442,802号
【特許文献10】
米国特許出願番号09/411417
【特許文献11】
米国特許第5,414,851号
【特許文献12】
米国特許第5,269,009号
【特許文献13】
米国特許出願番号09/677338
【非特許文献1】
IBM文書SG24−5326−00「OS/390 WorkloadManager Implementation and Exploitation」ISBN:0738413070
【非特許文献2】
IBM文書SA22−7201−06「ESA/390Principles of Operation」
【非特許文献3】
IBM文書SC28−1855−06「"OS/390V2R7.0 OSA/SF User's Guide」
【非特許文献4】
G321−5640−00「S/390 clustertechnology: Parallel Sysplex」
【非特許文献5】
IBM文献SC34−5349−01「MQSeries QueueManager Clusters」
【非特許文献6】
「Coupling Facility ConfigurationOptions: A Positioning Paper」(GF22−5042−00,IBM社)
【非特許文献7】
IBM Redbook Document SG24-4810-01「UnderstandingRS/6000 Performance and Sizing」
【発明の開示】
【発明が解決しようとする課題】
【0009】
こうした区分システムは、企業内の異種のシステムを取り込むようにデータ・センターを拡張することを容易にするが、現在、こうしたソリューションは、異種または同質の区分プラットフォームを相互運用性がある単一の区分システムに機能的に統合する単純な機構は提供しない。実際、これらの新しいサーバは、単一の物理的ハードウェア・プラットフォーム内でのオペレーティング・システム・イメージの統合は可能にするが、サーバの複数のパーティションに存在するオペレーティング・システム間の相互運用性に対するニーズには充分に対応していない。この相互運用性の問題はさらに、各種のパーティション内に異種のオペレーティング・システムを有する異種要素を含むシステムにおいて難しくなる。また、こうしたシステムは通例、そのような異種のプラットフォーム間でのパーティション間のリソース共有のタイプにも対応していない。パーティション間のリソース共有が実現すると、パーティション間の高帯域幅、低待ち時間の相互接続が可能になろう。これらの問題に対するシステム統合のソリューションにより、別個のパーティションで実行されるプロセス間の通信を行うためのより堅固な機能を可能にして、そのようなアプリケーションが個別のオペレーティング・システムで実行されているとき、それらのアプリケーションは実際には互いに対してローカルであるという事実を活用できることから、この相互運用性の問題に対処することが重要である。
【0010】
上述のTemple他による「INTER-PARTITION SHARED MEMORYMETHOD, SYSTEM AND PROGRAM PRODUCT FOR A PARTITIONED PROCESSING ENVIRONMENT」という名称の米国特許出願番号09/584276では、数個のオペレーティング・システムの「カーネル」を拡張することにより、共有ストレージの使用を容易にしてパーティションを越えたメモリ共有を実現する。「カーネル」とは、オペレーティング・システム中の中核的なシステム・サービス・コードである。ネットワーク・メッセージ・パッセージのプロトコルは、そのようにして作成したインタフェース上で実装することができるが、しばしば、1つまたは複数のオペレーティング・システムの変更に頼ることなく効率的なプロセス間通信を可能にすることが求められる。また、上述のTemple他による米国特許出願番号09/584276、または米国特許第5,931,938号に記載されるSunMicrosystems社のUltra Enterprise 10000ハイエンド・サーバのように、メモリ領域を共有するためにパーティションの分離を制限せずに済むことも望まれる。同時に、ネットワーク速度ではなくメモリ速度によりパーティション間で情報をやり取りすることも望まれる。したがって、アドレスを共有せずにパーティション・メモリ間でメモリを移動する方法が求められる。
【0011】
IBM S/390 Gbit Ethernet(R)(1995年8月15日に発行され、IBM社に譲渡された米国特許第5442802号「Asynchronous Coprocessor Data Mover Method and Means」)のI/Oアダプタを使用して、あるパーティションのカーネル・メモリから別のパーティションのカーネル・メモリにデータを移動することができるが、データは、第1のカーネル・メモリからアダプタのキュー・バッファに移動され、次いでアダプタの第2のキュー・バッファに転送してから第2のカーネル・メモリに転送される。すなわち、メモリからメモリに転送する際に合計3回のデータ移動がある。どのメッセージ・パッシング通信方式でも、データ・アクセスの待ち時間が共有ストレージへの一度の格納とストレージからの取り出しの待ち時間に近づくように、データ移動操作の回数を最少に抑えることが望ましい。移動機能は、転送するデータ・ブロックごとに3回のデータ移動操作を有する。この操作のうち1つまたは2つの操作を除去する方法が望まれる。
【0012】
同様に、IBM S/390 Parallel Sysplex Coupling Facilityマシンは、パーティション間のメッセージ・パッシングを容易にするために使用することができ、また実際に使用されている。しかし、この場合、データの転送は、第1のカーネル・メモリから結合機構へ、そして結合機構から第2のメモリへと行われる。これには、求められる1回の移動ではなく2回のデータ操作が必要となる。
【0013】
多くのコンピュータ・システムでは、無許可あるいは不当なアクセスを通じたマシン上のデータおよびアプリケーションの不正使用を防止するために、ユーザの識別を確認することが望まれる。各種のオペレーティング・システムおよびアプリケーション・システムは、この目的のためにユーザ認証および他のセキュリティ・サービスを備える。区分システム、あるいは実際には任意のシステムのクラスタまたはネットワークに入ろうとするユーザを、エントリ時に1回のみ、あるいは重要なリソースに対する要求時や重要なシステム保守機能の実行時などの重要なチェックポイントで確認することが望ましい。この要望は「シングル・サインオン」の必要性として知られる。このために、各種パーティションのセキュリティ・サーバは相互に対話するか、または統合しなくてはならない。この例には、OS/390におけるウェブから受信した「デジタル証明書」を処理し、それを従来のユーザIDおよびパスワード検証および権利付与にマッピングするOS/390 SAF(RACF)インタフェースの強化や、Kerberosセキュリティ・サーバ、および台頭しつつあるディレクトリ・サービス向けのLDAP規格がある。
【0014】
さらに、電子商取引は競争的な性質を持つため、ユーザ認証および権利付与のパフォーマンスは、従来のシステムに比べて重要性が高い。労働者は、業務の開始時に認証されるまで待つことを予期しているかもしれないが、顧客は、認証に時間がかかり過ぎる場合には単によそに行ってしまうことが考えられる。ウェブは公衆性があるので、暗号化の使用はこの問題を難しくする。また、しばしば、他のオペレーティング・システムのためには書かれていないデバイス・ドライバがあるオペレーティング・システムに存在することがある。そのような場合には、別のパーティションからあるパーティションのデバイス・ドライバに効率的な形でインタフェースを取ることが望ましい。現在このタイプの動作に利用できるのはネットワーク接続だけである。
【0015】
分散システムに伴う問題の1つは、他のシステムが過度に利用されている一方での、「ホワイト・スペース」、すなわちあるシステムで充分に利用されていないリソースの管理である。システム間あるいはシステム・イメージ間でワークロードを移動するIBMのLoadLevelerやOS/390オペレーティング・システムのワークロード・マネジャが備えるParallel Sysplex機能などのワークロード・バランサがある。区分コンピューティング・システムでは、パーティション間でワークロードではなくリソースを移すことが可能であり、また望ましい。これは、機能の変更に伴う大量のコンテクストの切り替えとデータ移動が回避されることから望ましい。
【0016】
外部のSysplexのクラスタ化した接続を使用してUNIX(R)オペレーティング・システムのソケット間接続を実装するIBM S/390の「Sysplex Sockets」は、従来技術の一部の一例である。この技術では、あるサービスが、利用可能なセキュリティのレベルを示し、アプリケーションが示す要求されるセキュリティ・レベルに基づいて接続をセットアップする。しかし、この場合は、より高いレベルのセキュリティのために暗号化が提供され、またSysplex接続自体が、本発明によって実装されるメモリ接続に比べてはるかに深い物理トランスポート層を有する。
【0017】
同様に、SSLによる認証を提供し、証明書情報を(プロキシとして)ウェブ・アプリケーション・サーバに提供するウェブ・サーバは、本発明のメモリ共有またはメモリからメモリへの直接のメッセージが効果的に使用される別の例と考えることができる。ここでは、プロキシは、セキュリティ・サーバに渡すデータを再度暗号化する必要がなく、さらに、管理すべき深い接続インタフェースを持たない。実際、当業者には、本発明のこの実施形態では、プロキシ・サーバは、基本的に、セキュリティ・サーバと同じオペレーティング・システム下で実行されるプロキシ・サーバと実質的に同じプロセスを通じてセキュリティ・サーバと通信することが理解されよう。Baskey他による米国特許出願番号09/411417「Methods, Systems and Computer ProgramProducts for Enhanced Security Identity Utilizing an SSL Proxy」には、プロキシ・サーバを使用してセキュアHTTPプロトコルでセキュア・ソケット・レイヤ(SSL)を行うことについて述べられる。
【課題を解決するための手段】
【0018】
本発明の一態様によれば、処理システムは、少なくとも第1のパーティションおよび第2のパーティションを含む。このシステムは、すべてのパーティションと通信するパーティション・リソース・マネジャを備える。パーティション・リソース・マネジャは、第2のパーティションから第2のパーティションのスループットについての情報を受け取り、第2のパーティションのリソースに対してリソース平衡化の指示を決定する。リソース・マネジャは、リソース平衡化の指示に従って第2のパーティションにリソースを割り振る。
【0019】
好ましい実施形態では、パーティション・リソース・マネジャ機能は、ハイパーバイザと併せてワークロード・マネジャを使用して実装すると有利である。このシステムは、すべてのパーティションと通信するハイパーバイザを備える。第1のパーティションにはワークロード・マネジャが提供され、第2のパーティションからスループットについての情報を受け取り、リソース平衡化の指示を決定する。コミュニケータは、ワークロード・マネジャからハイパーバイザにリソース平衡化の指示を伝達する。第2のパーティションのカーネルは、ハイパーバイザから受け取るリソース平衡化の指示に従って第2のパーティションにリソースを割り振る。
【0020】
共有されるメモリ・リソースは、複数のパーティションで実行される相互動作する複数プロセスのための指定メモリ・リソースに独立してマッピングすることが好ましい。このようにして、メモリ・リソースを共有する各パーティション中のプロセスによって共通の共有メモリ空間をマッピングすると、共有メモリは、パーティション内でそのプロセスに割り当てられ、通常のプロセス実行の過程中にデータの読み書きに使用できるメモリ・リソースのように見える。
【0021】
さらなる実施形態では、プロセスは相互に依存しており、共有メモリ・リソースは、いずれかまたは両方のプロセスによる後のアクセスのために、いずれかまたは両方のプロセスから格納を行うことができる。
【0022】
さらなる実施形態では、システムは、パーティション中の各種プロセスを共有メモリ空間に接続するプロトコルを含む。
【0023】
別の実施形態では、区分に関係なくすべての物理メモリへの物理的アクセスを備えるI/Oアダプタにより、あるパーティションのカーネル空間から別のパーティションのカーネル空間への直接のデータ移動が可能になる。I/Oアダプタのすべてのメモリにアクセスする能力は、パーティション間のI/Oリソース共有を可能にする区分コンピュータ・システム中の機能から当然得られる結果である。このような共有については、1995年5月9日に発行された米国特許第5,414,851号「METHOD AND MEANS FOR SHARING I/O RESOURCES BY A PLURALITY OFOPERATING SYSTEMS」に記載される。ただし、アダプタは、データ・ムーバを使用することにより、あるパーティションのメモリから別のパーティションのメモリに直接データを移動する能力を有する。
【0024】
さらなる実施形態では、カーネル・メモリ間のデータ移動のための機能は、ネットワーク通信アダプタのハードウェアおよびデバイス・ドライバ内に実装される。
【0025】
さらなる実施形態では、メモリ間インタフェースを通じたローカルであるが異種の要素を含むセキュアな接続のためにそれぞれが最適化されたTCP/IPスタックから、ネットワーク・アダプタを駆動する。
【0026】
別の実施形態では、データ・ムーバ自体を区分処理システムの通信ファブリック中に実装し、I/Oアダプタによって制御して、さらに直接的なメモリからメモリへの転送を容易にする。
【0027】
さらに別の実施形態では、オペランドとして供給されるネットワーク・アドレスおよびオフセットを物理アドレスに変換することができる、特権CISC命令のマイクロコードによってデータ・ムーバを制御し、それにより、データ・ムーバは、実際のアドレスと仮想アドレスを2つのパーティションに有する物理アドレス間で、move character long命令(IMB S/390のMVCL命令。IBM文書SA22−7201−06 "ESA/390Principles of Operation"を参照)に相当する操作を行う。
【0028】
さらに別の実施形態では、すべての物理メモリへの仮想メモリ・アクセスおよび実際のメモリ・アクセスを行い、オペランドとして供給されるネットワーク・アドレスおよびオフセットを物理アドレスに変換することができるハイパーバイザで実行されるルーチンによってデータ・ムーバを制御し、それによりデータ・ムーバは、実際のアドレスと仮想アドレスを2つのパーティションに有するアドレス間でmove character long命令(IBM S/390 MVCL)に相当する操作を行う。
【0029】
パーティションの1つでサーバ・プロセスを実装し、他のパーティションでクライアント・プロセスを実装することにより、区分システムは、異種の要素からなる単一システムのクライアント・サーバ・ネットワークを実装することができる。既存のクライアント/サーバ・プロセスは通例ネットワーク・プロトコル接続によって相互動作するので、そうしたプロセスは、本発明のメッセージ・パッシングの実施形態で容易に実装され、インタフェースの変更に頼ることなくパフォーマンスとセキュリティの利点が得られる。ただし、共有メモリの実施形態でのクライアント/サーバ・プロセスの実装は、パフォーマンスまたは配置の速度、あるいはその両方で有利である可能性がある。
【0030】
さらなる実施形態では、共有メモリまたはメモリ間のメッセージ・パッシングを利用するアプリケーション・サーバに対して、信頼性のある/保護されたサーバ環境が提供される。この環境では、現行技術のような追加的な暗号化または認証を必要とせずに、外部化を伴う認証および認証データのセキュリティの露出が回避される。
【0031】
特定の実施形態では、ウェブ・サーバは、OS/390、Z/OS、またはVM/390の下で実行される「SAF」セキュリティ・インタフェースと、メモリ・インタフェースを通じて通信するOS/390向けのLinuxで実行されるLinux Apacheである。この実施形態では、Linuxの「プラグ可能認証モジュール」を変更して、メモリ接続を通じてSAFインタフェースを駆動する。
【0032】
さらなる実施形態では、セキュリティ・クリデンシャル/コンテクストを共有メモリに格納するか、メモリ間の転送を介して複写するように、Policy DirectorあるいはRACFのようなセキュリティ・サーバを変更する。
【0033】
このように、本発明の好ましい実施形態は、複数の異種のオペレーティング・システム・イメージをサポートすることが可能な区分されたコンピュータ・システムを含み、それらのオペレーティング・システム・イメージは、メモリ位置を共有せずに、それらのメモリ位置間でメモリ速度により同時にメッセージをやり取りすることができる。これは、あるパーティションのあるカーネル・メモリ空間から第2のパーティションのカーネル・メモリ空間への直接のデータ移動を協働して容易にする特殊なデバイス・ドライバを備えるI/Oアダプタを使用して行う。
【0034】
次いで添付図面を参照して単なる例として本発明の一実施形態を説明する。
【発明を実施するための最良の形態】
【0035】
本発明の好ましい実施形態の特定の態様について述べる前に、区分処理システムの基本的な構成要素を概説すると有用であろう。これを背景知識として使用することにより、本発明の特定の有利な特徴をどのように区分システムで用いてそのパフォーマンスを向上できるかをより深く理解することができる。IBM文書SC28−1855−06「"OS/390 V2R7.0 OSA/SF User's Guide」を参照されたい。この書籍は、OS/390オペレーティング・システムの一要素であるOpenSystems Adapter Support Facility (OSA/AF)の使用法について記載する。この書籍には、OSA/SFをセットアップし、OS/2インタフェースまたはOSA/SFコマンドのいずれかを使用してOSAをカスタマイズし、管理するための指示が提供される。G321−5640−00「S/390cluster technology: Parallel Sysplex」は、汎用目的の大規模な商用マーケットプレース向けに開発されたクラスタ化マルチプロセッサ・システムについて述べる。S/390 Parallel Sysplexシステムは、高度にスケーラブルなクラスタ化コンピューティング環境で完全なデータ共有と並列処理を組み合わせるために設計されたアーキテクチャに基づく。Parallel Sysplexシステムは、コスト、パフォーマンス範囲、および可用性の面で著しい利点をもたらす。IBM文献SC34−5349−01「MQSeriesQueue Manager Clusters」は、MQSeriesのキュー・マネジャ・クラスタについて記述し、クラスタの概念、用語、および利点を説明する。この文献は、新規のコマンドと変更されたコマンドの構文を要約し、キュー・マネジャのクラスタをセットアップし、維持するタスクの例をいくつか挙げる。IBM出版SA22−7201−06「ESA/390Principles of Operation」は、参照のためにESA/390アーキテクチャの詳細な定義を含む。この書籍は主にアセンブラ言語のプログラマが使用する参考文献として書かれたものであり、各機能に依存するアセンブラ言語プログラムを作成するのに必要とされる詳細のレベルで各機能を説明しているが、ESA/390の機能面の詳細に関心を持つ者にとっては有用であろう。
【0036】
上述の文献は、当技術分野の現行状態の事例を提供し、本発明の背景を理解する助けとなろう。これらの参考文献は、参照により本明細書に組み込まれる。
【0037】
図1に、区分処理システム100を構成する基本要素を示す。システム100は、ブロックAおよびBとして図示するブロックに区分することが可能な物理的なメモリ・リソースからなるメモリ・リソース・ブロック101と、区分されたメモリ・リソース101と一致するように論理的または物理的に区分することができる1つまたは複数のプロセッサからなることが可能なプロセッサ・リソース・ブロック102と、同様に区分することが可能な入出力(I/O)リソース・ブロック103とからなる。これらの区分されたリソース・ブロックは、スイッチ・マトリクスなどからなる相互接続ファブリック104を介して相互に接続される。相互接続ファブリック104は、プロセッサ102Bをメモリ101Bに接続するなど、パーティション内でリソース同士を相互接続する機能を果たすことができ、また、プロセッサ102Aをメモリ101Bに接続するなどパーティション間のリソースを相互に接続する役割も果たすことができることは理解されよう。本明細書で使用する用語「ファブリック」は、システムの諸要素を相互接続するための当技術分野で知られる一般的な方法を意味する。ファブリックは、単純な二地点間バスであっても高度なルーティング機構であってもよい。この図には2つのパーティション(AおよびB)を有するシステムを示しているが、この表現は説明を簡略にするために選択したものであり、さらに、本発明は、使用可能なリソースとパーティション技術が可能にする数のパーティションを実装するように構成可能なシステムを包含することは容易に認識されよう。
【0038】
図を考察すると、個別に見たパーティションAおよびBはそれぞれ、単独のデータ処理システムの構成要素、すなわちプロセッサ、メモリ、およびI/Oからなることが容易に理解されよう。この事実は、区分された処理システムに、独自の「systems within a system」の利点を与える特徴である。事実、そして本明細書で例証するように、現在利用可能なパーティション処理システムを分ける主要な差異は、システム・リソースを区分することが可能な境界と、その境界を越えてパーティション間でリソースを移動できる容易さである。
【0039】
パーティションを分ける境界が物理的な境界である第1のケースの最適な例となるのはSunMicrosystemsのUltra Enterprise 10000システムである。Ultra Enterprise 10000システムでは、パーティションは物理的な境界に従って区画され、具体的には、ドメインまたはパーティションは、それぞれがいくつかのプロセッサ、メモリ、およびI/Oデバイスからなる1つまたは複数の物理的なシステム・ボードからなる。ドメインは、そのシステム・ボードの1つまたは複数、およびそのボードに装着されたI/Oアダプタとして定義される。ドメインは、独自開発のバスおよびスイッチ・アーキテクチャによって相互に接続される。
【0040】
図2に、物理的に区分された処理システム200を構成する要素の高レベル表現を示す。図2の参照から分かるように、システム200は2つのドメインあるいはパーティションAおよびBを含む。パーティションAは、2つのシステム・ボード202A1および201A2からなる。パーティションAの各システム・ボードは、メモリ201A、プロセッサ202A、I/O 203A、および相互接続媒体204Aを含む。相互接続媒体204Aは、システム・ボード201A1上の構成要素が相互と通信することを可能にする。同様に、単一のシステム・ボードからなるパーティションBも同様の構成処理要素、すなわちメモリ201B、プロセッサ202B、I/O203B、および相互接続204Bを含む。パーティションに分けられたシステム・ボードに加えて、各システム・ボードに結合され、パーティション内のシステム・ボード間の相互接続と、異なるパーティションのシステム・ボードの相互接続を可能にする相互接続ファブリック205が存在する。
【0041】
次のタイプのシステム・パーティションを論理的パーティショニングと呼ぶ。このシステムでは、各種のパーティションへのリソースの割り当てを制約する物理的な境界がなく、システムは、その物理的な場所に関係なく任意のパーティションに割り当てることができる使用可能なリソースのプールを備えるものと考えることができる。この点が、例えば所与のシステム・ボード(システム・ボード201A1など)上のすべてのプロセッサが必然的に同じパーティションに割り当てられる、物理的に区分されたシステムとの違いである。IBM AS/400システムは、論理的に区分された専用のリソース処理システムの例である。AS/400システムでは、ユーザは、プロセッサ、メモリおよびI/Oをそれらの物理的な場所に関係なく所与のパーティションに含めることができる。したがって、例えば、物理的に同じカード上に位置する2つのプロセッサを2つの異なるパーティションのリソースとして指定することができる。同様に、カードなど所与の物理的なパッケージ中のメモリ・リソースは、そのアドレス空間の一部を論理的に1パーティションのために確保し、残りのアドレス空間を別のパーティションのために確保することができる。
【0042】
AS/400システムなど論理的に区分された専用リソース・システムの特徴は、パーティションへのリソースの論理的マッピングが、手動によるシステムの再構成によってのみ変更することができる、静的に行われる割り当てである点である。図3を参照すると、プロセッサ302A1は、物理的にはシステム中のどこに位置してもよく、論理的にはパーティションAのために確保されたプロセッサを表す。ユーザが、プロセッサ302A1をパーティションBにマッピングし直したい場合は、プロセッサをオフライン状態にし、変更に対応するように手動で再度マッピングしなければならない。論理的に区分されたシステムは、例えば固定数のプロセッサをサポートするシステム・ボードなどの物理的な区分の境界による制限を受けないので、リソースの区分により高い精度を提供する。ただし、そのような論理的に区分された専用のリソース・システムの再構成を行うには、パーティションの再マッピングを行うリソースの動作を中断しなくてはならない。したがって、そのようなシステムでは、物理的に区分されたシステムに伴う制限の一部は回避されるが、なおパーティション間のリソースの静的なマッピングに伴う再構成の制限があることが分かる。
【0043】
この結果、我々は、論理的に区分された共有リソース・システムの検討に至った。そのようなシステムの一例は、IBM S/390コンピュータ・システムである。論理的に区分された共有リソース・システムの特徴の1つは、プロセッサなど論理的に区分されたリソースを複数のパーティションで共有できる点である。この特性により、論理的に区分された専用リソース・システムの再構成の制約が効果的に克服される。
【0044】
図4に、論理的に区分されたリソース共有システム400の概略的な構成を示す。論理的に区分された専用のリソース・システム300と同様に、システム400は、システム中の物理的な場所に関係なく任意のパーティション(この例ではAまたはB)に論理的に割り当てることが可能なメモリ401、プロセッサ402、およびI/Oリソース403を含む。ただし、システム400から分かるように、特定のプロセッサ402またはI/O403の論理パーティションへの割り当ては、「ハイパーバイザ」(408)で実行されるスケジューラに従って仮想プロセッサ(406)およびI/Oドライバ(407)を入れ替えることにより動的に変更することができる。(ハイパーバイザは、仮想マシンのリソースをスケジュールし、割り振る管理プログラムである。)プロセッサおよびI/Oを仮想化することにより、適切な優先順位付けを行って全オペレーティング・システム・イメージを動作中および非動作時に入れ替えることが可能になり、パーティションがそれらのリソースを動的に共有できるようになる。
【0045】
論理的に区分された共有リソース・システム400は、プロセッサとI/Oリソースを共有する機構を提供するが、パーティション間のメッセージ・パッシングは、既存のシステムでは完全には対応されていなかった。これは、既存の区分システムではパーティション間の通信を可能にすることができないということではない。実際、そのような通信はここに記載する各タイプの区分システムで行われている。しかし、それらの実装で、ハイパーバイザ、共有メモリの実装、あるいはアダプタやチャネル通信デバイスの標準的なセット、あるいはパーティション間を接続するネットワークの介在なしに、カーネル・メモリからカーネル・メモリにデータを移動する手段を提供するものはない。
【0046】
米国特許第5,931,938号に記載されるSun MicrosystemsUltra Enterprise 10000システムを代表とする、物理的に区分された多重処理システムでは、マスク・レジスタを適切に設定することにより、システム・メモリの一領域を、ハードウェア・レベルの複数のパーティションからアクセス可能にすることができる。このSun特許は、パーティション間ネットワークのためのバッファリング機構および通信手段として使用できることを指摘する以外には、この機能をどのように活用するかを教示しない。上述のTemple他による米国特許出願番号09/584276は、異種の要素からなる区分システムにおいて共有メモリ機構をどのように構築し、活用するかを教示する。
【0047】
「Coupling Facility Configuration Options:A Positioning Paper」(GF22−5042−00,IBM社)に詳細に記述されるように、IBM S/390システムでは、共通にアドレス指定される物理メモリを「統合された結合機能」として使用するための同様の内部のクラスタ化機能について記載される。ここでは、共有ストレージは実際にリポジトリであるが、そこへの接続は、XCFと称されるI/O様のデバイス・ドライバを通じて行われる。ここでは、共有メモリは結合機能中に実装されるが、S/390でないオペレーティング・システムがそれを使用するには拡張を作成することが必要である。さらに、この実装では、1パーティションのカーネル・メモリから結合機能のメモリにデータを移動させ、そして第2のパーティションのカーネル・メモリにデータを移動させる。
【0048】
カーネルとは、ハードウェア・リソースの割り振りなどの基本的機能を行うオペレーティング・システムの部分である。カーネル・メモリとは、カーネルが自身の機能を実行するために使用する、カーネルが利用できるメモリ空間である。
【0049】
これに対し、この実施形態は、どちらかのパーティションまたはハードウェア中でオペレーティング・システムに共有ストレージの拡張を提供することなく、新規なI/Oアダプタとそのデバイス・ドライバのイネーブリング機能を使用して、あるパーティションのカーネル・メモリから別のパーティションのカーネル・メモリに1回の操作でデータを移動する手段を提供する。
【0050】
ここで説明する実施形態の動作を理解する助けとして、オペレーティング・システム中のプロセス間通信を理解すると有用である。図5を参照すると、プロセスA(501)およびB(503)は、それぞれアドレス空間メモリA(502)およびメモリB(504)を有する。これらのアドレス空間には、カーネル(505)によるシステム・コールの実行により実際のメモリが割り振られている。カーネルは、独自のアドレス空間であるメモリK(506)を有する。1つの通信形態では、プロセスAおよびBは、バッファ510を作成し、そこに接続し、アクセスする適切なシステム・コールを行うことにより、メモリKにバッファ510を作成することで通信する。これらの呼び出しの意味は、システムごとに異なるが効果は同じである。第2の通信形態では、メモリS(507)のセグメント511をメモリA(502)およびメモリB(504)のアドレス空間にマッピングする。このマッピングが完了すると、プロセスA(501)およびB(503)は、両プロセスが理解する任意のプロトコルに従って、メモリS(507)の共有セグメントを自由に使用することができる。
【0051】
米国特許出願番号09/583501「Heterogeneous ClientServer Method, System and Program Product For A Partitioned ProcessingEnvironment」を図6に表し、ここではプロセスA(601)およびB(603)が、異なるオペレーティング・システム・ドメイン、イメージ、あるいはパーティション(パーティション1(614)およびパーティション2(615))に存在する。この場合には、メモリK1(606)およびメモリK2(608)を各自のカーネル・メモリとして有するカーネル1(605)およびカーネル2(607)がある。メモリS(609)は、ここではパーティション1およびパーティション2の両方からアクセス可能な物理メモリの空間である。このような共有は、これらに限定しないが、UE10000のメモリ・マッピング実装、またはS/390のハイパーバイザ実装、あるいは区分によって生じるアクセスの障壁を制限する他の任意の手段を含む任意の実装によって可能にすることができる。これに代わる例として、共有メモリを最も高い物理メモリ・アドレスにマッピングし、コンフィギュレーション・レジスタ中の先頭アドレスによって共有空間が定義される。
【0052】
慣例として、メモリS(609)は、メモリK1およびメモリK2にマッピングされた、カーネル1およびカーネル2の拡張によって使用される共有セグメント(610)を有する。セグメント610は、メモリK1(606)およびメモリK2(608)にマッピングされて上述の第1の形態によるパーティション間通信を可能にするメモリ(609)のセグメントについての定義および割り振りのテーブルを保持するのに使用されるか、または上記で図5を参照して説明した第2の通信形態に従ってメモリA(602)およびメモリB(604)にマッピングされたセグメントS2(611)を定義するために使用される。本発明の一実施形態では、メモリSは、制限されたサイズであり、実際のストレージ中で固定されている。ただし、メモリを固定する必要はなく、付随するページ管理タスクが効率的に管理されるのであれば、より大きな共有ストレージ空間を可能にすることを企図する。
【0053】
ここで参照する本発明の第1の実施形態では、共有メモリ構成データ・セット(SMCDS)(613)からデータを読み出し、メモリS(609)のセグメントS1(610)にテーブルを構築する共有メモリ構成プログラム(SMCP)(612)と呼ばれるスタンドアロンのユーティリティ・プログラムにより、共有ストレージの定義および割り振りのテーブルをメモリ中にセットアップする。したがって、どのカーネルがどのストレージ・セグメントを共有するかについての割り振りと定義は、このユーティリティが作成する構成によって固定され、あらかじめ決定される。各種のカーネル拡張は次いでその共有ストレージを使用して、パイプ、メッセージ・キュー、ソケットなどの、各種のイメージ間、プロセス間の通信構造を実施し、さらには、各自の規定および規則に従っていくつかのセグメントを共有メモリ・セグメントとしてユーザ・プロセスに割り振る。これらのプロセス間の通信は、IPC API618および619を通じて可能になる。
【0054】
共有ストレージの割り振りテーブルは、イメージ識別子、セグメント番号、gid、uid、「スティッキー・ビット」、および許可ビットからなるエントリを含む。スティッキー・ビットは、関連付けられたストアがページング可能でないことを示す。この例の実施形態では、スティッキー・ビットは確保され、1と想定する(すなわちデータはメモリ中のその場所に固定される、すなわち「固着されて」いる)。セグメントを使用する各グループ、ユーザ、およびイメージは、テーブルにエントリを有する。慣例的に、すべてのカーネルは、テーブルを読むことができるが、書き込むことはできない。初期化時に、カーネル拡張は、構成テーブルを読み取り、イメージを越えるプロセス間通信が他のプロセスから要求された際に使用する独自の割り振りテーブルを作成する。割り振られた空間の一部またはすべては、プロセス間通信を要求する他のプロセスからの要求によりカーネルが作成する「パイプ」、ファイル、およびメッセージ・キューを実装するためにカーネルが使用する。パイプとは、カーネル機能を通じて第2のプロセスに導かれる1プロセスからのデータである。パイプ、ファイル、およびメッセージ・キューは、Linux、OS/390 USS、および大半のUNIX(R)オペレーティング・システムで使用される、標準的なUNIX(R)オペレーティング・システムのプロセス間通信のAPIおよびデータ構造である。共有空間の一部は、システムを越えた直接的なメモリ共有のために、さらなるカーネル拡張により他のプロセスのアドレス空間にマッピングすることができる。
【0055】
共有メモリの割り振り、使用、および仮想アドレス空間へのマッピングは、各自の規定および変換プロセスに従って各カーネルによって行われるが、基本的なハードウェア・ロックおよびメモリ共有のプロトコルは、システムの残りの部分の基礎となる共通のハードウェア設計アーキテクチャによって駆動される。
【0056】
通信を行うために、上層レベルのプロトコルは共通でなければならない。好ましい実施形態では、これは、各種のオペレーティング・システム・イメージそれぞれに、UNIX(R)オペレーティング・システムとともに使用するIPC(プロセス間通信)APIを実装させることによって行われ、拡張がその要求をイメージを越えた要求であると識別する。この拡張は、パラメータか、または別個の新しい識別子/コマンド名によることができる。
【0057】
図4および7を参照すると、本発明では、チャネルまたはネットワーク接続を通じたデータ転送と、オペレーティング・システムに対する共有メモリの拡張の使用がともに回避されることが分かる。パーティション714のアプリケーション・プロセス(701)は、カーネル1(705)を呼び出すソケット・インタフェース718にアクセスする。ソケット・インタフェースとは、TCP/IPスタックの特定のポートを、リッスン中のユーザ・プロセスに関連付ける構造である。カーネルはデバイス・ドライバ(716)にアクセスし、デバイス・ドライバ(716)は、I/Oアダプタ(720)のハードウェアを通じて、メモリ(401)にとってはメモリからメモリへの移動に見えるような形で、パーティション714および715のプロセッサ(402)またはファブリック(404)あるいはその両方に実装されるキャッシュ・メモリを回避して、カーネル・メモリ1(706)からカーネル・メモリ2(708)にデータを転送させる。データを移動すると、I/Oアダプタは次いでパーティション715のデバイス・ドライバ(717)にアクセスし、データを移動したことを通知する。デバイス・ドライバ717は次いで、カーネル2を待っているデータがソケット(719)にあることをカーネル2(707)に通知する。するとソケット(719)は、データをアプリケーション・プロセス(703)に提示する。このようにメモリからメモリへの直接の移動が行われ、同時に外部のインタフェースでデータを移動することが回避され、またメモリ共有のためのどちらかのオペレーティング・システムの拡張も回避される。
【0058】
これに対し、図8に示す従来技術によるシステムでは、個別のメモリ移動操作を使用してカーネル・メモリ1(706)からアダプタ・メモリ・バッファ1(721)に移動を行う。第2のメモリ移動操作で、アダプタ・メモリ・バッファ1(721)からアダプタ・メモリ・バッファ2(722)にデータを移動する。そして第3のメモリ移動操作で、アダプタ・メモリ・バッファ2(722)からカーネル・メモリ2(708)にデータを移動する。これは、2つのカーネル・メモリ間でデータを移動するのに3回の別個のメモリ移動操作を使用することを意味し、これに対して図7の本発明では、1回のメモリ移動操作でカーネル・メモリ1(706)からカーネル・メモリ2(708)に直接データを移動する。これには、ユーザ・プロセスから見た待ち時間を低減する効果がある。
【0059】
さらなる実施形態を図4および9によって例証する。ここでは、実際のデータ・ムーバ・ハードウェア(821)をファブリック(404)中に実施する。この実施形態の動作は、I/Oアダプタ820内の管理状態(822)に従って、ファブリック(404)内のムーバ・ハードウェアによって実際にデータを移動する点を除いては上記の説明と同様に進行する。
【0060】
このようなファブリックに位置するデータ・ムーバの一例が、1993年12月7日発行のRobertD.Herzl他による「Processor System with Improved Memory Transfer Means」という名称の米国特許第5,269,009号に記載される。この文献は参照によりその全体を本明細書に含める。参照する同特許に記載される機構を、パーティションの主要な記憶位置間のデータ転送を含むように拡張する。
【0061】
本発明の実施形態は以下の要素を含む。CPUの設計によって定義される、基礎となる共通のデータ移動プロトコル、I/Oアダプタまたはファブリック・ハードウェアあるいはその両方、I/Oアダプタとのインタフェースを実装するデバイス・ドライバの異種のセット、好ましい実施形態ではソケット・インタフェースとして示す共通の高レベルのネットワーク・プロトコル、物理メモリ・アドレスへのネットワーク・アドレスのマッピング、およびI/Oアダプタ(820)が各パーティションのカーネル・メモリおよびデバイス・ドライバと通信するのに使用するI/O割り込みベクトルまたはポインタ。
【0062】
データ・ムーバは、ハードウェアの状態機械として、またはマイクロコードおよびマイクロプロセッサを用いてI/Oアダプタ中に実装することができる。あるいは、I/Oアダプタによって制御される、マシンの通信ファブリック中のデータ・ムーバを使用するように実装してもよい。このようなデータ・ムーバの一例が、1993年12月7日発行のHerzl他による米国特許第5,269,009号「PROCESSOR SYSTEM WITH IMPROVED MEMORYTRANSFER MEANS」に記載される。
【0063】
図10を参照すると、実装に関係なくデータ・ムーバは以下の要素を有する。メモリからのデータはソース・レジスタ(901)に保持され、データは、データ・アライナ(902および904)を通じてデスティネーション・レジスタ(903)に渡され、次いでメモリに戻される。したがって、連続した動作の一部としてメモリからの取り出しそしてメモリへの格納がある。すなわち、位置合わせプロセスは、メモリ・ラインから複数のワードが取り出されると行われる。位置合わせしたデータは、メモリ・ストアが開始されるまで、デスティネーション・レジスタ(903)でバッファリングする。ソース・レジスタ(901)およびデスティネーション・レジスタ(903)は、移動操作中に取り出しと格納の間でどれほどの重複が許されるかに応じて、単一ラインまたは複数ライン分のメモリ・データを保持するために使用することができる。メモリのアドレス指定は、移動中に取り出しと格納が行われるアドレスを追跡するカウンタ(905および906)から行われる。制御およびバイト数の要素(908)は、アライナ(902および904)を通じたデータ・フローを制御し、メモリ・アドレスに合わせてソース・カウンタ(905)または宛先カウンタ(906)を選択させる。コントローラ(908)は、アドレス・カウンタ(905および906)の更新も制御する。
【0064】
図11を参照すると、データ・ムーバは、デバイス・ドライバによって実装される、特権CISC命令(1000)として実装することもできる。MVXLは、カウント・レジスタによって指定されるバイト数を、ソース・レジスタで指定される物理アドレスから、デスティネーション・レジスタで指定される物理アドレスに移動する。この命令は特権命令である。(仮想アドレス間ではMVCLが同じ機能を行う。)ここで、デバイス・ドライバは、仮想アドレスではなく物理アドレスをレジスタにロードし、パーティションを越えたデータ移動を可能にする。このようなCISC命令は、S/390のMove Page、Move Character Longなどのパーティション間のデータ移動に適したハードウェア機能を利用するが、ネットワーク・アドレスおよびオフセットを物理メモリのアドレスにマッピングするテーブルに従って物理的にメモリをアドレス指定する特権も有する。最後に、データ・ムーバおよびアダプタは、仮想アダプタとして機能するハイパーバイザ・コードによって実装することができる。
【0065】
図12に、次のステップからなる、データ・ムーバがアダプタにある場合のデータ・ムーバの動作を示す。
1101 ユーザがデバイス・ドライバを呼び出し、ソース・ネットワークのID、ソース・オフセット、宛先ネットワークのIDを提供する。
1102 デバイス・ドライバがアドレスをアダプタに転送する。
1103 アダプタがアドレスを転送する。
IDから物理的な基底アドレスを検索する(テーブル・ルックアップ)
ロックおよび現在の宛先オフセットを得る
オフセットを加算する
境界を確認する
1104 アダプタがカウントとアドレスをレジスタにロードする
1105 アダプタがデータ移動を実行する
1106 アダプタがロックを解除する
1107 アダプタがユーザに「戻る」デバイス・ドライバに通知する
【0066】
図13に、以下のメソッドを含む、プロセッサ通信ファブリックで実装されるデータ・ムーバ・メソッドを示す。
1201 ユーザがデバイス・ドライバを呼び出し、ソース・ネットワークのID、ソース・オフセット、宛先ネットワークのIDを提供する
1202 デバイス・ドライバがアドレスをアダプタに送る
1203 アダプタがアドレスを変換する
IDから物理的な基底アドレスを検索する(テーブル・ルックアップ)
ロックおよび現在の宛先オフセットを得る
オフセットを加算する
境界を確認する
アダプタが、ロックおよび物理アドレスをデバイス・ドライバに戻す
1204 デバイス・ドライバがデータ移動を実行する
1205 デバイス・ドライバがロックを解除する
1206 デバイス・ドライバが戻る
【0067】
以上、区分されたコンピューティング・システム内で異種の要素を含む相互動作を実施する2つの方式を説明した。方式の1つでは、共有メモリ機能とオペレーティング・システム・カーネルの拡張を使用してパーティションを越えたプロセス間の通信プロトコルを可能にし、もう一方の方式では、共有I/Oアダプタの能力を使用してすべての物理メモリをアドレス指定して、メモリからメモリへのメッセージ・パッシングを1回の操作で実施する。
【0068】
前述の構造により、単一システムのクライアント−サーバ・モデルを活用するいくつかの本発明の実装が得られる。この構造を実装する一方式は、サーバの作業キューを共有される記憶空間に入れて、各種のクライアントが要求を追加できるようにするものである。そして、クライアントがそこに入れられた情報にアクセスできるように、「リモート」クライアントのためのリターン・バッファも共有メモリ空間になければならない。あるいは、上述のメッセージ・パッシング方式を使用して、既存のネットワーク指向のクライアント/サーバを迅速かつ容易に展開することができる。これらの実装は例証として提供しており、限定的と見なすべきではない。実際、当業者は、この構造を各種の方式でさらに発展させ、単一システムの枠組みの中で様々なタイプの異種のクライアント−サーバ・システムを実装できることが容易に理解される。
【0069】
パーティション・クラスタのワークロード管理
本発明のパーティション・リソース・マネジャを用いたパーティションのワークロード管理について、OS/390の実装により説明する。パーティション・リソース・マネジャのタスクは、あるパーティションで実行されるワークロード・マネジャの連携からなり、ハイパーバイザと通信する別のパーティションの他のワークロード・マネジャ(あるいは特定のオペレーティング・システムに適したスループット情報ジェネレータ)からスループット情報を得、パーティション・リソースの割り振りを調整する役割を担う。当業者には、本発明は、システム・アーキテクチャの必要性に従ってリソース・マネジャ機能を実装することにより、他のシステム・アーキテクチャでも実装できることは容易に理解されよう。
【0070】
図14を参照すると、OS/390オペレーティング・システムのワークロード・マネジャ(WLM)(1308)は、S/390のパーティション・ハイパーバイザと通信して、各パーティションに割り振られたリソースを調整する機能を持つ。これは、LPARクラスタリングとして知られる。ただし、OS/390でないパーティション(1301)については、WLMは、そのパーティションのオペレーティング・システムまたはアプリケーションに基づくのではなく、ハイパーバイザから供給できる利用率およびその他の情報のみに基づいて割り振りを行わなければならない。上述の待ち時間が低いパーティションを越えた通信(1305)を使用してパーティションからWLM(1308)に情報をパイピングすることは、システムを越えてリソースを割り振るジョブをより適切に行うためにWLMが必要とする情報をWLM(1308)に与える、オーバーヘッドが非常に低い手段となる。これは、アプリケーションがワークロード管理のために装備されない場合であっても効果的でありうる。この理由は、通例、制御されるシステムは、システムで送受信されるIPパケットを数えるTCP/IPスタック中のパケット・アクティビティ・カウンタにアクセスするコマンドであるUNIX(R)オペレーティング・システムの「NETSTAT」(UNIX(R)オペレーティング・システムの標準的なコマンド・ライブラリの一部)を実装することができ、また、ビジー・サイクルとアイドル・サイクルを数え、利用率データ(1302)を生成するカーネル中のシステム・アクティビティ・カウンタにアクセスする標準的なUNIX(R)オペレーティング・システム・コマンドであるUNIX(R)オペレーティング・システムの「VMSTAT」(UNIX(R)オペレーティング・システムの標準コマンド・ライブラリの一部)を実行することができるからである。既存のNETSTATコマンドおよびVMSTATコマンドを使用することは必須ではなく、パケット数と利用率をそれらに供給する基礎的な機構を使用してリソースおよび経路長のコストを最小に抑えることが最良であることは理解されよう。このデータを「速度」の基準(1303)と組み合わせ、それをワークロード・マネジャ(WLM)のパーティション(1307)に送ることにより、WLM(1308)は、ハイパーバイザにリソースの調整を行わせることができる。CPUの利用率が高く、パケット・トラフィックが低い場合、パーティションはより多くのリソースを必要とする。接続(1304および1306)は、相互接続(1305)の実施形態に応じて異なる。共有メモリの実施形態では、それらの接続はUNIX(R)オペレーティング・システムのPIPE、Message Q、SHMEM、あるいはソケット構造である。データ・ムーバの実施形態では、通例ソケット接続である。
【0071】
一実施形態では、「速度」基準は以下のように得る(IBM RedbookDocument SG24-4810-01 「Understanding RS/6000 Performance and Sizing」に記載されるUNIX(R)オペレーティング・システム・コマンドNETSTATおよびVMSTATを参照されたい)。
(NETSTAT)の全パケットについての時間間隔データを使用してスループットの概略を得る。
時間間隔についてのCPUデータ(VMSTAT)を使用して、CPUの利用率の概略を得る。
ピークを1としてトラフィックを正規化してそれらの概略データをプロットし、表示する(1401)。
トラフィック対CPUについて累積的な相関分析を行う(1402)。
トラフィックの関係は、関数T(C)に沿った曲線になる。
ここで使用する例(1402)では、T(C) = y(x) = 0.802 +1.13xS = dT/dC = dy/dxが速度基準となり、
この例ではS=1.13となる。
Sが傾向線よりも小さい場合には、より多くのリソースが必要とされる。
【0072】
図15の例ではこれは2度発生している(1403および1404)。管理図は、諸業界で監視プロセスを作成するための標準的な方法である。1405ではSを管理図として動的にプロットしている。この例でパケット・トラフィックとCPUとの間に見られるような関係を与えられると、統計的な制御理論に基づいて収集データを様々な形で監視し、調整することができる。これらの方法は、通例、アクションをトリガする制御変数の閾値に依存する。あらゆるフィードバック・システムでそうであるように、制御不能状態に近いと判断された時に即座にアクションを行わせることが必要である。さもないとシステムが不安定になる可能性がある。この実施形態では、これは、内部通信が提供する低待ち時間の接続によって行われる。
【0073】
静的な環境では、Sを使用して、どの利用率でより多くのリソースが必要とされるのかを明確にすることができる。これは平均にわたって有効であるが、Sはワークロードと時間の関数でもある。図15を参照すると、まずそれは50〜60%の間のどこかであることが分かり、次いでSの谷があるとその後に少なくとも1回の時間間隔で利用率のピークがあることが分かる。したがって、WLMは利用率ではなくSを与えられた場合により好適なジョブを行う。これは、Sが、よりタイムリーなリソース調整を可能にする「先行する指標」であるためである。区分されたマシンのリソースはパーティションによって共有されるので、ワークロード・マネジャはSのデータを複数のパーティションから得なければならない。データの転送は、非常に低いオーバーヘッド、かつ高い速度で行う必要がある。この実施形態はこれら両方の条件を可能にする。図14を参照すると、ワークロード・マネジャがないパーティション(1301)では、プログラム・ステップ(1303)でパラメータ(ここの例では「S」)を評価するために使用する利用率およびパケットのデータ(1302)をモニタが収集する。プログラムは次いで、低待ち時間のパーティション間通信機能(1305)への接続(1304)を使用し、パーティション間通信機能(1305)は、ワークロード・マネジャを備えるパーティション(1307)の接続(1306)にそのデータを渡し、その接続により「論理パーティション・クラスタ・マネジャ」(1308)に入力が提供される。「論理パーティション・クラスタ・マネジャ」については、2000年10月2日出願の米国特許出願番号09/677338「METHOD AND APPARATUS FOR ENFORCING CAPACITY LIMITATIONS IN ALOGICALLY PARTITIONED SYSTEM」に記載される。
【0074】
この場合、パーティション・データをワークロード・マネジャに通信する最も効率的な方法は、メモリ共有を通じて行うものであるが、ソケットの待ち時間が十分に低くデータの時間伝達が可能である場合には、内部のソケット接続も機能する。これは、ワークロードと、求められる制御の精度の両方に応じて決まる。
【0075】
上述は、ワークロード・マネジャがリソースを割り振るための情報を供給する1方式であるが、これは決して限定的なものと解釈すべきではない。この例を選択したのは、これが、大量の新たなコードを用いずに、すべてではなくとも大半のオペレーティング・システムから収集することが可能な基準であるためである。クライアント・システムは、応答時間やユーザ数など、WLMサーバに渡す任意の基準の任意の手段を実装することができる。
【0076】
非間接的I/O
時に、デバイス・ドライバは、ハードウェアによってサポートされる可能なオペレーティング・システムのうち1つのみでしか利用できない場合がある。共有メモリにデバイス・ドライバのメモリ・インタフェースを提示し、すべての付属システムがドライバ・プロトコルに準拠することにより、デバイスを複数のシステムで共有することができる。実際には、1つのパーティションが他のパーティションのIOPになることができる。デバイスに過負荷を課すと、単一システムからデバイスに過負荷を課す場合と同様の否定的な結果になることを理解した上で、デバイスへのアクセスは単一システムのレベルに近いものになる。図16を参照すると、デバイス・ドライバ(1501)は、共有メモリ(1511)を通じた、アプリケーションおよびアクセス・メソッド(1503)からのI/Oサービスに対する要求に応答する。
【0077】
このメッセージ・パッシングの実施形態をいくつかのデバイスに使用することは可能であるが、ソケット、スタックおよびデータ移動の待ち時間を許容しなければならない。これは、ネイティブのデバイスとネットワークに接続されたデバイスとの中間と考えることができる。
【0078】
デバイス・ドライバを実行するシステム・イメージに割り振られたプロセッサ・リソースを、アプリケーションを実行するシステム・イメージに割り振られたプロセッサ・リソースから分離した場合にはさらなる機能の増大が得られる。この分離を行うと、I/O割り込みの対象とならないプロセッサでは、I/O割り込みとそれに伴うコンテクストの切り替えによるキャッシュおよびプログラム・フローの中断が回避される。
【0079】
共通のセキュリティ・サーバ
アプリケーションがウェブ対応型になり、統合されるのに従い、ユーザの確認と権利付与の確定は、従来のシステムの場合と比べて一般的な課題になる。この課題をさらに増大するのは、アプリケーションを統合するために異種のシステムをまとめる必要性である。この結果、LDAP、Kerberos、RACF、およびその他のセキュリティ機能を統合された形で使用するには、通常、セキュリティ機能を行う共通のセキュリティ・サーバへのネットワーク接続が必要とされる。これは、パフォーマンスに影響を与える。また、ネットワーク盗聴者(sniffer)によるセキュリティの露出もある。共有メモリ接続またはメモリ・ムーバ接続を介して共通のセキュリティ・サーバをウェブ・サーバに接続した場合、このアクティビティは著しく速度が上がり、接続は内部化され、セキュリティが向上する。さらに、そのような環境では、一部の顧客は、特にLINUXの場合には、他のUNIX(R)オペレーティング・システムに基づくパスワード保護よりも、S/390「RACF」、あるいは他のOS/390「SAF」インタフェースのユーザ認証によるより高いセキュリティを選ぶ可能性がある。Linuxシステムでは、適合し、カスタマイズすることが意図される「プラグ可能認証モジュール」によってそこでユーザ認証を行うので、そのような共有サーバに対するクライアント・サイドを比較的容易に構築することができる。ここでは、共有メモリ・インタフェースまたはメモリからメモリへのデータ・ムーバ・インタフェースを介してセキュリティ・サーバにアクセスし、ウェブ・サーバはそのアクセスを求めて競争する。その結果生じる作業キューはセキュリティ・サーバによって実行し、必要に応じて共有メモリ・インタフェースを通じて応答を返す。この結果、ウェブ・アプリケーションに対する強化されたセキュリティとパフォーマンスが発揮される。図17を参照すると、セキュリティ・サーバ(1601)は、共有メモリ(1611)を通じたユーザ・プロセス(1603)からのアクセス要求に応答する。ユーザ・プロセスは、カーネル2(1607)のセキュリティ・クライアント・プロセス(LINUXの場合にはこれがPAMとなる)との標準的なプロセス間通信(IPC)インタフェースを使用し、セキュリティ・クライアント・プロセスは、共有メモリ(1610)を通じてカーネル1(1605)のカーネル・プロセスと通信し、カーネル・プロセスは、セキュリティ・サーバ・インタフェース(OS/390またはZ/OSの場合はSAF)をユーザ・プロセス(1603)のプロキシとして駆動し、共有メモリ(1610)を通じてカーネル2(1607)のセキュリティ・クライアントに認証を返す。
【0080】
別の実施形態では、共有メモリに入れられたデータは、単一操作のデータ・ムーバを介してカーネル・メモリ1(1606)からカーネル・メモリ2(1608)に移動し、共有メモリの開発を回避するとともに、ネットワーク接続も回避する。
【0081】
以下で、共通のセキュリティ・サーバ(1601)を第1のパーティション(1614)で実行し、少なくとも1つのセキュリティ・クライアント(またはプロキシ)(1603)を少なくとも1つの第2のパーティション(1615)で実行する、区分された処理システムにセキュリティを提供するセキュリティ・サーバにおける通信ステップの実装の一例を挙げる。
【0082】
ユーザが認証を要求する。セキュリティ・クライアント(1603)がユーザからパスワードを受け取る。セキュリティ・クライアントは、セキュリティ・サーバ(1610)からのアクセスが可能なメモリ位置に要求を入れ、要求を入れたことを通知する。第1のパーティション(1614)の「セキュリティ・デーモン」が通知を認識し、第1のパーティション(1614)の「プロキシ」クライアント(1616)を開始する。プロキシ(1616)クライアントは、セキュリティ・サーバ(1601)にとってネイティブのインタフェースを使用して、その要求をもってセキュリティ・サーバを呼び出す。セキュリティ・サーバ(1601)は、要求を処理し、プロキシ・クライアント(1616)にサーバ応答を返す。プロキシ・クライアントは、セキュリティ・サーバの応答を第2のパーティションのセキュリティ・クライアントによるアクセスが可能なメモリに入れ、要求を入れたことを通知する。この通知により、その権限付与をポイントするセキュリティ・クライアント(1603)が起動する。セキュリティ・クライアント(1603)は、ユーザに応答を戻す。一実施形態では、第2のパーティション(1615)のセキュリティ・クライアント(1603)は、共有メモリ・インタフェース(1609)を用いて第1のパーティション(1614)のセキュリティ・サーバ(1601)と通信し、したがってネットワーク接続のセキュリティの露出を防止し、パフォーマンスを高める。別の実施形態では、第2のパーティションのセキュリティ・クライアントは、図9に示すデータ・ムーバ(821)を使用した内部のメモリからメモリへの移動により、第1のパーティションのセキュリティ・サーバと通信する。図9を参照すると、この第2の実施形態は、セキュリティ・クライアントをプロセスA(803)として実装し、セキュリティ・プロキシはプロセスB(801)として実装され、したがって外部のネットワーク接続が回避され、共有メモリの実装が回避される。
【図面の簡単な説明】
【0083】
【図1】区分データ処理システムの概要の図である。
【図2】1つまたは複数のシステム・ボードからなるパーティションを有する、物理的に区分された処理システムの図である。
【図3】論理的に区分されたリソースが各自の個々のパーティションのために確保された、論理的に区分された処理システムの図である。
【図4】論理的に区分されたリソースをいくつかのパーティション間で動的に共有することが可能な、論理的に区分された処理システムの図である。
【図5】UNIX(R)オペレーティング・システムの「プロセス間通信」の構造の図である。
【図6】スタンドアロン・ユーティリティによってロードされた構成テーブルに従って実際のメモリが共有される実施形態の図である。
【図7】I/Oアダプタおよびそのドライバの機能を使用してパーティション間のデータ転送を容易にする実施形態の図である。
【図8】従来技術によるシステムの図である。
【図9】区分データ処理システムの通信ファブリック中に実装されたデータ・ムーバによってパーティション間の実際のデータ転送を行う実施形態の図である。
【図10】データ・ムーバ例の構成要素の図である。
【図11】IBM S/390移動命令の例示的フォーマットの図である。
【図12】アダプタ・データ・ムーブを行う例示的ステップの図である。
【図13】プロセッサ・データ・ムーブを行う例示的ステップの図である。
【図14】ワークロード・マネジャ(WLM)の高レベル図である。
【図15】典型的なワークロード管理データを示す図である。
【図16】間接的なI/Oを使用したクライアント/サーバのクラスタ化の図である。
【図17】クライアント/サーバのサーバ・クラスタ化の図である。
Claims (30)
- 第1のオペレーティング・システムを含む第1のパーティションと、第2のオペレーティング・システムを含む第2のパーティションとを有するコンピューティング・システムにおける方法であって、
a)前記第1のパーティションからパーティション・マネジャに第1のパーティションのスループット情報を伝達するステップと、
b)前記パーティション・マネジャ中で、前記スループット情報からリソース平衡化指示を作成するステップと、
c)前記リソース平衡化指示に従って、前記パーティション・マネジャにより前記第1のパーティションにリソースを割り振るステップと
を含む方法。 - 前記パーティション・マネジャは、前記第2のパーティションで実行されるワークロード・マネジャ、およびハイパーバイザを備える請求項1に記載の方法。
- パーティション間の通信は、パーティション間のメモリ共有を含む請求項1に記載の方法。
- パーティション間の通信は、単一操作のメッセージ・パッシングを含む請求項1に記載の方法。
- 前記スループットについての情報はパケット・アクティビティ・カウンタによって取得される請求項1に記載の方法。
- 前記スループットについての情報は、あるパーティションに関連するネットワーク・パケットを計数することによって取得される請求項1に記載の方法。
- パーティションによって受信されるパケットを計数する請求項6に記載の方法。
- パーティションから送信されるパケットを計数する請求項6に記載の方法。
- 前記ネットワーク・パケットは前記第1のパーティションに関連する請求項6に記載の方法。
- 前記スループットについての情報は、ある期間にわたりネットワーク・トラフィックをプロセッサの利用率に関連付けることによって取得される請求項1に記載の方法。
- 前記ネットワーク・トラフィックは、あるパーティションに関連するネットワーク・パケットを計数することによって取得される請求項10に記載の方法。
- プロセッサの利用率はシステム・アクティビティ・カウンタから取得される請求項10に記載の方法。
- プロセッサの利用率は、システム・アクティビティ・カウンタである請求項10に記載の方法。
- プロセッサの利用率とネットワーク・トラフィックとの関連付けは、時間の経過にわたるパケット数の比である請求項10に記載の方法。
- 第1のオペレーティング・システムを含む第1のパーティションと、第2のオペレーティング・システムを含む第2のパーティションとを備えるコンピューティング・システムであって、さらに、
a)第1のパーティションのスループット情報を前記第1のパーティションからパーティション・マネジャに伝達する手段と、
b)前記パーティション・マネジャ中で、前記スループット情報からリソース平衡化指示を作成する手段と、
c)前記リソース平衡化指示に従って、前記パーティション・マネジャにより前記第1のパーティションにリソースを割り振る手段と
を備えるシステム。 - 前記パーティション・マネジャは、前記第2のパーティションで実行されるワークロード・マネジャ、およびハイパーバイザを備える請求項15に記載のシステム。
- パーティション間の通信は、パーティション間のメモリ共有を含む請求項15に記載のシステム。
- パーティション間の通信は、単一操作のメッセージ・パッシングを含む請求項15に記載のシステム。
- 前記スループットについての情報を取得するパケット・アクティビティ・カウンタをさらに備える請求項15に記載のシステム。
- あるパーティションに関連するネットワーク・パケットを計数する計数手段をさらに備え、前記スループットについての情報は前記計数手段によって取得する請求項15に記載のシステム。
- パーティションによって受信されるパケットを計数する請求項20に記載のシステム。
- パーティションから送信されるパケットを計数する請求項20に記載のシステム。
- 前記第1のパーティションに関連するパケットを計数する請求項20に記載のシステム。
- ある期間にわたりネットワーク・トラフィックとプロセッサの利用率を関連付けるネットワーク・トラフィック手段をさらに備え、前記スループットについての情報は前記ネットワーク・トラフィック手段によって取得する請求項15に記載のシステム。
- あるパーティションに関連するネットワーク・パケットを計数する計数手段をさらに備え、前記ネットワーク・トラフィックは前記計数手段によって取得する請求項24に記載のシステム。
- さらにシステム・アクティビティ・カウンタを備え、プロセッサの利用率は前記システム・アクティビティ・カウンタから取得する請求項24に記載のシステム。
- さらにシステム・アクティビティ・カウンタを備え、プロセッサの利用率は前記システム・アクティビティ・カウンタから取得する請求項24に記載のシステム。
- 前記ネットワーク・トラフィック手段は、ある期間にわたり、時間の経過にわたるパケット数の比としてネットワーク・トラフィックとプロセッサの利用率を関連付ける請求項24に記載のシステム。
- 第1のパーティションおよび第2のパーティションを備えるコンピューティング・システムであって、
前記第2のパーティションからスループットについての情報を受け取り、リソース平衡化指示を決定するパーティション・マネジャと、
前記パーティション・マネジャからの前記リソース平衡化指示を前記第2のパーティションのカーネルに通信するコミュニケータであって、前記カーネルは前記リソース平衡化指示に従って前記第2のパーティションにリソースを割り振るコミュニケータと
をさらに備えるシステム。 - 第1のオペレーティング・システムを含む第1のパーティションと、第2のオペレーティング・システムを含む第2のパーティションとを有するコンピューティング・システム内で実行されるコンピュータ可読プログラム・コード手段を有するコンピュータ使用可能媒体を備えるコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品中の前記コンピュータ可読プログラム・コード手段は、
a)第1のパーティションのスループット情報を前記第1のパーティションからパーティション・マネジャに伝達するコンピュータ可読プログラム・コード手段と、
b)前記パーティション・マネジャ中で、前記スループット情報からリソース平衡化指示を作成するコンピュータ可読プログラム・コード手段と、
c)前記リソース平衡化指示に従って、前記パーティション・マネジャにより前記第1のパーティションにリソースを割り振るコンピュータ可読プログラム・コード手段と
を備えるコンピュータ・プログラム製品。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/801,993 US6985951B2 (en) | 2001-03-08 | 2001-03-08 | Inter-partition message passing method, system and program product for managing workload in a partitioned processing environment |
PCT/GB2002/000456 WO2002073397A2 (en) | 2001-03-08 | 2002-02-01 | Resource balancing in a partitioned processing environment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004530196A true JP2004530196A (ja) | 2004-09-30 |
JP3980487B2 JP3980487B2 (ja) | 2007-09-26 |
Family
ID=25182560
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002571989A Expired - Lifetime JP3980487B2 (ja) | 2001-03-08 | 2002-02-01 | 区分処理環境におけるリソース平衡化 |
Country Status (8)
Country | Link |
---|---|
US (1) | US6985951B2 (ja) |
EP (1) | EP1386226B1 (ja) |
JP (1) | JP3980487B2 (ja) |
KR (1) | KR100612059B1 (ja) |
CN (1) | CN1280725C (ja) |
AU (1) | AU2002228206A1 (ja) |
CA (1) | CA2435978C (ja) |
WO (1) | WO2002073397A2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007099587A1 (ja) * | 2006-02-28 | 2007-09-07 | Fujitsu Limited | コンピュータシステム及びコンピュータシステム構成方法 |
US7865686B2 (en) | 2006-03-22 | 2011-01-04 | Nec Corporation | Virtual computer system, and physical resource reconfiguration method and program thereof |
JP2013546101A (ja) * | 2010-12-16 | 2013-12-26 | マイクロソフト コーポレーション | 物理的環境のカーネル認識 |
JP2014038459A (ja) * | 2012-08-15 | 2014-02-27 | Toshiba Corp | 仮想os制御装置、システム、方法およびプログラム |
US9798563B2 (en) | 2014-03-20 | 2017-10-24 | Fujitsu Limited | Network management device, information processing system, and program |
US9875056B2 (en) | 2013-12-17 | 2018-01-23 | Fujitsu Limited | Information processing system, control program, and control method |
Families Citing this family (121)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6952722B1 (en) * | 2002-01-22 | 2005-10-04 | Cisco Technology, Inc. | Method and system using peer mapping system call to map changes in shared memory to all users of the shared memory |
US6725284B2 (en) * | 2002-04-25 | 2004-04-20 | International Business Machines Corporation | Logical partition hosted virtual input/output using shared translation control entries |
AU2003298560A1 (en) | 2002-08-23 | 2004-05-04 | Exit-Cube, Inc. | Encrypting operating system |
US20040226015A1 (en) * | 2003-05-09 | 2004-11-11 | Leonard Ozgur C. | Multi-level computing resource scheduling control for operating system partitions |
US20050076179A1 (en) * | 2003-10-02 | 2005-04-07 | International Business Machines Corporation | Cache optimized logical partitioning a symmetric multi-processor data processing system |
US7234032B2 (en) * | 2003-11-20 | 2007-06-19 | International Business Machines Corporation | Computerized system, method and program product for managing an enterprise storage system |
US7975270B2 (en) * | 2004-03-10 | 2011-07-05 | International Business Machines Corporation | Facilitating allocation of resources in a heterogeneous computing environment |
US20050216716A1 (en) * | 2004-03-29 | 2005-09-29 | Hoffman Philip M | System and method for licensing and distribution of I/O in partitioned computer systems |
US7530071B2 (en) * | 2004-04-22 | 2009-05-05 | International Business Machines Corporation | Facilitating access to input/output resources via an I/O partition shared by multiple consumer partitions |
US7277985B2 (en) * | 2004-07-13 | 2007-10-02 | International Business Machines Corporation | Method, system and program product for storing downloadable content on a plurality of enterprise storage system (ESS) cells |
US8898246B2 (en) * | 2004-07-29 | 2014-11-25 | Hewlett-Packard Development Company, L.P. | Communication among partitioned devices |
US7506343B2 (en) * | 2004-08-19 | 2009-03-17 | International Business Machines Corporation | System and method for passing information from one device driver to another |
US20060168214A1 (en) * | 2004-10-29 | 2006-07-27 | International Business Machines Corporation | System for managing logical partition preemption |
EP1829272A4 (en) * | 2004-12-23 | 2011-02-16 | Redphone Security Inc | TRANSLATION ENGINE FOR COMPUTER AUTHORIZATIONS BETWEEN AN ACTIVE DIRECTORY AND MAINFRAME SYSTEMS |
US7412705B2 (en) | 2005-01-04 | 2008-08-12 | International Business Machines Corporation | Method for inter partition communication within a logical partitioned data processing system |
US7549151B2 (en) * | 2005-02-14 | 2009-06-16 | Qnx Software Systems | Fast and memory protected asynchronous message scheme in a multi-process and multi-thread environment |
US8286157B2 (en) * | 2005-02-28 | 2012-10-09 | International Business Machines Corporation | Method, system and program product for managing applications in a shared computer infrastructure |
US7474618B2 (en) * | 2005-03-02 | 2009-01-06 | Objective Interface Systems, Inc. | Partitioning communication system |
US8219823B2 (en) * | 2005-03-04 | 2012-07-10 | Carter Ernst B | System for and method of managing access to a system using combinations of user information |
US20060206891A1 (en) * | 2005-03-10 | 2006-09-14 | International Business Machines Corporation | System and method of maintaining strict hardware affinity in a virtualized logical partitioned (LPAR) multiprocessor system while allowing one processor to donate excess processor cycles to other partitions when warranted |
US8667184B2 (en) * | 2005-06-03 | 2014-03-04 | Qnx Software Systems Limited | Distributed kernel operating system |
US7840682B2 (en) | 2005-06-03 | 2010-11-23 | QNX Software Systems, GmbH & Co. KG | Distributed kernel operating system |
US7685107B2 (en) * | 2005-06-07 | 2010-03-23 | International Business Machines Corporation | Apparatus, system, and method for scanning a partitioned data set |
US7441112B2 (en) * | 2005-06-30 | 2008-10-21 | Intel Corporation | Offloading the processing of a network protocol stack |
US7463268B2 (en) * | 2005-09-15 | 2008-12-09 | Microsoft Corporation | Providing 3D graphics across partitions of computing device |
US7680096B2 (en) * | 2005-10-28 | 2010-03-16 | Qnx Software Systems Gmbh & Co. Kg | System for configuring switches in a network |
US8230059B1 (en) * | 2005-11-08 | 2012-07-24 | Hewlett-Packard Development Company, L.P. | Method of monitoring resource usage in computing environment |
US7945913B2 (en) * | 2006-01-19 | 2011-05-17 | International Business Machines Corporation | Method, system and computer program product for optimizing allocation of resources on partitions of a data processing system |
US7904547B2 (en) | 2006-02-21 | 2011-03-08 | International Business Machines Corporation | Method, system, and program product for optimizing monitoring and discovery services for a grid computing environment |
US8117611B2 (en) * | 2006-03-01 | 2012-02-14 | International Business Machines Corporation | Method, system, and program product for deploying a platform dependent application in a grid environment |
US20070239965A1 (en) * | 2006-03-31 | 2007-10-11 | Saul Lewites | Inter-partition communication |
US8327115B2 (en) | 2006-04-12 | 2012-12-04 | Soft Machines, Inc. | Plural matrices of execution units for processing matrices of row dependent instructions in single clock cycle in super or separate mode |
US20070288938A1 (en) * | 2006-06-12 | 2007-12-13 | Daniel Zilavy | Sharing data between partitions in a partitionable system |
US8447936B2 (en) * | 2006-06-30 | 2013-05-21 | Microsoft Corporation | Module state management in a virtual machine environment |
US8214828B2 (en) * | 2006-06-30 | 2012-07-03 | Microsoft Corporation | Module state management in a virtual machine environment |
US8782671B2 (en) * | 2006-07-26 | 2014-07-15 | Hewlett-Packard Development Company, L. P. | Systems and methods for flexibly controlling resource usage by a driver domain on behalf of a virtual machine |
US20080028399A1 (en) * | 2006-07-26 | 2008-01-31 | Diwaker Gupta | System and method for attributing to a corresponding virtual machine CPU utilization of a network driver domain based on observed communication through a virtualized interface |
US7844709B2 (en) * | 2006-09-20 | 2010-11-30 | International Business Machines Corporation | Method and apparatus for managing central processing unit resources of a logically partitioned computing environment without shared memory access |
US8732699B1 (en) | 2006-10-27 | 2014-05-20 | Hewlett-Packard Development Company, L.P. | Migrating virtual machines between physical machines in a define group |
US9092250B1 (en) | 2006-10-27 | 2015-07-28 | Hewlett-Packard Development Company, L.P. | Selecting one of plural layouts of virtual machines on physical machines |
US8185893B2 (en) * | 2006-10-27 | 2012-05-22 | Hewlett-Packard Development Company, L.P. | Starting up at least one virtual machine in a physical machine by a load balancer |
US8296760B2 (en) * | 2006-10-27 | 2012-10-23 | Hewlett-Packard Development Company, L.P. | Migrating a virtual machine from a first physical machine in response to receiving a command to lower a power mode of the first physical machine |
EP2523101B1 (en) | 2006-11-14 | 2014-06-04 | Soft Machines, Inc. | Apparatus and method for processing complex instruction formats in a multi- threaded architecture supporting various context switch modes and virtualization schemes |
US7987469B2 (en) * | 2006-12-14 | 2011-07-26 | Intel Corporation | RDMA (remote direct memory access) data transfer in a virtual environment |
US7921453B2 (en) * | 2006-12-22 | 2011-04-05 | Intel Corporation | Authenticated distributed detection and inference |
US7853336B2 (en) * | 2007-02-27 | 2010-12-14 | Rockwell Automation Technologies, Inc. | Dynamic versioning utilizing multiple controller engine instances to limit complications |
US20080208374A1 (en) * | 2007-02-27 | 2008-08-28 | Rockwell Automation Technologies, Inc. | Testing utilizing controller engine instances |
US7899559B2 (en) * | 2007-02-27 | 2011-03-01 | Rockwell Automation Technologies, Inc. | Language-based organization of controller engine instances |
US8856522B2 (en) | 2007-02-27 | 2014-10-07 | Rockwell Automation Technologies | Security, safety, and redundancy employing controller engine instances |
US7684876B2 (en) * | 2007-02-27 | 2010-03-23 | Rockwell Automation Technologies, Inc. | Dynamic load balancing using virtual controller instances |
US7797060B2 (en) * | 2007-02-27 | 2010-09-14 | Rockwell Automation Technologies, Inc. | Prioritization associated with controller engine instances |
US7778714B2 (en) * | 2007-02-27 | 2010-08-17 | Rockwell Automation Technologies, Inc. | On-line editing associated with controller engine instances |
US7778713B2 (en) * | 2007-02-27 | 2010-08-17 | Rockwell Automation Technologies, Inc. | Construction of an industrial control system using multiple instances of industrial control engines |
US7987004B2 (en) * | 2007-02-27 | 2011-07-26 | Rockwell Automation Technologies, Inc. | Scalability related to controller engine instances |
US7870223B2 (en) * | 2007-02-27 | 2011-01-11 | Rockwell Automation Technologies, Inc. | Services associated with an industrial environment employing controller engine instances |
US7904564B2 (en) * | 2007-05-21 | 2011-03-08 | International Business Machines Corporation | Method and apparatus for migrating access to block storage |
US20090158299A1 (en) * | 2007-10-31 | 2009-06-18 | Carter Ernst B | System for and method of uniform synchronization between multiple kernels running on single computer systems with multiple CPUs installed |
US8341626B1 (en) | 2007-11-30 | 2012-12-25 | Hewlett-Packard Development Company, L. P. | Migration of a virtual machine in response to regional environment effects |
US20090164994A1 (en) * | 2007-12-20 | 2009-06-25 | Virtual Computer, Inc. | Virtual computing management systems and methods |
US20110040812A1 (en) * | 2007-12-20 | 2011-02-17 | Virtual Computer, Inc. | Layered Virtual File System |
US8019964B2 (en) * | 2008-01-11 | 2011-09-13 | International Buisness Machines Corporation | Dynamic address translation with DAT protection |
US8041922B2 (en) * | 2008-01-11 | 2011-10-18 | International Business Machines Corporation | Enhanced dynamic address translation with load real address function |
US8037278B2 (en) * | 2008-01-11 | 2011-10-11 | International Business Machines Corporation | Dynamic address translation with format control |
US8335906B2 (en) * | 2008-01-11 | 2012-12-18 | International Business Machines Corporation | Perform frame management function instruction for clearing blocks of main storage |
US8103851B2 (en) | 2008-01-11 | 2012-01-24 | International Business Machines Corporation | Dynamic address translation with translation table entry format control for indentifying format of the translation table entry |
US8417916B2 (en) * | 2008-01-11 | 2013-04-09 | International Business Machines Corporation | Perform frame management function instruction for setting storage keys and clearing blocks of main storage |
US8117417B2 (en) | 2008-01-11 | 2012-02-14 | International Business Machines Corporation | Dynamic address translation with change record override |
US8151083B2 (en) | 2008-01-11 | 2012-04-03 | International Business Machines Corporation | Dynamic address translation with frame management |
US8041923B2 (en) * | 2008-01-11 | 2011-10-18 | International Business Machines Corporation | Load page table entry address instruction execution based on an address translation format control field |
US8082405B2 (en) * | 2008-01-11 | 2011-12-20 | International Business Machines Corporation | Dynamic address translation with fetch protection |
US8677098B2 (en) | 2008-01-11 | 2014-03-18 | International Business Machines Corporation | Dynamic address translation with fetch protection |
US8086811B2 (en) | 2008-02-25 | 2011-12-27 | International Business Machines Corporation | Optimizations of a perform frame management function issued by pageable guests |
US8095773B2 (en) * | 2008-02-26 | 2012-01-10 | International Business Machines Corporation | Dynamic address translation with translation exception qualifier |
US8291426B2 (en) * | 2008-06-02 | 2012-10-16 | Microsoft Corporation | Memory allocators corresponding to processor resources |
US8285719B1 (en) | 2008-08-08 | 2012-10-09 | The Research Foundation Of State University Of New York | System and method for probabilistic relational clustering |
CN101668317B (zh) * | 2008-09-04 | 2012-07-11 | 华为技术有限公司 | 一种网络资源预留的方法、系统和装置 |
US8954977B2 (en) * | 2008-12-09 | 2015-02-10 | Intel Corporation | Software-based thread remapping for power savings |
US20110055299A1 (en) * | 2008-12-18 | 2011-03-03 | Virtual Computer, Inc. | Managing User Data in a Layered Virtual Workspace |
US8245234B2 (en) * | 2009-08-10 | 2012-08-14 | Avaya Inc. | Credit scheduler for ordering the execution of tasks |
EP2539818A1 (en) * | 2010-02-23 | 2013-01-02 | Astronautics Corporation Of America | Single processor class-3 electronic flight bag |
US8615764B2 (en) * | 2010-03-31 | 2013-12-24 | International Business Machines Corporation | Dynamic system scheduling |
US8477610B2 (en) * | 2010-05-31 | 2013-07-02 | Microsoft Corporation | Applying policies to schedule network bandwidth among virtual machines |
KR101685247B1 (ko) | 2010-09-17 | 2016-12-09 | 소프트 머신즈, 인크. | 조기 원거리 분기 예측을 위한 섀도우 캐시를 포함하는 단일 사이클 다중 분기 예측 |
EP2689327B1 (en) | 2011-03-25 | 2021-07-28 | Intel Corporation | Executing instruction sequence code blocks by using virtual cores instantiated by partitionable engines |
KR101966712B1 (ko) | 2011-03-25 | 2019-04-09 | 인텔 코포레이션 | 분할가능한 엔진에 의해 인스턴스화된 가상 코어를 이용한 코드 블록의 실행을 지원하는 메모리 프래그먼트 |
CN108376097B (zh) | 2011-03-25 | 2022-04-15 | 英特尔公司 | 用于通过使用由可分割引擎实例化的虚拟核来支持代码块执行的寄存器文件段 |
US9792136B2 (en) | 2011-04-28 | 2017-10-17 | Microsoft Technology Licensing, Llc | Hardware assisted inter hypervisor partition data transfers |
KR101639853B1 (ko) | 2011-05-20 | 2016-07-14 | 소프트 머신즈, 인크. | 복수의 엔진에 의해 명령어 시퀀스들의 실행을 지원하기 위한 자원들 및 상호접속 구조들의 비집중 할당 |
CN103649931B (zh) * | 2011-05-20 | 2016-10-12 | 索夫特机械公司 | 用于支持由多个引擎执行指令序列的互连结构 |
CN103827823A (zh) | 2011-07-29 | 2014-05-28 | 惠普发展公司,有限责任合伙企业 | 迁移虚拟机 |
US8843669B2 (en) | 2011-09-09 | 2014-09-23 | Microsoft Corporation | Guest partition high CPU usage mitigation when performing data transfers in a guest partition |
US9558048B2 (en) * | 2011-09-30 | 2017-01-31 | Oracle International Corporation | System and method for managing message queues for multinode applications in a transactional middleware machine environment |
WO2013077876A1 (en) | 2011-11-22 | 2013-05-30 | Soft Machines, Inc. | A microprocessor accelerated code optimizer |
KR101703401B1 (ko) | 2011-11-22 | 2017-02-06 | 소프트 머신즈, 인크. | 다중 엔진 마이크로프로세서용 가속 코드 최적화기 |
US9170849B2 (en) | 2012-01-09 | 2015-10-27 | Microsoft Technology Licensing, Llc | Migration of task to different pool of resources based on task retry count during task lease |
US8904008B2 (en) | 2012-01-09 | 2014-12-02 | Microsoft Corporation | Assignment of resources in virtual machine pools |
US9372735B2 (en) | 2012-01-09 | 2016-06-21 | Microsoft Technology Licensing, Llc | Auto-scaling of pool of virtual machines based on auto-scaling rules of user associated with the pool |
JP5894496B2 (ja) * | 2012-05-01 | 2016-03-30 | ルネサスエレクトロニクス株式会社 | 半導体装置 |
US9569216B2 (en) | 2013-03-15 | 2017-02-14 | Soft Machines, Inc. | Method for populating a source view data structure by using register template snapshots |
US9904625B2 (en) | 2013-03-15 | 2018-02-27 | Intel Corporation | Methods, systems and apparatus for predicting the way of a set associative cache |
US9811342B2 (en) | 2013-03-15 | 2017-11-07 | Intel Corporation | Method for performing dual dispatch of blocks and half blocks |
WO2014151018A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for executing multithreaded instructions grouped onto blocks |
WO2014150971A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for dependency broadcasting through a block organized source view data structure |
WO2014150806A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for populating register view data structure by using register template snapshots |
US9891924B2 (en) | 2013-03-15 | 2018-02-13 | Intel Corporation | Method for implementing a reduced size register view data structure in a microprocessor |
US10140138B2 (en) | 2013-03-15 | 2018-11-27 | Intel Corporation | Methods, systems and apparatus for supporting wide and efficient front-end operation with guest-architecture emulation |
WO2014150991A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for implementing a reduced size register view data structure in a microprocessor |
US10275255B2 (en) | 2013-03-15 | 2019-04-30 | Intel Corporation | Method for dependency broadcasting through a source organized source view data structure |
WO2014151043A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines, Inc. | A method for emulating a guest centralized flag architecture by using a native distributed flag architecture |
US9886279B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Method for populating and instruction view data structure by using register template snapshots |
CN103279389B (zh) * | 2013-04-28 | 2016-06-22 | 中国工商银行股份有限公司 | 一种主机批量负载的调度方法以及调度系统 |
US9652294B2 (en) | 2013-11-25 | 2017-05-16 | International Business Machines Corporation | Cross-platform workload processing |
US9535746B2 (en) * | 2013-12-19 | 2017-01-03 | International Business Machines Corporation | Honoring hardware entitlement of a hardware thread |
US9342372B1 (en) | 2015-03-23 | 2016-05-17 | Bmc Software, Inc. | Dynamic workload capping |
US9680657B2 (en) | 2015-08-31 | 2017-06-13 | Bmc Software, Inc. | Cost optimization in dynamic workload capping |
CN106210109B (zh) * | 2016-07-26 | 2021-07-13 | 通联支付网络服务股份有限公司 | 一种用于综合支付的产品系统 |
US10275169B2 (en) | 2017-01-18 | 2019-04-30 | Microsoft Technology Licensing, Llc | Shared memory in memory isolated partitions |
US10706143B2 (en) * | 2017-05-19 | 2020-07-07 | Intel Corporation | Techniques for secure-chip memory for trusted execution environments |
CN111522569B (zh) * | 2020-05-09 | 2023-08-18 | 中瓴智行(成都)科技有限公司 | 基于Hypervisor的嵌入式多系统升级方法及计算机可读存储介质 |
US11604657B2 (en) * | 2021-04-30 | 2023-03-14 | Ncr Corporation | Containerized point-of-sale (POS) system and technique for operating |
CN113609071A (zh) * | 2021-07-28 | 2021-11-05 | 北京金山云网络技术有限公司 | 一种用于消息队列的自动扩容方法及装置 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS642145A (en) * | 1987-06-25 | 1989-01-06 | Fujitsu Ltd | Resource control system for virtual computer system |
JPH07295841A (ja) * | 1992-10-19 | 1995-11-10 | Internatl Business Mach Corp <Ibm> | 動的に資源を再構成するための方法及びシステム |
JP2638065B2 (ja) * | 1988-05-11 | 1997-08-06 | 富士通株式会社 | 計算機システム |
JPH1027167A (ja) * | 1996-07-12 | 1998-01-27 | Hitachi Ltd | 並列計算機の負荷分散方法 |
JPH10334057A (ja) * | 1997-06-04 | 1998-12-18 | Nippon Telegr & Teleph Corp <Ntt> | 分散システム環境におけるバッチジョブの動的負荷分散処理方法およびそのシステム |
JP2000132530A (ja) * | 1997-11-04 | 2000-05-12 | Digital Equip Corp <Dec> | マルチプロセッサコンピュ―タシステム及びその動作方法 |
WO2000036509A2 (en) * | 1998-12-18 | 2000-06-22 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5269009A (en) * | 1990-09-04 | 1993-12-07 | International Business Machines Corporation | Processor system with improved memory transfer means |
US5241593A (en) * | 1991-05-07 | 1993-08-31 | Wagner Ronald D | Telephone and telephone cord retraction device, and method of making |
EP0549924A1 (en) * | 1992-01-03 | 1993-07-07 | International Business Machines Corporation | Asynchronous co-processor data mover method and means |
US5414851A (en) * | 1992-06-15 | 1995-05-09 | International Business Machines Corporation | Method and means for sharing I/O resources by a plurality of operating systems |
US5434975A (en) * | 1992-09-24 | 1995-07-18 | At&T Corp. | System for interconnecting a synchronous path having semaphores and an asynchronous path having message queuing for interprocess communications |
US5586260A (en) * | 1993-02-12 | 1996-12-17 | Digital Equipment Corporation | Method and apparatus for authenticating a client to a server in computer systems which support different security mechanisms |
US5675797A (en) * | 1994-05-24 | 1997-10-07 | International Business Machines Corporation | Goal-oriented resource allocation manager and performance index technique for servers |
US5771383A (en) * | 1994-12-27 | 1998-06-23 | International Business Machines Corp. | Shared memory support method and apparatus for a microkernel data processing system |
US5675739A (en) | 1995-02-03 | 1997-10-07 | International Business Machines Corporation | Apparatus and method for managing a distributed data processing system workload according to a plurality of distinct processing goal types |
US5768503A (en) * | 1995-09-25 | 1998-06-16 | International Business Machines Corporation | Middleware program with enhanced security |
US5931938A (en) * | 1996-12-12 | 1999-08-03 | Sun Microsystems, Inc. | Multiprocessor computer having configurable hardware system domains |
US6233242B1 (en) * | 1996-12-30 | 2001-05-15 | Compaq Computer Corporation | Network switch with shared memory system |
US6301616B1 (en) * | 1997-04-11 | 2001-10-09 | Microsoft Corporation | Pledge-based resource allocation system |
US6075938A (en) * | 1997-06-10 | 2000-06-13 | The Board Of Trustees Of The Leland Stanford Junior University | Virtual machine monitors for scalable multiprocessors |
US6332180B1 (en) * | 1998-06-10 | 2001-12-18 | Compaq Information Technologies Group, L.P. | Method and apparatus for communication in a multi-processor computer system |
US6542926B2 (en) * | 1998-06-10 | 2003-04-01 | Compaq Information Technologies Group, L.P. | Software partitioned multi-processor system with flexible resource sharing levels |
US6301615B1 (en) * | 1998-10-14 | 2001-10-09 | Sun Microsystems, Inc. | Cluster performance monitoring utility |
JP4123621B2 (ja) * | 1999-02-16 | 2008-07-23 | 株式会社日立製作所 | 主記憶共有型マルチプロセッサシステム及びその共有領域設定方法 |
US7523454B2 (en) * | 2001-03-06 | 2009-04-21 | Hewlett-Packard Development Company, L.P. | Apparatus and method for routing a transaction to a partitioned server |
-
2001
- 2001-03-08 US US09/801,993 patent/US6985951B2/en not_active Expired - Lifetime
-
2002
- 2002-02-01 AU AU2002228206A patent/AU2002228206A1/en not_active Abandoned
- 2002-02-01 CA CA2435978A patent/CA2435978C/en not_active Expired - Lifetime
- 2002-02-01 EP EP02710154.2A patent/EP1386226B1/en not_active Expired - Lifetime
- 2002-02-01 JP JP2002571989A patent/JP3980487B2/ja not_active Expired - Lifetime
- 2002-02-01 WO PCT/GB2002/000456 patent/WO2002073397A2/en active Application Filing
- 2002-02-01 CN CNB028061241A patent/CN1280725C/zh not_active Expired - Lifetime
- 2002-02-01 KR KR1020037011808A patent/KR100612059B1/ko active IP Right Grant
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS642145A (en) * | 1987-06-25 | 1989-01-06 | Fujitsu Ltd | Resource control system for virtual computer system |
JP2638065B2 (ja) * | 1988-05-11 | 1997-08-06 | 富士通株式会社 | 計算機システム |
JPH07295841A (ja) * | 1992-10-19 | 1995-11-10 | Internatl Business Mach Corp <Ibm> | 動的に資源を再構成するための方法及びシステム |
JPH1027167A (ja) * | 1996-07-12 | 1998-01-27 | Hitachi Ltd | 並列計算機の負荷分散方法 |
JPH10334057A (ja) * | 1997-06-04 | 1998-12-18 | Nippon Telegr & Teleph Corp <Ntt> | 分散システム環境におけるバッチジョブの動的負荷分散処理方法およびそのシステム |
JP2000132530A (ja) * | 1997-11-04 | 2000-05-12 | Digital Equip Corp <Dec> | マルチプロセッサコンピュ―タシステム及びその動作方法 |
WO2000036509A2 (en) * | 1998-12-18 | 2000-06-22 | Unisys Corporation | Computer system and method for operating multiple operating systems in different partitions of the computer system and for allowing the different partitions to communicate with one another through shared memory |
JP2002532806A (ja) * | 1998-12-18 | 2002-10-02 | ユニシス コーポレーション | コンピュータ・システムの異なるパーティション中で複数のオペレーティング・システムを動作させ、異なるパーティションが共用メモリを介して相互に通信できるようにするコンピュータ・システムおよび方法 |
Non-Patent Citations (1)
Title |
---|
KINSHUK GOVIL ET AL.: "Cellular disco: resource management using virtual clusters on shared-memory multiprocessors", ACM TRANSACTIONS ON COMPUTER SYSTEMS (TOCS), vol. Volume 18,Issue 3, JPN4006002871, August 2000 (2000-08-01), pages 229 - 262, ISSN: 0000865711 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007099587A1 (ja) * | 2006-02-28 | 2007-09-07 | Fujitsu Limited | コンピュータシステム及びコンピュータシステム構成方法 |
US7865686B2 (en) | 2006-03-22 | 2011-01-04 | Nec Corporation | Virtual computer system, and physical resource reconfiguration method and program thereof |
JP2013546101A (ja) * | 2010-12-16 | 2013-12-26 | マイクロソフト コーポレーション | 物理的環境のカーネル認識 |
US10346276B2 (en) | 2010-12-16 | 2019-07-09 | Microsoft Technology Licensing, Llc | Kernel awareness of physical environment |
JP2014038459A (ja) * | 2012-08-15 | 2014-02-27 | Toshiba Corp | 仮想os制御装置、システム、方法およびプログラム |
US9875056B2 (en) | 2013-12-17 | 2018-01-23 | Fujitsu Limited | Information processing system, control program, and control method |
US9798563B2 (en) | 2014-03-20 | 2017-10-24 | Fujitsu Limited | Network management device, information processing system, and program |
Also Published As
Publication number | Publication date |
---|---|
AU2002228206A1 (en) | 2002-09-24 |
KR20030086298A (ko) | 2003-11-07 |
CA2435978A1 (en) | 2002-09-19 |
CN1280725C (zh) | 2006-10-18 |
EP1386226A2 (en) | 2004-02-04 |
JP3980487B2 (ja) | 2007-09-26 |
CA2435978C (en) | 2013-05-14 |
KR100612059B1 (ko) | 2006-08-14 |
US20020129085A1 (en) | 2002-09-12 |
WO2002073397A3 (en) | 2003-11-27 |
US6985951B2 (en) | 2006-01-10 |
CN1496508A (zh) | 2004-05-12 |
EP1386226B1 (en) | 2015-10-28 |
WO2002073397A2 (en) | 2002-09-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3980487B2 (ja) | 区分処理環境におけるリソース平衡化 | |
JP2004535615A (ja) | 区分処理環境における共有i/o | |
US7089558B2 (en) | Inter-partition message passing method, system and program product for throughput measurement in a partitioned processing environment | |
US20020129274A1 (en) | Inter-partition message passing method, system and program product for a security server in a partitioned processing environment | |
US8776050B2 (en) | Distributed virtual machine monitor for managing multiple virtual resources across multiple physical nodes | |
US8725913B2 (en) | Numa I/O framework | |
CN100573459C (zh) | 用于网络、块和文件输入及输出的卸载堆栈 | |
JP5159884B2 (ja) | 論理区分の間におけるネットワーク・アダプタ・リソース割振り | |
EP1851627B1 (en) | Virtual adapter destruction on a physical adapter that supports virtual adapters | |
EP1508855A2 (en) | Method and apparatus for providing virtual computing services | |
KR102103596B1 (ko) | 계산 작업을 처리하기 위한 컴퓨터 클러스터 장치 및 이를 작동시키기 위한 방법 | |
US8244827B2 (en) | Transferring a logical partition (‘LPAR’) between two server computing devices based on LPAR customer requirements | |
US20050080982A1 (en) | Virtual host bus adapter and method | |
US20090133099A1 (en) | Methods and systems for transparent software license suspension | |
JP2002505471A (ja) | 遠隔処理の中断および継続の方法と装置 | |
KR100458104B1 (ko) | 파티션 처리 환경을 위한 이종 클라이언트 서버 방법,시스템 및 프로그램 제품 | |
Jones | NAS requirements checklist for job queuing/scheduling software | |
Yu et al. | GatorCloud: a fine-grained and dynamic resourcesharing architecture for multiple cloud services | |
Hasan et al. | Evolution Towards Cloud: Overview of Next Generation Computing Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060104 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060214 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060327 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060926 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20061211 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20061218 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070312 |
|
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: 20070619 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070627 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3980487 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100706 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110706 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110706 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120706 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130706 Year of fee payment: 6 |
|
EXPY | Cancellation because of completion of term |