JP3591883B2 - 計算機及びそのシステム及びその制御方法 - Google Patents

計算機及びそのシステム及びその制御方法 Download PDF

Info

Publication number
JP3591883B2
JP3591883B2 JP20865094A JP20865094A JP3591883B2 JP 3591883 B2 JP3591883 B2 JP 3591883B2 JP 20865094 A JP20865094 A JP 20865094A JP 20865094 A JP20865094 A JP 20865094A JP 3591883 B2 JP3591883 B2 JP 3591883B2
Authority
JP
Japan
Prior art keywords
processor
computer
system call
call
execution
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.)
Expired - Fee Related
Application number
JP20865094A
Other languages
English (en)
Other versions
JPH0877027A (ja
Inventor
茂夫 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP20865094A priority Critical patent/JP3591883B2/ja
Publication of JPH0877027A publication Critical patent/JPH0877027A/ja
Application granted granted Critical
Publication of JP3591883B2 publication Critical patent/JP3591883B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【産業上の利用分野】
本発明は計算機及び計算機システム及びその制御方法に関するものであり、通信媒体を介して接続し、それぞれのメモリを互いに利用することが可能な計算機及びそのシステム及びその制御方法に関するものである。
【0002】
【従来の技術】
主に複数台の計算機が高速な通信回線で結合され、各計算機に配置されたメモリ(またはその一部)が全体で単一のメモリ空間を構成し、システム全体でNUMA(NONUNIFORM MEMORY ACCESS)型のマルチプロセッサシステムの様な形態で動作可能な情報処理装置がある。つまり、ある計算機から見て自計算機に配置されたメモリのアクセスは高速で、他の計算機に配置されたメモリへのアクセスは速度が落ちるが、全体で単一のメモリ空間を成すためマルチプロセッサシステムとしてもとらえることができる形態である。
【0003】
従来、LANなどの低速な通信回線で結ばれた計算機システムの場合、ユーザプログラムをプロセスとして生成、起動する際、物理メモリの一部を確保し、動作させている。近年では、仮想記憶機構を持つOS(オペレーティングシステム)が登場し、確保しようとする物理メモリが不足している場合であっても、使用率の低い物理ページの内容を自計算機に付随する二次記憶装置または他の計算機などにページアウトすることで自計算機上に物理ページを確保することも行っている。
【0004】
しかしながら、かかる仮想記憶機構を持つOSであっても、たとえ通信回線で結ばれた他の計算機上の物理メモリが空いていて、それを間接的に利用することはできても直接利用することはできなかった。これは、通信回線が低速であったため、他の計算機の物理メモリを直接見せるようなハードウェア構成をとれなかったためである。
【0005】
ところが、光ケーブルなど、信頼性もあり計算機の内部バスにある程度近い性能を持つ通信媒体が登場してきた。これによれば、物理メモリを直接他の計算機に見せるような構成も可能となり、各計算機に配置されたメモリを(またはその一部を)全体で単一のメモリ空間として、どの計算機からでも直接アクセス可能にすることができるようなシステムが提案されてきている。このようなシステムの場合、上記のようなページアウトを行わなくても他の計算機上のメモリが空いていれば、それを確保し直接利用することが可能となる(こうしたページをリモートページと呼ぶ)。
【0006】
【発明が解決しようとする課題】
しかしながら、プロセスを生成しようとした計算機上の物理メモリが不足していた時、上記のように他の計算機のページを確保する際、なんの規則性も持たず複数台の計算機から闇雲にリモートページを確保していくと、プロセスの実行に必要となるページが複数台の計算機に分散配置され、このような状態のままプロセスが実行し続けると、システムの処理効率が低下してしまうという問題点が予想される。
【0007】
これは、上記光ケーブルが高速になったといっても、それ以前の通信媒体にたいするものであり、プロセッサとそのプロセッサが使用する物理メモリが同一計算機上の場合と比較した場合にははるかにメモリアクセスが遅いからである。尚、他計算機上のメモリを自計算機のプロセッサがアクセスすることを、リモートアクセスと呼ぶ。
【0008】
そこで、本願出願人は、上記の問題点を解消するため、以下の提案をしている。すなわち、
プロセスが生成、起動され物理ページを確保していく際、プロセスが動作している計算機上にページが確保できなくなると、他の計算機上から確保しようと試みるが、この時複数台の計算機からばらばらに確保していくのではなく、できるだけ一つの計算機上から確保していくようにする。そして、該プロセスを現在のままのプロセッサで実行させ続けた方が効率がいいか、または他の計算機上に設置されているプロセッサの管理のみを移動して来て、そのプロセッサで実行させた方が効率がいいかを判断し、もし後者であると判断した場合には、効率のよいと判断されたプロセッサの管理を移動してきて該プロセスの実行に割り当てる。この結果、プロセス処理効率を向上できる計算機システムを構築することが可能になる。尚、この時、管理を移動してきたプロセッサをリモートプロセッサと呼ぶことにする。
【0009】
しかし、このようにリモートページ、そしてリモートプロセッサをプロセスの実行に割り当てると、そのプロセス自体の実行効率は良くなるものの、もし、プロセスがシステムコールを発行し、OSに制御が移ると、OS内部の実行は効率が落ちることになる。なぜなら、OSのプログラムコードは自計算機上のメモリに存在しているため、他計算機から管理を移動してきたリモートプロセッサがそのままOSのコードを実行しようとするとリモートメモリアクセスになるためである。
【0010】
【課題を解決するための手段】及び【作用】
本発明はかかる問題点に鑑みなされたものであり、複数の計算機が所定の通信媒体で接続され、それぞれのメモリが互いに利用することが可能な計算機あるいはシステムにおいて、それらシステムのいずれかの計算機で動作しているプロセスがシステムコールを発行した際に、そのシステムコールによる処理を最適なプロセッサでもって実行し、処理を高速に行うことを可能にする計算機及びシステム及び制御方法を提供しようとするものである。
【0011】
この課題を解決するため、例えば本発明の計算機は以下の構成を備える。すなわち、
自計算機が所定の通信媒体を介して他の計算機と接続され、自計算機及び他の計算機のメモリを互いにアクセスすることが可能な計算機であって、
計算機上で動作中のプロセスから自計算機のOS(オペレーティングシステム)にシステムコールがあった場合、当該システムコールの発行元のプロセッサが自計算機のプロセッサか、他計算機のプロセッサかを判定する判定手段と、
該判定手段でもって、他計算機上のプロセッサからのシステムコールであると判定した場合、当該システムコールに対する処理を行うプロセッサとして、自計算機及び前記他計算機のプロセッサの中から選定する選定手段と、
選定されたプロセッサに切換え、自計算機のOSのシステムコール処理を行う切換手段とを備える。
【0012】
ここで、本発明の好適な実施態様によれば、前記判定手段は、個々のプロセッサ固有の情報を獲得する処理を実行することによって判定することが望ましい。これによって、個々のプロセッサを識別可能になるので、システムコールの発行元を判定できる。
【0013】
また、前記選定手段は、自計算機のプロセッサを優先して選定することが望ましい。これによって、システムコールの処理自身は、それに最も近いプロセッサとメモリを使用し、通信媒体を介さずに行うので処理を高速化できる。
【0014】
また、前記選定手段は、更に、自計算機のプロセッサの負荷が所定以上あると判断した場合、前記他計算機のプロセッサを選定する。これにより、自計算機のプロセッサに一律に切り替わるのではなく、その負荷がおおきい場合には他計算機のプロセッサを使用するので、システム全体の速度低下を防ぐことが可能になる。
【0015】
【実施例】
以下、添付図面に従って本発明に係る実施例を詳細に説明する。
【0016】
図1は本発明の一実施例を示す計算機システムの構成を説明するブロック図である。
【0017】
図において、101は光ネットワークなどの高速な通信回線、201、301、401は通信回線101で結ばれた複数台の計算機である。202、302、303、402、403は前記計算機201、301、401に各々一つ以上備えられたMMU(メモリマネイジメントユニット)内蔵のプロセッサ(CPU)、210、410は前記計算機201、401に備えられたユーザインターフェースとしてのディスプレイ&キーボードである。220、320は前記計算機201、301に備えられたハードディスク(HD)装置などの二次記憶装置である。
【0018】
ディスプレイ&キーボード210、410や二次記憶装置220、320は計算機に装備されていなくても構わない。例えばディスプレイ&キーボードが装備されていない計算機301などはサーバマシンまたはプロセッサプールとして利用されることになる。
【0019】
102は、各計算機上で動作するOS(オペレーティングシステム)間での非同期な通信を行うためのCPU間割込機構である。
【0020】
230、330、430は全体でひとつの単一なメモリ空間を成す物理メモリ(個々の計算器で連続する必要はないが、アドレス空間が重ならないメモリ)、240、340、440は各計算機用のローカルメモリである。ローカルメモリは主にOSなどのために必要となるが、物理メモリ230、330、430の一部で代用可能であるため、あってもなくても本発明の実施例の適用の妨げとはならない。
【0021】
各プロセッサは物理メモリ230、330、430をアクセス可能に構成されている。ただし、メモリアクセスを行うプロセッサと同一計算機内部の物理メモリへのアクセスよりも、他の計算機に属する物理メモリのアクセスの方が、通信回線101が介在するため遅くなる。
【0022】
なお、本実施例において、OS250、350、450は、複数プロセッサのスケジューリング、仮想記憶管理などを行い、当然どの計算機上の物理メモリがどの物理アドレスになっているか、といったシステム情報を把握しているものとする。このようなOSは、ほぼ同様の機能を持ったものが各計算機上でそれぞれ動作し、互いに協調的に働くような構成を取る。これによって、各計算機の独立性が向上し、システム全体の柔軟性も向上する。
【0023】
各OSは各計算機上のローカルメモリ240、340、440上で動作しても、物理メモリ230、330、430上で動作しても構わない。
【0024】
ただし、OSのデータ領域の一部は、各OSが管理するメモリ管理の情報やプロセスのスケジューリング情報を交換可能にするため、物理メモリ230、330、430上の情報交換領域に配置しておく。
【0025】
また、OSは自計算機に付随する2次記憶装置からだけでなく、他の計算機に付随する2次記憶装置からも同様に、通信回線101を介してユーザプログラムのローディングができるように構成されている。
【0026】
以下、図2に示すフローチャートを参照しながら、本発明に係る計算機システムにおけるシステムコール実行動作について説明する。
【0027】
図2は本発明に係る計算機システムに於けるシステムコール実行手順の一例を示すフローチャートである。以下、計算機201上でプロセスが起動された場合を例とする。尚、かかる手順(プログラム)は、各計算機のOS部分に設けられているものである。
【0028】
図1に示すようなシステムにおいて、ユーザプログラムがプロセスとして起動され、例えば計算機201上のプロセッサ202でプロセスが動作を開始したとする(ステップS1)。このプロセスが実行を進めていくうちにステップS2の様に、計算機201上のページが不足し、計算機301のリモートページを利用する様になり、かつ計算機301のプロセッサ303の管理がOS350からOS250に移動され上記プロセスに割り当てられた場合を考える。
【0029】
つまり、最初は計算機201上のメモリで動作していたプロセスが、そのメモリ不足に陥り、計算機301上のメモリを利用するようになり、計算機301上の、例えばプロセッサ303の管理が計算機201のOS250に移動した場合である。
【0030】
このような、状況で、ステップS3のように、そのプロセスがシステムコールを発行し、OS250の機能を呼び出したとする。ここで、注目する点は、このシステムコールを発行したプロセッサ(CPU)は、計算機201内のCPU202の場合と、計算機301内のCPU303(勿論CPU302でも構わない)の場合の2通り考えられる点である。以下、前者をローカルプロセッサ、後者をリモートプロセッサという。
【0031】
ステップS4においてOS250は、呼び出しプロセッサ判断手段により、OS250を呼び出したプロセッサが、自計算機(計算機201)のローカルプロセッサなのか、他計算機から管理を移動してきたリモートプロセッサなのかを判断する。
【0032】
この判断は次のように行ってもよい。例えば、自OSの管理下にある全てのプロセッサに一意に識別できる管理番号を付けておき、またそのプロセッサがもともと自計算機上のローカルプロセッサなのか、それとも他計算機から管理を移動してきたリモートプロセッサなのかを区別可能な識別情報を記憶しておく。そして、いつでも自プロセッサの管理番号がいくつなのか、またそれを元に自プロセッサがローカルプロセッサなのかリモートプロセッサなのか判断できるようにしておけばよい。
【0033】
例えば、システムコールを受けた場合、その初期段階で、そのプロセッサ識別情報を獲得する処理を実行し、それでもって判断しても良いであろう。
【0034】
いずれにしても、後述するステップS6、ステップS9の判断の為に、呼び出しプロセッサの管理番号等を、システムコールを行ったプロセスのプロセス管理ブロックに格納しておく。
【0035】
さて、システムコールを行ったプロセッサがローカルプロセッサであると判断した場合、つまり、計算機201のOS250のシステムコールを発行したプロセッサがCPU202であると判断した場合、処理はステップS8に進み、従来通り、そのプロセッサのままシステムコールで指定された各OS内部処理を実行する。
【0036】
また、リモートプロセッサからのシステムコールを受けたと判断した場合、つまり、計算機301のCPU303がOS250のシステムコールを行ったと判断した場合、処理はステップS4からステップS5に進み、実行プロセッサ選定手段により、指定のOS内部処理をどのプロセッサで実行したらよいのかを選定する。この選定方法は以下の様なものが考えられる。
【0037】
もっとも簡単な方法としては、自計算機上のローカルプロセッサ(リモートアクセスでなくなるので効率が高い)でかつ自OSの管理下にあるプロセッサの中からランダムに一つ選択する。別の方式としては、上記の条件に合う複数のプロセッサの中から、ランダムにではなく、もっとも負荷の少ない一つのプロセッサを選択する方法も考えられる。負荷を調べる方法としては、それぞれのプロセッサで実行予定(Ready状態)のプロセッサ数を数え、その値がもっとも少ないものを不可の少ないプロセッサと考える事ができる。ここでは、OS250を考えており、動作するプロセッサはCPU202の1つであるので、無条件にCPU202が選定されることになる。但し、着目しているOSがOS350の場合には、ローカルプロセッサは2つあるので、上記のいずれかの基準で選定することになる。
【0038】
また、自計算機上のローカルプロセッサでかつ自OSの管理下にあるという条件に合うプロセッサがすべて負荷が大きいような場合には、無理にこの条件にあったローカルプロセッサに切り替えるより、呼び出しプロセッサ(リモートプロセッサ)のままOS内部処理を実行した方が効率がよいことも考えられる。なぜなら、プロセッサの負荷が大きいと、他の実行中のプロセスのタイムクオンタムが切れるまでプロセッサの切り替えが行われなかったり、また切り替わったとしても、スケジューリング方法によっては、OS内部処理実行中にも、他の実行予定プロセスにプロセッサを横取りされてしまったりすることも考えられるからである。
【0039】
このような場合には、呼び出しプロセッサをそのまま選定する方がよい。この判断は、ある経験的なしきい値より負荷値が大きいかどうかの比較により行う事ができる。経験的なしきい値は、予め、リモートプロセッサのままOS内部処理を実行した場合の処理時間を計測しておき、また負荷値をいくつか変化させた状態でローカルプロセッサでOS内部処理を実行した場合の処理時間も計測しておく。そして、ローカルプロセッサでの処理時間が、リモートプロセッサのままの処理時間より大きくなってしまうときの負荷値をしきい値とすることができる。また、OS内部処理は複数種類あるため、それぞれの処理によってしきい値が違うことも考えられるので、その場合は、各OS内部処理ごとに異なるしきい値を決定し、設定しても構わない。この場合には、より細かい基準で選定できるので、システム全体のパフォーマンスを最大限に向上させることが可能になる。
【0040】
さて、ステップS5において、実行するプロセッサ(CPU)が選定されると、ステップS6に進み、選定されたプロセッサが元の呼出しプロセッサと同じプロセッサかどうか判定し、呼出しプロセッサと同じだった場合、つまり上記の例だとプロセッサ303だった場合には、ステップ8に進み、異なるプロセッサだった場合にはステップ7に進む。
【0041】
ステップ7では、実行プロセッサ切り替え手段により、選定されたプロセッサに実行を切り替え、それ以降の処理が選定され切り替えられたプロセッサで実行されるようにする。例えば、実行プロセッサ選定手段によりプロセッサ202が選定された場合には、プロセッサ202に切り替わり、以降の処理がプロセッサ202で実行されることになる。
【0042】
実行プロセッサの切り替えは次のようにして行ってもよい。各プロセッサ毎にそれぞれのプロセッサで実行予定のプロセスを管理するキューを持ち、キューには各プロセスを管理する(コンテキスト情報等を格納する)プロセス管理ブロックがつながれ、各プロセッサは自分のキューからプロセスを一つ選び実行していくものとする。キューからの選択は、タイムスライスでラウンドロビン的に行うのが一般的で、プロセスに優先度を持たせ優先度ごとにキューを持つようにしても構わない。
【0043】
このようなシステムにおける、実行プロセッサの切り替えを、プロセッサ303からプロセッサ202への切り替えを例に説明する。先ず、今まで実行していたプロセッサ303のコンテキスト(レジスタ値など)をプロセス管理ブロックに退避し、そのプロセス管理ブロックをプロセッサ202のキューにつなぎかえる。その後、つなぎかえられたプロセスは、プロセッサ202により前述のような選択方法で選択、実行され、実行プロセッサの切り替えが終了となる。一方、プロセッサ303は、自分のキューに他のプロセスがつながっている場合にはそのプロセスを割り当て実行させ、ない場合にはアイドル状態になる。
【0044】
プロセッサの切り替えが終了すると、ステップS8に進み、システムコールの指定に従ったOS内部処理を実行する。OS内部処理が終了すると、ステップS9に進み、プロセッサをもとの呼出しプロセッサに切り替えるかどうかを判断する。ステップ7に進み実行プロセッサを切り替えていた場合には、もとの呼出しプロセッサに切り替える必要があると判断してステップS10に進み、実行プロセッサの切り替えを行っていなかった場合には、呼出しプロセッサへの切り替えが必要がないと判断してステップS11に進む。この判断は、あらかじめステップS4の段階でプロセス管理ブロックに格納してあった呼出しプロセッサのプロセッサ管理番号と、現在実行中のプロセッサの管理番号とを比較すればよい。
【0045】
次にステップS10では、前述の実行プロセッサ切り替え手段により、もとの呼出しプロセッサに切り替えを行う。
【0046】
最後に、ステップS11において、システムコールを発行したプロセスにリターン処理を行い、プロセスとして実行されるユーザプログラムに制御が戻ることになる。
【0047】
以上説明したように、本実施例によれば、生成、起動されたプロセスが、リモートメモリ、リモートプロセッサを利用して動作してシステムコールを行った場合、先ず呼出しプロセッサ判断手段によりシステムコールを行ったプロセッサがローカルプロセッサかリモートプロセッサであるかが判断される。リモートプロセッサであると判断された場合には、次に、実行プロセッサ選定手段によりOS内部処理を行う実行効率の高いプロセッサが選ばれ、実行プロセッサ切り替え手段により選定されたプロセッサに切り替えられ、切り替え後のプロセッサによりOS内部処理が実行される。そして、OS内部処理終了後再び、実行プロセッサ切り替え手段によりもとの呼出しプロセッサに切り替えられ、システムコールを行ったプロセスに制御が戻ることになる。以上により、リモートメモリ、リモートプロセッサを利用して動作するプロセスのシステムコール処理においても、高い処理効率を得ることができるという効果を奏する。
【0048】
尚、本発明は、システム或は装置にプログラムを供給することによって、実現及び達成される場合にも適用できることはいうまでもない。
【0049】
【発明の効果】
以上説明したように本発明によれば、複数の計算機が所定の通信媒体で接続され、それぞれのメモリが互いに利用することが可能な計算機あるいはシステムにおいて、それらシステムのいずれかの計算機で動作しているプロセスがシステムコールを発行した際に、そのシステムコールによる処理を最適なプロセッサでもって実行し、処理を高速に行うことが可能になる。
【0050】
【図面の簡単な説明】
【図1】実施例を示す計算機システムの構成を説明するブロック図である。
【図2】実施例における計算機システムにおけるシステムコール実行手順の一例を示すフローチャートである。
【符号の説明】
101 高速な通信回線
102 CPU間割込機構
201,301,401 通信回線101で結ばれた複数台の計算機
202,302,303,402,403 各計算機に一つ以上備えられたMMU内蔵プロセッサ
210,410 ディスプレイ&キーボード
220,320 ハードディスク装置などの二次記憶装置
230,330,430 全体で単一なメモリ空間をなす物理メモリ
240,340,440 各計算機上のローカルメモリ
250,350,450 各計算機上で動作するOS
260,360,460 情報交換領域

Claims (16)

  1. 自計算機が所定の通信媒体を介して他の計算機と接続され、自計算機及び他の計算機のメモリを互いにアクセスすることが可能な計算機であって、
    計算機上で動作中のプロセスから自計算機のOS(オペレーティングシステム)にシステムコールがあった場合、当該システムコールの発行元のプロセッサが自計算機のプロセッサか、他計算機のプロセッサかを判定する判定手段と、
    該判定手段でもって、他計算機上のプロセッサからのシステムコールであると判定した場合、当該システムコールに対する処理を行うプロセッサ、自計算機及び前記他計算機のプロセッサの中から選定する選定手段と、
    選定されたプロセッサに切換え、自計算機のOSのシステムコール処理を行う切換手段と
    を備えることを特徴とする計算機。
  2. 前記判定手段は、前記システムコールの発行元のプロセッサの識別情報を獲得し、その識別情報に基づいて自計算機のプロセッサか他計算機のプロセッサかを判定することを特徴とする請求項第1項に記載の計算機。
  3. 前記選定手段は、自計算機のプロセッサを優先して選定することを特徴とする請求項第1項に記載の計算機。
  4. 前記選定手段は、更に、自計算機のプロセッサの負荷が所定以上あると判断した場合、前記他計算機のプロセッサを選定することを特徴とする請求項第3項に記載の計算機。
  5. 自計算機が所定の通信媒体を介して他の計算機と接続され、自計算機及び他の計算機のメモリを互いにアクセスすることが可能な計算機の制御方法であって、
    計算機上で動作中のプロセスから自計算機のOS(オペレーティングシステム)のシステムコールがあった場合、当該システムコールの発行元のプロセッサが自計算機のプロセッサか、他計算機のプロセッサかを判定する判定工程と、
    該判定工程でもって、他計算機上のプロセッサからのシステムコールであると判定した場合、当該システムコールに対する処理を行うプロセッサ、自計算機及び前記他計算機のプロセッサの中から選定する選定工程と、
    選定されたプロセッサに切換え、自計算機のOSのシステムコール処理を行う切換工程と
    を備えることを特徴とする計算機の制御方法。
  6. 前記判定工程は、前記システムコールの発行元のプロセッサの識別情報を獲得し、その識別情報に基づいて自計算機のプロセッサか他計算機のプロセッサかを判定することを特徴とする請求項第5項に記載の計算機の制御方法。
  7. 前記選定工程は、自計算機のプロセッサを優先して選定することを特徴とする請求項第5項に記載の計算機の制御方法。
  8. 前記選定工程は、更に、自計算機のプロセッサの負荷が所定以上あると判断した場合、前記他計算機のプロセッサを選定することを特徴とする請求項第7項に記載の計算機の制御方法。
  9. それぞれに独立したメモリを供えた複数の計算機間を所定の通信媒体で接続し、それぞれのメモリを自計算機管理下のメモリとして利用する計算機システムにおいて、
    プロセスとして生成、起動されたユーザプログラムがシステムコールを発行し、OS(オペレーティングシステム)を呼び出した際、そのシステムコールを発行したプロセッサが、自計算機上に設置されているローカルプロセッサなのか、それとも通信媒体で結ばれた他の計算機上に設置され管理のみが前記自計算機上に移行しているだけのリモートプロセッサなのかを判断する呼出しプロセッサ判断手段と、
    前記システムコールの指定に従ったOS内部処理を実行すべきプロセッサを選定する実行プロセッサ選定手段と、
    前記実行プロセッサ選定手段により選定されたプロセッサに切り替えを行う実行プロセッサ切り替え手段と
    を備えることを特徴とする計算機システム。
  10. 前記呼出しプロセッサ判断手段は、前記システムコールを発行したプロセッサの識別情報を獲得し、その識別情報に基づいてローカルプロ セッサかリモートプロセッサかを判断することを特徴とする請求項第9項に記載の計算機システム。
  11. 前記実行プロセッサ選定手段は、ローカルプロセッサを優先して選定することを特徴とする請求項第9項に記載の計算機システム。
  12. 前記実行プロセッサ選定手段は、更に、ローカルプロセッサの負荷が所定以上あると判断した場合、前記リモートプロセッサを選定することを特徴とする請求項第11項に記載の計算機システム。
  13. それぞれに独立したメモリを供えた複数の計算機間を所定の通信媒体で接続し、それぞれのメモリを自計算機管理下のメモリとして利用する計算機システムの制御方法において、
    プロセスとして生成、起動されたユーザプログラムがシステムコールを発行し、OS(オペレーティングシステム)を呼び出した際、そのシステムコールを発行したプロセッサが、自計算機上に設置されているローカルプロセッサなのか、それとも通信媒体で結ばれた他の計算機上に設置され管理のみが前記自計算機上に移行しているだけのリモートプロセッサなのかを判断する呼出しプロセッサ判断工程と、
    前記システムコールの指定に従ったOS内部処理を実行すべきプロセッサを選定する実行プロセッサ選定工程と、
    前記実行プロセッサ選定工程により選定されたプロセッサに切り替えを行う実行プロセッサ切り替え工程と
    を備えることを特徴とする計算機システムの制御方法。
  14. 前記呼出しプロセッサ判断工程は、前記システムコールを発行したプロセッサの識別情報を獲得し、その識別情報に基づいてローカルプロセッサかリモートプロセッサかを判断することを特徴とする請求項第13項に記載の計算機システムの制御方法。
  15. 前記実行プロセッサ選定工程は、ローカルプロセッサを優先して選定することを特徴とする請求項第13項に記載の計算機システムの制御方法。
  16. 前記プロセッサ選定工程は、更に、ローカルプロセッサの負荷が所定以上あると判断した場合、前記リモートプロセッサを選定することを特徴とする請求項第15項に記載の計算機システムの制御方法。
JP20865094A 1994-09-01 1994-09-01 計算機及びそのシステム及びその制御方法 Expired - Fee Related JP3591883B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20865094A JP3591883B2 (ja) 1994-09-01 1994-09-01 計算機及びそのシステム及びその制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20865094A JP3591883B2 (ja) 1994-09-01 1994-09-01 計算機及びそのシステム及びその制御方法

Publications (2)

Publication Number Publication Date
JPH0877027A JPH0877027A (ja) 1996-03-22
JP3591883B2 true JP3591883B2 (ja) 2004-11-24

Family

ID=16559765

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20865094A Expired - Fee Related JP3591883B2 (ja) 1994-09-01 1994-09-01 計算機及びそのシステム及びその制御方法

Country Status (1)

Country Link
JP (1) JP3591883B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05257796A (ja) * 1992-03-11 1993-10-08 Nec Corp 分散共有型メモリ管理方式
JPH05265844A (ja) * 1992-03-19 1993-10-15 Fujitsu Ltd メモリ利用方式
JPH07129518A (ja) * 1993-11-05 1995-05-19 Canon Inc 計算機システム
JP3696901B2 (ja) * 1994-07-19 2005-09-21 キヤノン株式会社 負荷分散方法

Also Published As

Publication number Publication date
JPH0877027A (ja) 1996-03-22

Similar Documents

Publication Publication Date Title
US6871264B2 (en) System and method for dynamic processor core and cache partitioning on large-scale multithreaded, multiprocessor integrated circuits
US7334230B2 (en) Resource allocation in a NUMA architecture based on separate application specified resource and strength preferences for processor and memory resources
KR100733852B1 (ko) 계산기 시스템
US11093297B2 (en) Workload optimization system
US6272612B1 (en) Process for allocating memory in a multiprocessor data processing system
JP4230551B2 (ja) 多重プロセッサを有するコンピュータ・システム
EP3944091B1 (en) Cache allocation method and device, storage medium, and electronic device
JP2010044784A (ja) システムにおける要求のスケジューリング
US6457107B1 (en) Method and apparatus for reducing false sharing in a distributed computing environment
CN115981833A (zh) 一种任务处理方法及装置
US20070055841A1 (en) Memory allocation in a computer system
US5678024A (en) Method and system for dynamic performance resource management within a computer based system
CN102193828B (zh) 从处理器中的并发物理线程的数目中去耦合逻辑线程的数目
JPH0926910A (ja) 情報処理装置及びその方法及び情報処理システム及びその制御方法
US5737534A (en) Task allocation in a system of networked processors
CN116521608A (zh) 数据迁移方法及计算设备
JP3591883B2 (ja) 計算機及びそのシステム及びその制御方法
EP0049521A2 (en) Information processing system
US20080072009A1 (en) Apparatus and method for handling interrupt disabled section and page pinning apparatus and method
JPH02210542A (ja) 仮想計算機システムにおける実行制御方式
JP2002278778A (ja) 対称型マルチプロセッサシステムにおけるスケジュール装置
JPH0484335A (ja) 仮想計算機制御方式
JPH0877026A (ja) 情報処理方法とその装置
JP2585905B2 (ja) マルチタスク実行装置
JP3585956B2 (ja) 情報処理装置及びその方法

Legal Events

Date Code Title Description
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: 20040806

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040824

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20080903

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090903

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100903

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110903

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees