JPH0877026A - Information processing method and device - Google Patents
Information processing method and deviceInfo
- Publication number
- JPH0877026A JPH0877026A JP6207205A JP20720594A JPH0877026A JP H0877026 A JPH0877026 A JP H0877026A JP 6207205 A JP6207205 A JP 6207205A JP 20720594 A JP20720594 A JP 20720594A JP H0877026 A JPH0877026 A JP H0877026A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- group
- information processing
- load state
- lending
- 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
Abstract
(57)【要約】
【目的】 最小限のオーバヘッドで、通信回線に結ばれ
た他の計算機上のプロセッサの資源を有効利用する情報
処理方法と装置を提供する。
【構成】 第1グループ(201)のCPU202の負荷状態を
検知するCPU負荷状態検知部(250)と、第1グループ
以外の各グループ(301、401)のCPU(302、303、402)での
各負荷状態を獲得する他CPU負荷状態獲得部(250)
と、CPU負荷状態検知部で検知された負荷状態と、獲
得された第1のグループ以外の各グループのCPUでの
各処理負荷状態に基づいて、第1のグループ以外の各グ
ループから1つのグループを選択するグループ選択部(2
50)と、選択されたグループからCPUの貸出しを要求
するCPU貸出し要求部(250)と、CPU貸出し要求に
基づき、貸し出すCPUを選択し、前記選択されたCP
Uに、所定のプロセスの実行を許可して実行させる外部
CPU実行部(350)とを備え、CPUの負荷分散を行
う。
(57) [Abstract] [Purpose] To provide an information processing method and apparatus for effectively using resources of a processor on another computer connected to a communication line with a minimum overhead. [Configuration] A CPU load state detection unit (250) that detects the load state of the CPU 202 of the first group (201) and a CPU (302, 303, 402) of each group (301, 401) other than the first group Other CPU load status acquisition unit (250) that acquires each load status
One group from each group other than the first group, based on the load state detected by the CPU load state detection unit and each processing load state in the CPU of each group other than the first group acquired. Group selection section (2
50), a CPU lending request unit (250) for requesting a CPU lending from the selected group, and selecting a CPU to lend based on the CPU lending request, and selecting the selected CP.
U is provided with an external CPU execution unit (350) that permits execution of a predetermined process and executes the process, and distributes the load on the CPU.
Description
【0001】[0001]
【産業上の利用分野】本発明は、情報処理方法とその装
置、特に、複数台の計算機が高速な通信回線で結合さ
れ、各計算機に配置されたメモリ(またはその一部)が
全体で単一のメモリ空間を構成し、例えば、システム全
体でNUMA(Non Uniform Memory Access)型のマル
チプロセッサシステムのような形態で動作可能な情報処
理方法とその装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an information processing method and an apparatus therefor, and in particular, a plurality of computers are connected by a high-speed communication line, and the memory (or a part thereof) arranged in each computer as a whole. The present invention relates to an information processing method and an apparatus which constitute one memory space and can operate in the form of a NUMA (Non Uniform Memory Access) type multiprocessor system as a whole.
【0002】[0002]
【従来の技術】従来、LANなどの低速な通信回線で結
ばれた計算機システムの場合、自計算機上でプログラム
がプロセスとして大量に実行され、プロセッサが混んで
くると、プロセスマイグレーション機能を持つOSの場
合は、実行中のプロセスを通信回線で結ばれた他の計算
機上に移動することにより、他の計算機上のプロセッサ
を有効利用することができる。2. Description of the Related Art Conventionally, in the case of a computer system connected by a low-speed communication line such as a LAN, when a large number of programs are executed as processes on its own computer and the processors are crowded, an OS having a process migration function is used. In this case, by moving the running process to another computer connected by a communication line, the processor on the other computer can be effectively used.
【0003】[0003]
【発明が解決しようとする課題】しかしながら、プロセ
スマイグレーションの場合、プロセスの移動、再実行の
ためには、プロセスの実行に必要なメモリ内容(テキス
トやデータやスタック)そしてOS内部のプロセス管理
テーブルなどを、移動先の計算機上のメモリに転送しな
ければならず、大きなオーバヘッドとなる。However, in the case of process migration, in order to move and re-execute a process, memory contents (text, data, stack) necessary for executing the process, a process management table in the OS, etc. Must be transferred to the memory on the destination computer, resulting in a large overhead.
【0004】また、プロセスの移動とそのプロセス再実
行のためには、以下に示すいくつかの制限を受ける場合
がある。即ち、 1 プロセス生成時にしかその移動できない。 2 移動後のプロセスとはプロセスの親子関係が切れ
る。 3 移動後のプロセスは、新たに子プロセスを生成でき
ない。In addition, there are some restrictions as described below for moving a process and re-executing the process. That is, it can be moved only when one process is created. 2 The parent-child relationship between the process and the moved process is broken. 3 The moved process cannot create a new child process.
【0005】などの制限を受ける。これは、OS内部の
プロセス管理情報が、移動先OSと移動元OSで一貫性
を保つのが非常に難しいためである。本発明は上記従来
例に鑑みてなされたもので、最小限のオーバヘッドで、
またプロセスの生成、実行、管理において、不自由な制
限を受けることなく、通信回線に結ばれた他の計算機上
のプロセッサの資源を有効利用できる情報処理方法と装
置を提供することを目的とする。Subject to restrictions such as This is because it is very difficult to keep the process management information inside the OS consistent between the migration destination OS and the migration source OS. The present invention has been made in view of the above-mentioned conventional example, and with a minimum overhead,
It is another object of the present invention to provide an information processing method and apparatus capable of effectively using the resources of a processor on another computer connected to a communication line without being subject to inconvenient restrictions in process generation, execution, and management. .
【0006】[0006]
【課題を解決するための手段】上記目的を達成するた
め、本発明の情報処理方法とその装置は以下の構成を備
える。即ち、In order to achieve the above object, an information processing method and apparatus of the present invention have the following configurations. That is,
【0007】1つ以上のCPUを有する情報処理装置で
あって、前記CPUの各々での処理負荷状態を検知する
CPU負荷状態検知手段と、他の情報処理装置のCPU
での処理負荷状態を獲得する他CPU負荷状態獲得手段
と、前記CPU負荷状態検知手段によって検知された処
理負荷状態と、前記他CPU負荷状態獲得手段によって
獲得された他の情報処理装置のCPUでの処理負荷状態
に基づいて、他の情報処理装置を選択する情報処理装置
選択手段と、前記情報処理装置選択手段によって選択さ
れた情報処理装置にCPUの貸出しを要求するCPU貸
出し要求手段と、前記CPU貸出し要求手段のCPU貸
出し要求に基づいて、貸し出されたCPUに、所定のプ
ロセスの実行を許可して実行させる外部CPU実行許可
手段とを備える。また、別の発明は、1つ以上のCPU
を有する情報処理装置であって、他の情報処理装置から
のCPU貸出し要求に基づき、貸し出し可能なCPUを
選択する選択手段と、前記選択手段で選択された貸し出
し可能なCPUの現在のプロセス、または実行が予定さ
れているプロセスを、他のCPUに割り当てるプロセス
割り当て手段と、前記選択手段で選択された貸し出し可
能なCPUに、前記他の情報処理装置の所定の記憶手段
に記憶されているプログラムをアクセスさせて実行させ
る他プロセス実行手段とを備える。また、別の発明は、
1つ以上のCPUを用いた情報処理方法であって、第1
のグループのCPUの処理負荷状態を検知するCPU負
荷状態検知工程と、他グループのCPUでの処理負荷状
態を獲得する他グループCPU負荷状態獲得工程と、前
記CPU負荷状態検知工程によって検知された処理負荷
状態と、前記他グループCPU負荷状態獲得工程によっ
て獲得された他グループのCPUでの処理負荷状態に基
づいて、他のグループから1つのグループを選択する他
グループ選択工程と、前記他グループ選択工程によって
選択された他グループからのCPUの貸出しを要求する
CPU貸出し要求工程と、前記CPU貸出し要求工程の
CPUの貸出し要求に基づき、貸し出すCPUを選択す
る貸し出しCPU選択工程と、前記貸し出しCPU選択
工程で選択されたCPUが所定のプロセスを実行するこ
とを許可する外部CPU実行許可工程と、前記外部CP
U実行許可工程で前記所定のプロセスの実行を許可され
たCPUに、前記他のグループの所定の記憶手段に記憶
されているプログラムをアクセスさせて実行させる他プ
ロセス実行工程とを備える。また、別の発明は、1つ以
上のCPUを有する情報処理方法であって、CPU貸出
し要求に基づき、貸し出し可能なCPUを選択する選択
工程と、前記選択工程で選択された貸し出し可能なCP
Uの現在のプロセス、または実行が予定されているプロ
セスを、他のCPUに割り当てるプロセス割り当て工程
と、前記選択工程で選択された貸し出し可能なCPU
に、他グループの所定のプロセスを実行させる他プロセ
ス実行工程とを備える。また、別の発明は、第1のグル
ープに属するCPUの処理負荷状態を検知するCPU負
荷状態検知手段と、第1のグループ以外の各グループに
属するCPUでの各処理負荷状態を獲得する他CPU負
荷状態獲得手段と、前記CPU負荷状態検知手段で検知
された処理負荷状態と、前記他CPU負荷状態獲得手段
によって獲得された前記第1のグループ以外の各グルー
プに属するCPUでの各処理負荷状態に基づいて、前記
第1のグループ以外の各グループから1つのグループを
選択するグループ選択手段と、前記グループ選択手段で
選択されたグループからCPUの貸出しを要求するCP
U貸出し要求手段と、前記CPU貸出し要求手段のCP
Uの貸出し要求に基づき、貸し出すCPUを選択する貸
し出しCPU選択手段と、前記貸し出しCPU選択手段
で選択されたCPUが所定のプロセスを実行することを
許可する外部CPU実行許可手段と、前記外部CPU実
行許可手段で前記所定のプロセスの実行を許可されたC
PUに、前記他のグループの所定の記憶手段に記憶され
ているプログラムをアクセスさせて実行させる他プロセ
ス実行手段とを備える。An information processing apparatus having one or more CPUs, the CPU load status detecting means for detecting a processing load status of each of the CPUs, and the CPUs of other information processing apparatuses.
Other CPU load state acquisition means for acquiring the processing load state in the above, the processing load state detected by the CPU load state detection means, and the CPU of another information processing apparatus acquired by the other CPU load state acquisition means. An information processing device selecting means for selecting another information processing device based on the processing load state, a CPU lending requesting device for requesting the information processing device selected by the information processing device selecting means to lend a CPU, An external CPU execution permitting unit that permits the rented CPU to execute a predetermined process based on the CPU lending request of the CPU lending request unit is provided. Another invention is one or more CPUs.
An information processing apparatus including: a selection means for selecting a rentable CPU based on a CPU renting request from another information processing apparatus; and a current process of the rentable CPU selected by the selection means, or The process allocating means for allocating the process scheduled to be executed to another CPU, and the lendable CPU selected by the selecting means are loaded with a program stored in a predetermined storage means of the other information processing apparatus. Other process execution means for accessing and executing. Another invention is
An information processing method using one or more CPUs, comprising:
CPU load state detection step of detecting the CPU processing load state of the CPU of another group, another group CPU load state acquisition step of acquiring the processing load state of the CPU of another group, and the processing detected by the CPU load state detection step Another group selection step of selecting one group from another group based on the load status and the processing load status of the CPU of the other group acquired by the other group CPU load status acquisition step; and the other group selection step. A CPU lending request step of requesting a CPU lending from another group selected by the group; a lending CPU selecting step of selecting a CPU to lend based on the CPU lending request of the CPU lending request step; and a lending CPU selecting step. External that allows the selected CPU to execute a given process And PU execution permission step, the external CP
The other process execution step of causing a CPU, which is permitted to execute the predetermined process in the U execution permission step, to access and execute the program stored in the predetermined storage means of the other group. Another invention is an information processing method having one or more CPUs, which comprises a selecting step of selecting a lendable CPU based on a CPU lending request, and a lendable CP selected in the selecting step.
A process allocating step of allocating the current process of U or a process scheduled to be executed to another CPU, and the lendable CPU selected in the selecting step
And another process execution step of executing a predetermined process of another group. Further, another invention is a CPU load state detection means for detecting a processing load state of a CPU belonging to the first group, and another CPU for obtaining each processing load state of a CPU belonging to each group other than the first group. Load state acquisition means, processing load state detected by the CPU load state detection means, and each processing load state in the CPU belonging to each group other than the first group acquired by the other CPU load state acquisition means Group selection means for selecting one group from each group other than the first group based on the above, and a CP requesting a CPU lending from the group selected by the group selection means.
U lending request means and CP of the CPU lending request means
Based on a lending request from U, a lending CPU selection unit that selects a CPU to lend, an external CPU execution permission unit that allows the CPU selected by the lending CPU selection unit to execute a predetermined process, and the external CPU execution C permitted by the permitting means to execute the predetermined process
The PU is provided with other process execution means for accessing and executing the program stored in the predetermined storage means of the other group.
【作用】以上の構成において、1つ以上のCPUを有す
る情報処理装置であって、CPU負荷状態検知手段が、
前記CPUの各々での処理負荷状態を検知し、他CPU
負荷状態獲得手段が、他の情報処理装置のCPUでの処
理負荷状態を獲得し、情報処理装置選択手段が、前記C
PU負荷状態検知手段によって検知された処理負荷状態
と、前記他CPU負荷状態獲得手段によって獲得された
他の情報処理装置のCPUでの処理負荷状態に基づい
て、他の情報処理装置を選択し、CPU貸出し要求手段
が、前記情報処理装置選択手段によって選択された情報
処理装置にCPUの貸出しを要求し、外部CPU実行許
可手段が、前記CPU貸出し要求手段のCPU貸出し要
求に基づいて、貸し出されたCPUに、所定のプロセス
の実行を許可して実行させる。また、別の発明は、1つ
以上のCPUを有する情報処理装置であって、選択手段
が、他の情報処理装置からのCPU貸出し要求に基づ
き、貸し出し可能なCPUを選択し、プロセス割り当て
手段が、前記選択手段で選択された貸し出し可能なCP
Uの現在のプロセス、または実行が予定されているプロ
セスを、他のCPUに割り当て、他プロセス実行手段
が、前記選択手段で選択された貸し出し可能なCPU
に、前記他の情報処理装置の所定の記憶手段に記憶され
ているプログラムをアクセスさせて実行させる。また、
別の発明は、1つ以上のCPUを用いた情報処理方法で
あって、第1のグループのCPUの処理負荷状態を検知
し、他グループのCPUでの処理負荷状態を獲得し、前
記検知された処理負荷状態と、前記獲得された他グルー
プのCPUでの処理負荷状態に基づいて、他のグループ
から1つのグループを選択し、前記選択された他グルー
プからのCPUの貸出しを要求し、前記CPUの貸出し
要求に基づき、貸し出すCPUを選択し、前記選択され
たCPUが所定のプロセスを実行することを許可し、前
記前記所定のプロセスの実行を許可されたCPUに、前
記他のグループの所定の記憶手段に記憶されているプロ
グラムをアクセスさせて実行させる。また、別の発明
は、1つ以上のCPUを有する情報処理方法であって、
CPU貸出し要求に基づき、貸し出し可能なCPUを選
択し、前記選択された貸し出し可能なCPUの現在のプ
ロセス、または実行が予定されているプロセスを、他の
CPUに割り当て、前記選択された貸し出し可能なCP
Uに、他グループの所定のプロセスを実行させる。ま
た、別の発明は、CPU負荷状態検知手段が、第1のグ
ループに属するCPUの処理負荷状態を検知し、他CP
U負荷状態獲得手段が、第1のグループ以外の各グルー
プに属するCPUでの各処理負荷状態を獲得し、グルー
プ選択手段が、前記CPU負荷状態検知手段で検知され
た処理負荷状態と、前記他CPU負荷状態獲得手段によ
って獲得された前記第1のグループ以外の各グループに
属するCPUでの各処理負荷状態に基づいて、前記第1
のグループ以外の各グループから1つのグループを選択
し、CPU貸出し要求手段が、前記グループ選択手段で
選択されたグループからCPUの貸出しを要求し、貸し
出しCPU選択手段が、前記CPU貸出し要求手段のC
PUの貸出し要求に基づき、貸し出すCPUを選択し、
外部CPU実行許可手段が、前記貸し出しCPU選択手
段で選択されたCPUが所定のプロセスを実行すること
を許可し、他プロセス実行手段が、前記外部CPU実行
許可手段で前記所定のプロセスの実行を許可されたCP
Uに、前記他のグループの所定の記憶手段に記憶されて
いるプログラムをアクセスさせて実行させる。In the above configuration, the information processing apparatus having one or more CPUs, wherein the CPU load state detecting means is
The processing load state of each of the CPUs is detected, and the other CPUs are detected.
The load state acquisition means acquires the processing load state in the CPU of another information processing device, and the information processing device selection means sets the C
Based on the processing load state detected by the PU load state detection means and the processing load state of the CPU of the other information processing apparatus acquired by the other CPU load status acquisition means, another information processing apparatus is selected, The CPU lending request unit requests the information processing device selected by the information processing device selection unit to lend the CPU, and the external CPU execution permission unit lends out based on the CPU lending request of the CPU lending request unit. Allow the CPU to execute a predetermined process. Another invention is an information processing apparatus having one or more CPUs, wherein the selecting means selects a rentable CPU based on a CPU lending request from another information processing apparatus, and the process allocating means , The lendable CP selected by the selection means
The current process of U or the process scheduled to be executed is assigned to another CPU, and the other process execution means selects the lendable CPU selected by the selection means.
To access and execute a program stored in a predetermined storage means of the other information processing apparatus. Also,
Another invention is an information processing method using one or more CPUs, which detects a processing load state of a CPU of a first group, acquires a processing load state of a CPU of another group, and detects the processing load state. Based on the obtained processing load state and the obtained processing load state in the CPU of the other group, one group is selected from the other groups, and the lending of the CPU from the selected other group is requested. A CPU to be rented out is selected based on a CPU lending request, the selected CPU is allowed to execute a predetermined process, and the CPU permitted to execute the predetermined process is assigned a predetermined CPU of the other group. To access and execute the program stored in the storage means. Another invention is an information processing method having one or more CPUs,
A lendable CPU is selected based on a CPU lending request, and the current process of the selected lendable CPU or a process scheduled to be executed is assigned to another CPU and the selected lendable CPU is available. CP
Cause U to execute a predetermined process of another group. Another aspect of the present invention is that the CPU load state detection means detects the processing load state of the CPUs belonging to the first group, and the other CPs are detected.
The U load status acquisition means acquires each processing load status in the CPUs belonging to each group other than the first group, and the group selection means detects the processing load status detected by the CPU load status detection means, On the basis of each processing load state in the CPU belonging to each group other than the first group acquired by the CPU load state acquisition means, the first
1 group is selected from each group other than the above group, the CPU lending request means requests the CPU lending from the group selected by the group selection means, and the lending CPU selection means is the CPU lending request means C.
Select the CPU to rent based on the PU lending request,
The external CPU execution permission unit permits the CPU selected by the lending CPU selection unit to execute a predetermined process, and the other process execution unit permits the external CPU execution permission unit to execute the predetermined process. CP
Let U access and execute the program stored in the predetermined storage means of the other group.
【実施例】本発明の実施例に関連する技術的背景を、以
下簡単に述べる。The technical background relating to the embodiments of the present invention will be briefly described below.
【0008】近年、光ケーブルなど、信頼性もあり高速
で、計算機の内部バスにある程度近い性能を持つ通信媒
体の登場で、物理メモリを直接他の計算機から使用する
ような構成も可能となりつつある。これにより、各計算
機に配置されたメモリを(またはその一部を)全体で単
一のメモリ空間として、どの計算機からでも直接アクセ
ス可能にすることができるようなシステムが提案されて
きている。In recent years, with the advent of a communication medium such as an optical cable, which is reliable and high-speed, and has a performance close to an internal bus of a computer, it is becoming possible to directly use the physical memory from another computer. As a result, a system has been proposed in which the memory (or part of it) allocated to each computer can be directly accessed from any computer as a single memory space.
【0009】このようなシステムの場合、上記のような
プロセスマイグレーションのように、プロセスを移動す
ることによって、他の計算機上のプロセッサを利用する
のではなく、他の計算機上のプロセッサを直接自計算機
上のOSの管理下に移動することで、自計算機上のプロ
セッサと同様の形態で、つまり自計算機のプロセッサが
増えたと同じ環境で利用できる可能性が出てきた。In such a system, by moving a process as in the process migration as described above, a processor on another computer is not directly used but a processor on another computer is directly used. By moving to the management of the above OS, there is a possibility that it can be used in the same form as the processor on the own computer, that is, in the same environment as the number of processors of the own computer has increased.
【0010】このような状況を鑑み、本発明に係る実施
例の情報処理装置は、以下のような構成を備える。即
ち、計算機の管理下にあるプロセッサの負荷状態を検知
するプロセッサ負荷検知部と、通信回線で結ばれた他の
計算機の負荷情報を収集する他計算機情報収集部と、プ
ロセッサの貸出し元となる計算機を選定する貸出し元計
算機選定部と、貸出し元計算機選定部により選定された
計算機に対して、貸出し元計算機選定部により決定され
た数のプロセッサの貸出しを要求するプロセッサ貸出し
要求部と、その要求に従った数のプロセッサを貸し出す
プロセッサ貸出し部と、貸し出されたプロセッサを受け
取り、計算機の管理下におくプロセッサ受け取り部と、
借りていたプロセッサを貸出し元計算機に返還するプロ
セッサ返還部を備える。In view of such a situation, the information processing apparatus according to the embodiment of the present invention has the following configuration. That is, a processor load detection unit that detects a load state of a processor under the control of a computer, another computer information collection unit that collects load information of another computer connected by a communication line, and a computer that is a lending source of the processor. The lending source computer selection unit that selects the number of processors and the processor lending request unit that requests lending of the number of processors determined by the lending source computer selection unit to the computer selected by the lending source computer selection unit, and the request A processor lending unit that rents out the number of processors that follow, and a processor receiving unit that receives the rented-out processor and puts it under the management of the computer,
The processor return unit is provided for returning the borrowed processor to the lending source computer.
【0011】以下、添付図面にしたがって本発明に係る
実施例を詳細に説明する。Embodiments according to the present invention will be described in detail below with reference to the accompanying drawings.
【0012】図1は、本発明の情報処理システム構成の
概略を示すものであり、101は光ネットワークなどの
高速な通信回線、201,301,401は通信回線1
01で結ばれた計算機である。202,302,30
3,402は計算機201,301,401に各々備え
られたMMU(Memory Management Unit)内蔵プロセッ
サ、210,410は計算機201,401に備えられ
たユーザインターフェイスとしてのディスプレイ&キー
ボード、220,320は計算機201,301に備え
られたハードディスク装置などの2次記憶装置である。FIG. 1 shows an outline of the information processing system configuration of the present invention. Reference numeral 101 is a high speed communication line such as an optical network, and 201, 301 and 401 are communication lines 1.
It is a computer connected by 01. 202, 302, 30
3, 402 are MMU (Memory Management Unit) built-in processors respectively provided in the computers 201, 301, 401, 210, 410 are display & keyboards as user interfaces provided in the computers 201, 401, and 220, 320 are computers 201. , 301 is a secondary storage device such as a hard disk device.
【0013】尚、ディスプレイ&キーボードや2次記憶
装置は、計算機に装備されていてもされていなくてもよ
い。例えば、ディスプレイ&キーボードが装備されてい
ない計算機301は、サーバマシンまたはプロセッサプ
ールとして利用できる。The display and keyboard and the secondary storage device may or may not be installed in the computer. For example, the computer 301 that is not equipped with a display and keyboard can be used as a server machine or a processor pool.
【0014】230,330,430は、全体でひとつ
の単一なメモリ空間を構成する物理メモリ、240,3
40,440は各計算機用のローカルメモリである。Reference numerals 230, 330 and 430 are physical memories 240, 3 which constitute one single memory space as a whole.
Reference numerals 40 and 440 are local memories for each computer.
【0015】尚、このローカルメモリは、主にOSなど
の処理のために必要となるが、物理メモリ230,33
0,430の一部でも代用可能であるため、なくてもよ
い。Although this local memory is mainly required for the processing of the OS and the like, the physical memories 230 and 33 are used.
Since part of 0,430 can be substituted, it is not necessary.
【0016】各プロセッサ202、302、303、4
02は、物理メモリ230,330,430をアクセス
可能である。Each processor 202, 302, 303, 4
02 can access the physical memories 230, 330, and 430.
【0017】250,350,450は、計算機20
1,301,401上で動作するそれぞれのOSであ
る。これらのOS(オペレーテイングシステム)は、ほ
ぼ同等の機能を持ち、各計算機201、301、401
上でそれぞれ動作し、互いに協調的に働くような構成を
とる。これにより、各計算機の独立性を保つことがで
き、システム全体の柔軟性も上がる。Numerals 250, 350 and 450 are computers 20
It is each OS which operates on 1,301,401. These OSs (Operating Systems) have almost the same functions, and each computer 201, 301, 401
Each of them operates on the above, and is configured to work cooperatively with each other. As a result, the independence of each computer can be maintained and the flexibility of the entire system can be increased.
【0018】図5は、本実施例での主要な各OS(例え
ば、OS250)の要素処理部の概要を示したものであ
り、プロセッサ負荷検知部、他計算機情報収集部、貸し
出し元計算機選定部、プロセッサ貸し出し要求部等を備
える。FIG. 5 shows an outline of an element processing unit of each main OS (for example, OS 250) in this embodiment. A processor load detecting unit, another computer information collecting unit, and a lending source computer selecting unit. , A processor lending request unit and the like.
【0019】尚、各OSは各計算機上のローカルメモリ
240,340,440上で動作しても、物理メモリ2
30,330,430上で動作してもよい。ただし、O
Sのデータ領域の一部は、各OSが管理するプロセッサ
の負荷情報などを交換可能にするため、物理メモリ23
0,330,430上に配置しておく。260,36
0,460がこれら情報交換領域である。また、10
2、302、402は、各計算機上で動作するOS間で
の非同期な通信を行なうための計算機間割込み処理線で
ある。Even if each OS operates on the local memory 240, 340, 440 on each computer, the physical memory 2
It may operate on 30, 330, 430. However, O
A part of the data area of S has a physical memory 23 in order to exchange the load information of the processor managed by each OS.
It is placed on 0, 330, 430. 260,36
0,460 are these information exchange areas. Also, 10
Reference numerals 2, 302 and 402 are inter-computer interrupt processing lines for performing asynchronous communication between OSs operating on the respective computers.
【0020】図2,3,4に本発明に係る一実施例の処
理の流れを示す。図2は、プロセッサの貸出しを要求す
る計算機上のプロセッサの処理の流れを示し、図3は、
貸出しを要求された計算機上のプロセッサで、かつ貸し
出される対象となったプロセッサの貸し出し処理の流れ
を示し、図4は、図3の処理を終え貸し出されたプロセ
ッサが返還されるときの処理の流れを示す。2, 3 and 4 show the flow of processing of one embodiment according to the present invention. FIG. 2 shows a processing flow of the processor on the computer which requests the lending of the processor, and FIG.
FIG. 4 shows a lending process flow of a processor that is a lending-requested processor and is a lending target, and FIG. 4 shows a process flow when the lending processor is finished and the lending processor is returned. Indicates.
【0021】尚、このフローチャートに対応する実行プ
ログラムは、予め、各OS250,350,450に組
み込まれており、各計算機のCPUで実行される。The execution program corresponding to this flow chart is installed in advance in each OS 250, 350, 450 and is executed by the CPU of each computer.
【0022】以下、これらの流れにそって、計算機20
1上のプロセッサ202が計算機301に貸出しを要求
し、計算機301上のプロセッサ303が貸し出された
場合を例に説明する。The computer 20 will be described below according to these flows.
A case where the processor 202 on the first computer requests the computer 301 to lend and the processor 303 on the computer 301 is lent will be described as an example.
【0023】図1のようなシステムにおいて、プロセッ
サ202が実行するOS250は、立ち上げ時には、自
計算機のプロセッサ(プロセッサ202)のみを管理
し、タイムスライスなどのスケジューリング方法を用い
て、実行可能状態のプロセスにプロセッサを割り当て実
行させる(ステップS1)。In the system as shown in FIG. 1, the OS 250 executed by the processor 202 manages only the processor (processor 202) of its own computer at the time of start-up, and uses the scheduling method such as time slice to set the executable state. A processor is assigned to a process and executed (step S1).
【0024】次に、ステップS2で、OS250内のプ
ロセッサ負荷検知部(図5)により、自計算機管理下の
プロセッサの負荷状態を検知して、ステップS11で、
負荷が高い状態か低い状態か、または普通の状態である
かを判定する。負荷状態は、そのとき実行可能状態(Re
ady 状態と呼ばれる)にあるプロセス数と、プロセッサ
数との割合で調べることができる。この割合があるしき
い値を越えたら、例えば実行可能プロセス数がプロセッ
サ数の4倍を越えたら、高負荷状態にあると判定し、ま
たもう一つのしきい値より小さかったら、例えば実行可
能プロセス数がプロセッサ数の同値以下になったら、低
負荷状態にあると判定でき、その2つのしきい値の間だ
ったらどちらでもないと判定できる。実行可能状態のプ
ロセスが増え、プロセッサの利用率が上がり、高負荷状
態と判定されると、ステップS3に進む。また、どちら
でもない状態と判定されると、ステップS2に戻る。低
負荷状態と判定された場合については後で述べる。Next, in step S2, the processor load detection unit (FIG. 5) in the OS 250 detects the load status of the processor under the control of its own computer, and in step S11,
Determine whether the load is high, low, or normal. The load status is the ready status (Re
It can be found by the ratio of the number of processes in the ady state) to the number of processors. If this ratio exceeds a certain threshold value, for example, the number of executable processes exceeds four times the number of processors, it is determined that the load is high, and if it is smaller than another threshold value, for example, If the number is less than or equal to the number of processors, it can be determined that the load is low, and if it is between the two thresholds, it can be determined that neither. If the number of processes in the executable state increases, the utilization rate of the processor increases, and if it is determined that the load is high, the process proceeds to step S3. If it is determined that the state is neither, the process returns to step S2. The case where the load is determined to be low will be described later.
【0025】このプロセッサの負荷検知処理は、例えば
10mSecに1回といったように経験的に決められた
間隔で、定期的に実行されるようにする。The load detection process of this processor is to be executed periodically at an empirically determined interval such as once every 10 mSec.
【0026】ステップS3では、OS250の他計算機
情報収集部(図5)により、通信回線で結ばれた他の計
算機のプロセッサ負荷情報を収集する。この情報収集
は、情報交換領域260,360,460と計算機間割
込みライン102、103、104とを利用したOS間
のデータ交換により実現できる。尚、この時、通信回線
で結ばれたすべての計算機の情報を収集しても、またい
くつか選んで収集しても構わない。また、一台の計算機
から情報収集するのにかかる時間を考慮して収集台数を
制限してもよい。さらに、このときの収集対象となる計
算機は、ランダムに、あるいはラウンドロビン的に自動
的に計算機が選んでも、ユーザがあらかじめ設定してお
いても構わない。In step S3, the processor load information of another computer connected by the communication line is collected by the other computer information collecting unit (FIG. 5) of the OS 250. This information collection can be realized by data exchange between OSs using the information exchange areas 260, 360, 460 and the inter-computer interrupt lines 102, 103, 104. At this time, the information of all the computers connected by the communication line may be collected, or some of them may be selected and collected. Further, the number of collected information may be limited in consideration of the time required to collect information from one computer. Further, the computers to be collected at this time may be randomly or automatically selected in a round-robin manner, or may be preset by the user.
【0027】ステップS4では、OS250の貸出し元
計算機選定部(図5)により、プロセッサを借りる計算
機を選定する。この選定方法としては、自計算機よりも
負荷が軽く、かつ最も負荷の軽い計算機を選ぶ。また、
例えば、少なくとも自計算機より2倍以上負荷が軽いも
のを選択するといった選定方法でもよい。また、このス
テップでは、借りるプロセッサの数を決定する。この決
定方法は例えば、上記の選択方法で選ばれた計算機の負
荷が自計算機の負荷を越えない最大のプロセッサ数を借
りるプロセッサ数として決定する。例えば、選ばれた計
算機の負荷値が2(例えば、プロセス数8/プロセッサ
数4)で、自計算機の負荷値が8(例えば、プロセス数
16/プロセッサ数2)だったとすると、借りるプロセ
ッサ数は2となる。In step S4, the lending source computer selection unit (FIG. 5) of the OS 250 selects a computer to rent a processor. As a selection method, a computer with a lighter load than the computer itself and the lightest load is selected. Also,
For example, a selection method may be used in which a load that is at least twice as light as that of the own computer is selected. Also, in this step, the number of processors to borrow is determined. In this determination method, for example, the maximum number of processors in which the load of the computer selected by the above selection method does not exceed the load of the own computer is determined as the number of borrowed processors. For example, if the load value of the selected computer is 2 (for example, the number of processes is 8 / the number of processors is 4), and the load value of the own computer is 8 (for example, the number of processes is 16 / the number of processors is 2), the number of borrowed processors is It becomes 2.
【0028】上記の例では、一つの計算機を選んでそれ
から複数のプロセッサを借りる例を挙げたが、複数の計
算機を選んで、それらからそれぞれプロセッサを借りる
ようにしてもよい。In the above example, one computer is selected and then a plurality of processors are borrowed. However, a plurality of computers may be selected and a processor may be borrowed from each of them.
【0029】もし、貸出し元計算機が選ばれなかった
ら、つまり自計算機より負荷の軽い計算機がなかったよ
うな場合には、OS250のプロセッサ負荷検知部の高
負荷判定用のしきい値を以前の値より高めに設定し直し
て(ステップS7)、ステップS2に戻る。If the lending source computer is not selected, that is, if there is no computer having a lighter load than its own computer, the high load determination threshold value of the processor load detection unit of the OS 250 is set to the previous value. The setting is made higher (step S7), and the process returns to step S2.
【0030】尚、このように高めに設定し直したが、再
びステップS03に進んだ時に、他の計算機の負荷が前
に調べた時より軽くなっているかどうかチェックして、
そのしきい値を元の値に戻すようにしてもよい。このよ
うな場合は、他計算機情報収集部に、前に収集した各計
算機の負荷情報を保持しておく機構を持たせることで容
易に実現できる。Although the setting was made higher, it is checked again whether the load of the other computer is lighter than that of the time when it was checked before when the operation proceeds to step S03 again.
You may make it return the threshold value to the original value. Such a case can be easily realized by providing the other computer information collecting unit with a mechanism for holding the load information of each computer collected previously.
【0031】次に、ステップS4で、計算機301が貸
出し元計算機として選ばれ、1つのプロセッサを借りる
ことが決定した場合を例として説明を進める。Next, the case where the computer 301 is selected as the lending source computer in step S4 and it is decided to rent one processor will be described as an example.
【0032】ステップS5では、OS250のプロセッ
サ貸出し要求部(図5)により、貸出し元計算機選定部
で選ばれた計算機(例えば、計算機301)に対して、
決定したプロセッサ数(例えば、1つ)の貸出しを要求
する。これは、自計算機上のOS250から貸出し元計
算機上のOS(例えば、OS350)への要求となるわ
けだが、これも情報交換領域260,360,460と
計算機間割込みライン102、103、104とを利用
したOS間の通信により実現できる。In step S5, the processor lending request unit (FIG. 5) of the OS 250 requests the computer (for example, the computer 301) selected by the lending source computer selection unit to
Request the lending of the determined number of processors (for example, one). This is a request from the OS 250 on the own computer to the OS (for example, OS 350) on the lending source computer, which also sets the information exchange areas 260, 360, 460 and the inter-computer interrupt lines 102, 103, 104. It can be realized by communication between the OSs used.
【0033】一方、貸し出し要求を受けた貸出し元計算
機の処理を、図2のフローチャートを参照して以下説明
する。On the other hand, the processing of the lending source computer that has received the lending request will be described below with reference to the flowchart of FIG.
【0034】図3を参照して、要求を受けた貸出し元計
算機上のOS(この場合、OS350)を実行するプロ
セッサ(ここでは、プロセッサ302またはプロセッサ
303のどちらでも構わないが、プロセッサ303だっ
た場合を一例とする)は、ステップS101で、プロセ
ッサ貸出し部により要求された数だけのプロセッサを貸
し出す処理を開始する。この貸出しは以下のように行
う。With reference to FIG. 3, a processor (here, either processor 302 or processor 303, which is the processor 303, which executes the OS (OS 350 in this case) on the lending source computer that received the request is the processor 303. In this case, the process for renting out the number of processors requested by the processor lending unit is started in step S101. This lending is performed as follows.
【0035】まず、ステップS102で、要求を受けた
OS350を実行するプロセッサ303は、貸し出すプ
ロセッサを選ぶ。例えば、マルチプロセッサシステムの
構成方法が、シンメトリな方式で、かつスケジューリン
グ方式も全プロセッサの負荷を均等に割り振るような方
式であれば、どのプロセッサを選択しても同じなのでラ
ンダムに選んで構わない。ここで、シンメトリとは、保
有するプロセサの構成が同一であるという意味である。First, in step S102, the processor 303 that executes the requested OS 350 selects a processor to rent. For example, if the configuration method of the multiprocessor system is a symmetric method and the scheduling method is a method in which the loads of all the processors are evenly distributed, whichever processor is selected, the same may be selected randomly. Here, symmetry means that the possessed processors have the same configuration.
【0036】尚、ここで、マルチプロセッサシステムの
構成方法がマスタースレーブ方式であったとすると、マ
スタープロセッサを貸し出すわけにはいかないのでスレ
ーブプロセッサの中から選択することになる。If the method of constructing the multiprocessor system is the master-slave system, the master processor cannot be lent out, and the slave processor is selected from the slave processors.
【0037】以下、例えば、プロセッサ303が貸し出
すプロセッサとして選ばれた場合を一例として以下説明
を進める。In the following, for example, the case where the processor 303 is selected as the processor to be rented will be described as an example.
【0038】次に、ステップS103では、プロセッサ
303で動作中のプロセスと、動作予定だったプロセス
を他のプロセッサに移管する。この例の場合、現在この
処理を行なっているプロセッサ自体が貸出し対象のプロ
セッサであるため、プロセッサ303は、現在OS35
0を実行しており、プロセスが動作中ということはな
い。しかし、もしプロセッサ302が貸出しプロセッサ
として選ばれたとすると、、そのときプロセッサ302
がプロセスを実行中の可能性がある。そこで、動作中の
プロセスと、動作予定だったプロセスを他のプロセッサ
に移管する方法を以下説明する。Next, in step S103, the process running in the processor 303 and the process scheduled to run are transferred to another processor. In the case of this example, since the processor itself that is currently performing this processing is the lending target processor, the processor 303 is
It is running 0 and the process is never running. However, if processor 302 is chosen as the lending processor, then processor 302
May be running the process. Therefore, a method of transferring a process in operation and a process scheduled to operate to another processor will be described below.
【0039】通常、実行可能状態(Ready 状態)にあ
り、実行のためにプロセッサ割り当てを待っているプロ
セスは、Ready キューと呼ばれるキューにつながれて管
理される。現行のシステムの場合、このReady キュー
は、プロセスの実行優先順位ごとに複数のキューを用意
する方式(UNIXなど)や、プロセスの実行優先順位の高
い順にソートして1つのReady キューにキューイングす
る方式などがある。そして、スケジューリング方式がタ
イムスライス方式の場合には、現在プロセッサが割り当
てられ実行中のプロセス(Running 状態と呼ばれる)の
タイムクォンタムが切れたり、またイベント待ち状態
(Suspend 状態と呼ばれる)に入ると、プロセッサは実
行プロセスの切り替えを行なう。今まで実行中だったプ
ロセスをReadyキューに戻したり(タイムクォンタムが
切れた場合など)、イベント待ち状態にするためSuspen
d キューに入れ、代りにReady キューの中から1つプロ
セスを取り出し、そのプロセスをRunning 状態にして実
行させる。Ready キューの中からの選択は、優先順位の
高いものから順に選んでいくのが一般的である。Normally, a process in the ready state (ready state) and waiting for processor allocation for execution is connected to a queue called a ready queue for management. In the current system, this Ready queue is prepared by preparing multiple queues for each process execution priority (such as UNIX), or sorted in order of the process execution priority and queued in one Ready queue. There are methods. When the scheduling method is the time slice method, when the time quantum of the process that is currently assigned and the processor (called the Running state) expires or the event wait state (called the Suspend state) is entered, the processor Switches the execution process. Suspen to return a process that was running until now to the Ready queue (when the time quantum has expired, etc.) or to wait for an event
d Put in the queue, take out one process from the Ready queue instead, put that process in the Running state, and run it. When selecting from the Ready queue, it is common to select from the highest priority.
【0040】マルチプロセッサシステムの場合、このRe
ady キューの使い方にいくつかの方式がある。各プロセ
ッサごとにそれぞれ固有のReady キューを持ち、各プロ
セッサは自分のReady キューからのみ実行プロセッサを
選択していく方法、また、複数あるプロセッサが共有し
て使用するReady キューを1つ用意し(優先順位ごとに
キューを持つ方式の場合には優先順位の数だけ用意)、
各プロセッサは共有しているReady キューから実行プロ
セスを選択していく方式などが考えられる。In the case of a multiprocessor system, this Re
There are several ways to use the ady queue. Each processor has its own Ready queue, and each processor selects an execution processor only from its own Ready queue. Also, prepare one Ready queue that is shared by multiple processors. (In the case of a method that has a queue for each rank, prepare only the number of priorities),
A method in which each processor selects an execution process from the shared Ready queue can be considered.
【0041】プロセッサごとに固有のReady キューを持
つ方式の場合のプロセスの移管は、まず、移管元プロセ
ッサで実行中のプロセスの実行を中断して移管先プロセ
ッサのReady キューに入れ、そして移管元プロセッサの
Ready キューにキューイングされているすべてのプロセ
スをキューからはずし、移管先プロセッサのReady キュ
ーにつなぎかえることで実現できる。Ready キューを共
有する方式の場合は、移管元プロセッサで実行中のプロ
セスの実行を中断して共有のReady キューに入れること
でプロセスの移管を実現できる。To transfer a process in the case of a system having a unique Ready queue for each processor, first, the execution of the process being executed by the transfer source processor is interrupted and put in the Ready queue of the transfer destination processor, and then the transfer source processor. of
This can be achieved by removing all the processes queued in the Ready queue from the queue and switching to the Ready queue of the transfer destination processor. In the case of the method of sharing the Ready queue, the process transfer can be realized by interrupting the execution of the process being executed by the transfer source processor and putting it in the shared Ready queue.
【0042】すべてのプロセスの移管が終了し、プロセ
ッサ303がアイドル状態になったら、プロセッサ30
3をOS350の管理下からOS250の管理下に、管
理元の移動処理を行なう。When the transfer of all processes is completed and the processor 303 becomes idle, the processor 30
3 is moved from the management of the OS 350 to the management of the OS 250 to move the management source.
【0043】まず、プロセッサ303は、OS250の
プログラムコードを実行できるようにするために、ステ
ップS104で、OS250の管理する物理メモリ領域
をアクセス可能とさせる。これを実現するために、プロ
セッサ303は、自分の実行モードを仮想記憶モードか
ら実記憶モードに切り替える。これにより、移動先のO
S250の管理するメモリ領域をアクセスできるように
なる。First, the processor 303 makes the physical memory area managed by the OS 250 accessible in step S104 so that the program code of the OS 250 can be executed. To realize this, the processor 303 switches its execution mode from the virtual storage mode to the real storage mode. As a result, the destination O
The memory area managed in S250 can be accessed.
【0044】そして、ステップS105で、OS250
がプロセッサの貸し出し処理用にあらかじめ用意したエ
ントリにジャンプする。Then, in step S105, the OS 250
Jumps to the entry prepared in advance for the processor lending process.
【0045】ジャンプ処理を終えて、OS250のプロ
グラムコードを実行し始めたプロセッサ303は、次に
ステップS106で、不図示のページテーブルのベース
レジスタに、OS250が管理するページテーブルの値
を設定し、仮想記憶モードに切り替え、OS250の仮
想記憶空間で動作可能にする。After finishing the jump process, the processor 303 which has started to execute the program code of the OS 250 sets the value of the page table managed by the OS 250 in the base register of the page table (not shown) in step S106. The virtual memory mode is switched to enable operation in the virtual memory space of the OS 250.
【0046】次に、ステップS107では、不図示の例
外ベクタテーブルのベースレジスタも、同様にOS25
0が管理する不図示の例外ベクタテーブルの位置に設定
する。ベースレジスタ設定により例外ベクタテーブルの
再配置が不可能なプロセッサの場合には、テーブルのジ
ャンプアドレスを書き換えることにより、同様の処理が
可能である。Next, in step S107, the base register of the exception vector table (not shown) is also set in the OS 25.
It is set to the position of an exception vector table (not shown) managed by 0. In the case of a processor in which the exception vector table cannot be relocated due to the base register setting, the same processing can be performed by rewriting the jump address of the table.
【0047】以上の処理により、プロセッサ303はO
S250の管理下に移動したことになり、ステップS1
08で、プロセッサ303が計算機301から借りたプ
ロセッサであることをOS250内部に記録する。そし
て、ステップS109で、通常のOS250の管理下の
プロセッサ202とまったく同様に、OS250上の実
行可能状態のプロセスを割り当て、そのプロセスを実行
していく。以上で、プロセッサの貸し出し処理が終了と
なる。Through the above processing, the processor 303 is set to O
Since it has been moved to the control of S250, step S1
At 08, the fact that the processor 303 is a processor borrowed from the computer 301 is recorded in the OS 250. Then, in step S109, just like the processor 202 under the control of the normal OS 250, a process in an executable state on the OS 250 is allocated and the process is executed. This is the end of the processor lending process.
【0048】このようにして、プロセッサを他の計算機
から借りることにより負荷を軽くして動作を続けるが、
そのうち、いくつかの動作中のプロセスが終了し、負荷
がより軽くなる場合がある。つまり,ステップS2で、
プロセッサ負荷検知部により、負荷があるしきい値より
も低くなったことが検知され、低負荷状態になったこと
が判定されると、ステップS6に進む。この判定は、負
荷値が1(プロセッサ数と実行可能状態のプロセッサ数
が同じ)より小さくなったかどうかで判定する。In this way, the processor is borrowed from another computer to reduce the load and continue the operation.
Of these, some running processes may be terminated and the load may be lighter. That is, in step S2,
When the processor load detection unit detects that the load is lower than a certain threshold value and determines that the load is low, the process proceeds to step S6. This determination is made based on whether or not the load value is smaller than 1 (the number of processors is the same as the number of processors in the executable state).
【0049】また、本例のように、プロセッサ303を
借りた後は、図2の処理は、プロセッサ202が実行し
ても、プロセッサ303が実行してもかまわない。本例
の場合は、プロセッサ202が実行した場合を例として
いるが、もし、プロセッサ303が図2の処理を実行し
てステップS1,S2,S6と進んだ場合には、そのま
ま図4のステップS201にすすみプロセッサの返還処
理を開始する。本例の場合は、プロセッサ202がステ
ップS1,S2,S6とすすみ、プロセッサ303に要
求を行い、プロセッサ303に返還処理(ステップS2
01)を開始させる。この要求は、割り込みのような手
段であってもいいし、プロセッサ303のプロセス切り
替えのタイミングなどを利用したポーリングによって行
ってもよい。After renting the processor 303 as in this example, the processing of FIG. 2 may be executed by the processor 202 or the processor 303. In the case of this example, the case in which the processor 202 executes is taken as an example, but if the processor 303 executes the processing in FIG. 2 and proceeds to steps S1, S2, and S6, the step S201 in FIG. The return processing of the Nissumi processor is started. In the case of this example, the processor 202 proceeds to steps S1, S2, and S6, requests the processor 303, and returns it to the processor 303 (step S2
01) is started. This request may be a means such as an interrupt, or may be made by polling using the process switching timing of the processor 303.
【0050】ステップS201に進むと、プロセッサ返
還部により、自プロセッサ(プロセッサ303)を元の
計算機に返還する。プロセッサ返還処理は、プロセッサ
貸し出し処理と同様の処理で実現できる。まず、ステッ
プS202で、プロセッサ303で実行予定だったプロ
セスを全て他のプロセッサに移管する。全てのプロセス
の移管が終了して、プロセッサ303がアイドル状態に
なると、次に、プロセッサ303をOS250の管理下
からOS350の管理下に管理元の移動処理を行うた
め、ステップS203で、実行モードを仮想記憶モード
から実記憶モードに切り替え、ステップS204で、O
S350がプロセッサ返還処理用にあらかじめ用意した
エントリにジャンプする。ジャンプ処理を終えて、OS
350のプログラムコードを実行し始めたプロセッサ3
03は、次にステップS205でページテーブルのベー
スレジスタに、OS350が管理するページテーブルの
値を設定し、仮想記憶モードに切り替え、OS350の
仮想記憶空間で動作可能にする。次にステップS206
で、例外ベクタテーブルのペースレジスタも、同様にS
O350が管理する例外ベクタテーブルの位置に設定す
る。In step S201, the processor return unit returns the own processor (processor 303) to the original computer. The processor return processing can be realized by the same processing as the processor lending processing. First, in step S202, all processes scheduled to be executed by the processor 303 are transferred to another processor. When the transfer of all the processes is completed and the processor 303 enters the idle state, the processor 303 is moved from the management of the OS 250 to the management of the OS 350. Therefore, the execution mode is changed in step S203. The virtual storage mode is switched to the real storage mode, and in step S204, O
S350 jumps to the entry prepared in advance for the processor return process. After the jump process, OS
Processor 3 starting to execute 350 program code
Next, in step S205, the 03 sets the value of the page table managed by the OS 350 in the base register of the page table, switches to the virtual memory mode, and enables operation in the virtual memory space of the OS 350. Next in step S206
Then, the pace register of the exception vector table is also S
It is set to the position of the exception vector table managed by O350.
【0051】以上の処理により、プロセッサ303は、
OS350の管理下に戻ったことになり、ステップS2
07で、貸し出す前と同様に、OS350上の実行可能
状態のプロセスを割り当て、そのプロセスを実行してい
く。以上で、プロセッサの返還処理が終了となる。Through the above processing, the processor 303 is
Now that the system is back under the control of OS350, step S2
At 07, the process in the executable state on the OS 350 is allocated and the process is executed in the same manner as before the lending. This is the end of the processor return process.
【0052】尚、本発明は、複数の機器から構成される
システムに適用しても1つの機器から成る装置に適用し
ても良い。また、本発明は、システム或は装置にプログ
ラムを供給することによって達成される場合にも適用で
きることはいうまでもない。The present invention may be applied to a system composed of a plurality of devices or an apparatus composed of a single device. Further, it goes without saying that the present invention can be applied to the case where it is achieved by supplying a program to a system or an apparatus.
【0053】以上説明したように、本実施例によれば、
自計算機の管理するプロセッサの負荷状態を検知し、も
し高負荷状態であることがわかると、通信回線で結ばれ
た他の計算機の負荷状態を調べ、低負荷状態の計算機を
選び借りるプロセッサ数を決定し、その数だけプロセッ
サを貸出し元計算機の管理下から貸出し先計算機の管理
下に移動することを可能とする。As described above, according to this embodiment,
It detects the load status of the processor managed by its own computer, and if it finds that it is in a high load status, it checks the load status of other computers connected by a communication line, selects a computer in a low load status, and determines the number of processors to borrow. It is possible to determine and move the number of processors from the management of the lending source computer to the management of the lending destination computer.
【0054】これにより、最小限のオーバヘッドで、ま
たプロセスの生成、実行、管理において、まったく余計
な制限を受けることなく、通信回線に結ばれた他の計算
機上のプロセッサの有効利用を可能とする情報処理装置
を得ることができる。As a result, it is possible to effectively use the processor on another computer connected to the communication line with a minimum overhead and without being subjected to any extra restriction in process generation, execution, and management. An information processing device can be obtained.
【0055】[0055]
【発明の効果】以上説明したように本発明によれば、As described above, according to the present invention,
【0056】最小限のオーバヘッドで、またプロセスの
生成、実行、管理において、不自由な制限を受けること
なく、通信回線に結ばれた他の計算機上のプロセッサの
資源を有効利用することができる。It is possible to effectively use the resources of the processor on another computer connected to the communication line with a minimum overhead and without being subjected to inconvenient restrictions in the generation, execution, and management of the process.
【図1】本実施例の情報処理装置の構成図である。FIG. 1 is a configuration diagram of an information processing apparatus according to an embodiment.
【図2】プロセッサの貸し出しを要求する情報処理装置
上のプロセッサの処理の流れ図である。FIG. 2 is a flowchart of processing of a processor on an information processing device that requests lending of a processor.
【図3】プロセッサを貸し出しする情報処理装置上のピ
ロセッサの処理の流れ図である。FIG. 3 is a flowchart of processing of a processor on an information processing device that rents out a processor.
【図4】貸し出されたプロセッサの返還処理の流れ図で
ある。FIG. 4 is a flowchart of a return process of a rented processor.
【図5】本実施例での主要な各OSの要素処理部の概要
を示す図である。FIG. 5 is a diagram showing an outline of an element processing unit of each main OS in this embodiment.
101 高速な通信回線 102、103、104 CPU間割込みライン 201,301,401 通信回線101で結ばれた複
数台の計算機 202,302,303,402 各計算機に1つ以上
備えられたMMU内蔵プロセッサ 210,410 ディスプレイ&キーボード 220,320 ハードディスク装置などの2次記憶装
置 230,330,430 全体で単一なメモリ空間をな
す物理メモリ 240,340,440 各計算機上のローカルメモリ 250,350,450 各計算機上で動作するOS 260,360 460 情報交換領域101 High-speed communication line 102, 103, 104 Interrupt line between CPUs 201, 301, 401 Multiple computers connected by communication line 101 202, 302, 303, 402 MMU built-in processor 210 provided for each computer 210 , 410 Display & keyboard 220, 320 Secondary storage device such as hard disk device 230, 330, 430 Physical memory 240, 340, 440 Local memory on each computer 250, 350, 450 Each computer OS 260, 360 460 information exchange area running on
Claims (17)
であって、 前記CPUの各々での処理負荷状態を検知するCPU負
荷状態検知手段と、 他の情報処理装置のCPUでの処理負荷状態を獲得する
他CPU負荷状態獲得手段と、 前記CPU負荷状態検知手段によって検知された処理負
荷状態と、前記他CPU負荷状態獲得手段によって獲得
された他の情報処理装置のCPUでの処理負荷状態に基
づいて、他の情報処理装置を選択する情報処理装置選択
手段と、 前記情報処理装置選択手段によって選択された情報処理
装置にCPUの貸出しを要求するCPU貸出し要求手段
と、 前記CPU貸出し要求手段のCPU貸出し要求に基づい
て、貸し出されたCPUに、所定のプロセスの実行を許
可して実行させる外部CPU実行許可手段とを備えるこ
とを特徴とする情報処理装置。1. An information processing apparatus having one or more CPUs, comprising CPU load status detecting means for detecting a processing load status of each of the CPUs, and processing load status of a CPU of another information processing apparatus. Other CPU load status acquisition means, a processing load status detected by the CPU load status detection means, and a processing load status in the CPU of another information processing apparatus acquired by the other CPU load status acquisition means. An information processing apparatus selecting unit that selects another information processing apparatus based on the information processing apparatus; a CPU lending requesting unit that requests the information processing apparatus selected by the information processing apparatus selecting unit to lend a CPU; and a CPU lending requesting unit. And an external CPU execution permission unit that allows the rented CPU to execute a predetermined process based on the CPU lending request. The information processing apparatus characterized by.
荷状態が高ければ、前記他CPU負荷状態獲得手段によ
って獲得された他の情報処理装置のCPUでの処理負荷
状態に基づいて、他の情報処理装置を選択することを特
徴とする請求項1に記載の情報処理装置。2. The information processing device selecting means, if the processing load state detected by the CPU load state detecting means is high, the CPU of another information processing device obtained by the other CPU load state obtaining means. The information processing apparatus according to claim 1, wherein another information processing apparatus is selected based on a processing load state.
記CPU負荷状態検知手段によって検知された処理負荷
状態が低く、かつ貸し出されたCPUがあれば、前記貸
し出されたCPUを備える情報処理装置の管理下に戻す
手段を備えることを特徴とする請求項1に記載の情報処
理装置。3. The information processing device selecting means further includes: if the processing load state detected by the CPU load state detecting means is low and there is a rented CPU, the information processing device including the rented CPU. The information processing apparatus according to claim 1, further comprising means for returning the control to the controlled state.
記他の情報処理装置の有するCPUとは、同じプログラ
ムコードを解釈し、実行できることを特徴とする請求項
1に記載の情報処理装置。4. The information processing apparatus according to claim 1, wherein the CPU of the information processing apparatus and the CPU of the other information processing apparatus can interpret and execute the same program code.
であって、 他の情報処理装置からのCPU貸出し要求に基づき、貸
し出し可能なCPUを選択する選択手段と、 前記選択手段で選択された貸し出し可能なCPUの現在
のプロセス、または実行が予定されているプロセスを、
他のCPUに割り当てるプロセス割り当て手段と、 前記選択手段で選択された貸し出し可能なCPUに、前
記他の情報処理装置の所定の記憶手段に記憶されている
プログラムをアクセスさせて実行させる他プロセス実行
手段とを備えることを特徴とする情報処理装置。5. An information processing apparatus having one or more CPUs, comprising: selecting means for selecting a rentable CPU based on a CPU lending request from another information processing apparatus; and the selecting means. The current process of the CPU that can be lent out, or the process that is scheduled to be executed,
Process allocating means for allocating to another CPU, and other process executing means for causing the lendable CPU selected by the selecting means to access and execute a program stored in a predetermined storage means of the other information processing apparatus. An information processing device comprising:
段で選択された貸し出し可能なCPUでのプロセス実行
を、前記他の情報処理装置の所定のCPUでの所定のプ
ロセスの実行とパラレルに行うことを特徴とする請求項
5に記載の情報処理装置。6. The other process execution means performs the process execution by the lendable CPU selected by the selection means in parallel with the predetermined process execution by the predetermined CPU of the other information processing apparatus. The information processing apparatus according to claim 5, wherein:
であって、 第1のグループのCPUの処理負荷状態を検知するCP
U負荷状態検知工程と、 他グループのCPUでの処理負荷状態を獲得する他グル
ープCPU負荷状態獲得工程と、 前記CPU負荷状態検知工程によって検知された処理負
荷状態と、前記他グループCPU負荷状態獲得工程によ
って獲得された他グループのCPUでの処理負荷状態に
基づいて、他のグループから1つのグループを選択する
他グループ選択工程と、 前記他グループ選択工程によって選択された他グループ
からのCPUの貸出しを要求するCPU貸出し要求工程
と、 前記CPU貸出し要求工程のCPUの貸出し要求に基づ
き、貸し出すCPUを選択する貸し出しCPU選択工程
と、 前記貸し出しCPU選択工程で選択されたCPUが所定
のプロセスを実行することを許可する外部CPU実行許
可工程と、 前記外部CPU実行許可工程で前記所定のプロセスの実
行を許可されたCPUに、前記他のグループの所定の記
憶手段に記憶されているプログラムをアクセスさせて実
行させる他プロセス実行工程とを備えることを特徴とす
る情報処理方法。7. An information processing method using one or more CPUs, the CP detecting a processing load state of CPUs in a first group.
U load state detection step, other group CPU load state acquisition step for obtaining CPU load state of another group, processing load state detected by the CPU load state detection step, and other group CPU load state acquisition step Another group selection step of selecting one group from another group based on the processing load state of the CPU of the other group acquired by the step, and lending of the CPU from the other group selected by the other group selection step Requesting a CPU lending request, a lending CPU selecting step of selecting a CPU to lend out based on the CPU lending request of the CPU lending requesting step, and a CPU selected in the lending CPU selecting step executes a predetermined process. An external CPU execution permitting step for permitting Information processing, comprising: another process execution step of causing a CPU, which is permitted to execute the predetermined process in a step, to access and execute a program stored in a predetermined storage means of the other group. Method.
荷状態が第1の所定値より高ければ、前記他グループC
PU負荷状態獲得工程によって獲得された処理負荷状態
が第2の所定値より低い他のグループから、1つのグル
ープを選択することを特徴とする請求項7に記載の情報
処理方法。8. The other group selection step, if the processing load state detected by the CPU load state detection step is higher than a first predetermined value, the other group C
The information processing method according to claim 7, wherein one group is selected from other groups whose processing load state acquired by the PU load state acquisition step is lower than a second predetermined value.
CPU負荷状態検知工程によって検知された処理負荷状
態が所定値より低く、かつ他のグループより貸し出され
たCPUがあれば、前記貸し出されたCPUを前記他の
グループの管理下に戻す工程を備えることを特徴とする
請求項7に記載の情報処理方法。9. The other CPU, if the processing load state detected by the CPU load state detecting step is lower than a predetermined value and there is a CPU lent out from another group, the other group selecting step further comprises: The information processing method according to claim 7, further comprising the step of returning the control to the control of the other group.
他グループのCPUとは、同じプログラムコードを解釈
し、実行することを特徴とする請求項7に記載の情報処
理方法。10. The information processing method according to claim 7, wherein the CPUs of the first group and the CPUs of the other group interpret and execute the same program code.
に、前記CPU貸出し要求工程のCPUの貸出し要求に
基づいて、貸し出すCPUを選択した際、選択されたC
PUが現在の実行中のプロセス、または実行が予定され
ているプロセスを持つ場合、他のCPUに前記プロセス
を割り当てるプロセス割り当て工程を備えることを特徴
とする請求項7に記載の情報処理方法。11. The lending CPU selection step further includes selecting the C selected when the CPU to be rented is selected based on the lending request of the CPU in the CPU lending request step.
The information processing method according to claim 7, further comprising a process allocation step of allocating the process to another CPU when the PU has a currently executing process or a process scheduled to be executed.
法であって、 CPU貸出し要求に基づき、貸し出し可能なCPUを選
択する選択工程と、 前記選択工程で選択された貸し出し可能なCPUの現在
のプロセス、または実行が予定されているプロセスを、
他のCPUに割り当てるプロセス割り当て工程と、 前記選択工程で選択された貸し出し可能なCPUに、他
グループの所定のプロセスを実行させる他プロセス実行
工程とを備えることを特徴とする情報処理方法。12. An information processing method having one or more CPUs, comprising: a selecting step of selecting a rentable CPU based on a CPU lending request; and a current lending CPU selected in the selecting step. A process, or a process scheduled to run,
An information processing method comprising: a process allocation step of allocating to another CPU; and another process execution step of causing the lendable CPU selected in the selection step to execute a predetermined process of another group.
で選択された貸し出し可能なCPUでのプロセス実行
を、前記他グループの所定のCPUでの所定のプロセス
の実行とパラレルに行うことを特徴とする請求項12に
記載の情報処理方法。13. The other process execution step performs the process execution by the lendable CPU selected in the selection step in parallel with the predetermined process execution by the predetermined CPU of the other group. The information processing method according to claim 12.
PUを管理する管理単位であることを特徴とする請求項
12に記載の情報処理方法。14. The group comprises one or more Cs.
The information processing method according to claim 12, which is a management unit that manages a PU.
負荷状態を検知するCPU負荷状態検知手段と、 第1のグループ以外の各グループに属するCPUでの各
処理負荷状態を獲得する他CPU負荷状態獲得手段と、 前記CPU負荷状態検知手段で検知された処理負荷状態
と、前記他CPU負荷状態獲得手段によって獲得された
前記第1のグループ以外の各グループに属するCPUで
の各処理負荷状態に基づいて、前記第1のグループ以外
の各グループから1つのグループを選択するグループ選
択手段と、 前記グループ選択手段で選択されたグループからCPU
の貸出しを要求するCPU貸出し要求手段と、 前記CPU貸出し要求手段のCPUの貸出し要求に基づ
き、貸し出すCPUを選択する貸し出しCPU選択手段
と、 前記貸し出しCPU選択手段で選択されたCPUが所定
のプロセスを実行することを許可する外部CPU実行許
可手段と、 前記外部CPU実行許可手段で前記所定のプロセスの実
行を許可されたCPUに、前記他のグループの所定の記
憶手段に記憶されているプログラムをアクセスさせて実
行させる他プロセス実行手段とを備えることを特徴とす
る情報処理装置。15. A CPU load state detecting means for detecting a processing load state of a CPU belonging to the first group, and another CPU load state for obtaining each processing load state of a CPU belonging to each group other than the first group. Based on the acquisition means, the processing load status detected by the CPU load status detection means, and the processing load status of the CPU belonging to each group other than the first group acquired by the other CPU load status acquisition means. A group selection means for selecting one group from each group other than the first group, and a CPU selected from the groups selected by the group selection means.
CPU lending request means for requesting lending, a lending CPU selecting means for selecting a CPU to lend based on the CPU lending request of the CPU lending request means, and a CPU selected by the lending CPU selecting means performs a predetermined process. An external CPU execution permission unit that permits execution, and a CPU that is permitted to execute the predetermined process by the external CPU execution permission unit access a program stored in a predetermined storage unit of the other group. An information processing apparatus, comprising: another process executing means for executing the operation.
PUを管理する管理単位であることを特徴とする請求項
15に記載の情報処理装置。16. The group comprises one or more Cs.
The information processing apparatus according to claim 15, which is a management unit that manages a PU.
に、前記CPU貸出し要求手段のCPUの貸出し要求に
基づき、貸し出すCPUを選択した際、選択されたCP
Uが現在の実行中のプロセス、または実行が予定されて
いるプロセスを持つ場合、他のCPUに前記プロセスを
割り当てるプロセス割り当て手段を備えることを特徴と
する請求項15に記載の情報処理装置。17. The CP selected when the lending CPU selecting unit further selects a CPU to lend based on a lending request from the CPU of the CPU lending requesting unit.
The information processing apparatus according to claim 15, further comprising a process allocating unit that allocates the process to another CPU when U has a currently executing process or a process scheduled to be executed.
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20720594A JP3862293B2 (en) | 1994-08-31 | 1994-08-31 | Information processing method and apparatus |
| US08/520,586 US5884077A (en) | 1994-08-31 | 1995-08-30 | Information processing system and method in which computer with high load borrows processor of computer with low load to execute process |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20720594A JP3862293B2 (en) | 1994-08-31 | 1994-08-31 | Information processing method and apparatus |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0877026A true JPH0877026A (en) | 1996-03-22 |
| JP3862293B2 JP3862293B2 (en) | 2006-12-27 |
Family
ID=16535981
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP20720594A Expired - Fee Related JP3862293B2 (en) | 1994-08-31 | 1994-08-31 | Information processing method and apparatus |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3862293B2 (en) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1131082A (en) * | 1997-07-11 | 1999-02-02 | Teijin Seiki Co Ltd | Operating system and medium recording operating system |
| JP2004015829A (en) * | 2002-04-19 | 2004-01-15 | Make Softwear:Kk | Device, method, and program for imaging and editing |
| JP2004029052A (en) * | 2002-04-19 | 2004-01-29 | Make Softwear:Kk | Picture photographing and editing method, picture photographing and editing device |
| JP2005276164A (en) * | 2004-02-27 | 2005-10-06 | Sony Corp | Information processing apparatus, information processing method, information processing system, and information processing program |
| WO2012066633A1 (en) * | 2010-11-16 | 2012-05-24 | 富士通株式会社 | Communication device, load distribution method and storage medium |
| JP5968563B1 (en) * | 2015-04-27 | 2016-08-10 | 三菱電機株式会社 | Information processing apparatus, resource allocation method, and resource allocation program |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05210522A (en) * | 1991-08-08 | 1993-08-20 | Internatl Business Mach Corp <Ibm> | Method of changing dispatch-mode |
| JPH05257654A (en) * | 1992-03-12 | 1993-10-08 | Hitachi Ltd | Automatic start-up method for computer |
| JPH05324357A (en) * | 1992-05-27 | 1993-12-07 | Toshiba Corp | System for controlling hierarchical address |
| JPH05324361A (en) * | 1992-05-15 | 1993-12-07 | Fujitsu Ltd | CPU control method for virtual computer system |
| JPH07129518A (en) * | 1993-11-05 | 1995-05-19 | Canon Inc | Computer system |
| JPH07311749A (en) * | 1994-05-19 | 1995-11-28 | Toshiba Corp | Multiprocessor system and kernel replacement method |
| JPH0830472A (en) * | 1994-07-19 | 1996-02-02 | Canon Inc | Load balancing method |
-
1994
- 1994-08-31 JP JP20720594A patent/JP3862293B2/en not_active Expired - Fee Related
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH05210522A (en) * | 1991-08-08 | 1993-08-20 | Internatl Business Mach Corp <Ibm> | Method of changing dispatch-mode |
| JPH05257654A (en) * | 1992-03-12 | 1993-10-08 | Hitachi Ltd | Automatic start-up method for computer |
| JPH05324361A (en) * | 1992-05-15 | 1993-12-07 | Fujitsu Ltd | CPU control method for virtual computer system |
| JPH05324357A (en) * | 1992-05-27 | 1993-12-07 | Toshiba Corp | System for controlling hierarchical address |
| JPH07129518A (en) * | 1993-11-05 | 1995-05-19 | Canon Inc | Computer system |
| JPH07311749A (en) * | 1994-05-19 | 1995-11-28 | Toshiba Corp | Multiprocessor system and kernel replacement method |
| JPH0830472A (en) * | 1994-07-19 | 1996-02-02 | Canon Inc | Load balancing method |
Non-Patent Citations (3)
| Title |
|---|
| 光澤敦: "分散OS Museの概要とマイグレーション機能の考察", インターフェース, vol. 第17巻,第10号, CSND199800206005, 1 October 1991 (1991-10-01), pages 183 - 189, ISSN: 0000773723 * |
| 前川守他, 分散オペレーティングシステム −UNIXの次にくるもの, vol. 初版, CSNB199900259001, 25 December 1991 (1991-12-25), pages 91 - 105, ISSN: 0000773721 * |
| 数藤義明他: "分散共有メモリ上の分散スレッド実行環境の構成と評価", 情報処理学会研究報告, vol. 第94巻,第64号, CSNG200000455021, 22 July 1994 (1994-07-22), pages 161 - 168, ISSN: 0000773722 * |
Cited By (10)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH1131082A (en) * | 1997-07-11 | 1999-02-02 | Teijin Seiki Co Ltd | Operating system and medium recording operating system |
| JP2004015829A (en) * | 2002-04-19 | 2004-01-15 | Make Softwear:Kk | Device, method, and program for imaging and editing |
| JP2004029052A (en) * | 2002-04-19 | 2004-01-29 | Make Softwear:Kk | Picture photographing and editing method, picture photographing and editing device |
| JP2005276164A (en) * | 2004-02-27 | 2005-10-06 | Sony Corp | Information processing apparatus, information processing method, information processing system, and information processing program |
| US8413149B2 (en) | 2004-02-27 | 2013-04-02 | Sony Corporation | Priority based processor reservations |
| WO2012066633A1 (en) * | 2010-11-16 | 2012-05-24 | 富士通株式会社 | Communication device, load distribution method and storage medium |
| JP5527425B2 (en) * | 2010-11-16 | 2014-06-18 | 富士通株式会社 | COMMUNICATION DEVICE, LOAD DISTRIBUTION METHOD, AND RECORDING MEDIUM |
| US9021217B2 (en) | 2010-11-16 | 2015-04-28 | Fujitsu Limited | Communication apparatus, load distribution method, and recording medium |
| JP5968563B1 (en) * | 2015-04-27 | 2016-08-10 | 三菱電機株式会社 | Information processing apparatus, resource allocation method, and resource allocation program |
| WO2016174717A1 (en) * | 2015-04-27 | 2016-11-03 | 三菱電機株式会社 | Information processing device, resource allocation method and resource allocation program |
Also Published As
| Publication number | Publication date |
|---|---|
| JP3862293B2 (en) | 2006-12-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5884077A (en) | Information processing system and method in which computer with high load borrows processor of computer with low load to execute process | |
| JP3678414B2 (en) | Multiprocessor system | |
| US6353844B1 (en) | Guaranteeing completion times for batch jobs without static partitioning | |
| US7299468B2 (en) | Management of virtual machines to utilize shared resources | |
| US9678497B2 (en) | Parallel processing with cooperative multitasking | |
| JP3965157B2 (en) | Method and apparatus for dispatching tasks in a non-uniform memory access (NUMA) computer system | |
| JP4921054B2 (en) | Load balancing control system and load balancing control method | |
| CN100568182C (en) | Method and system for distributing work within a logically partitioned data processing system | |
| CN100578459C (en) | Thread scheduling method and device thereof | |
| CN103729480B (en) | Method for rapidly finding and scheduling multiple ready tasks of multi-kernel real-time operating system | |
| CN114721818A (en) | Kubernetes cluster-based GPU time-sharing method and system | |
| JP3862293B2 (en) | Information processing method and apparatus | |
| JP3746826B2 (en) | Resource lock control mechanism | |
| JPH07129518A (en) | Computer system | |
| JP2002278778A (en) | Scheduling device in symmetric multiprocessor system | |
| CN110347507A (en) | Multi-level fusion real-time scheduling method based on round-robin | |
| Jette et al. | Gang scheduler-timesharing the cray t3d | |
| CN119718539B (en) | Memory hot-plug control method and electronic device for server-unaware security container | |
| JPH11249917A (en) | Parallel computers, their batch processing method, and storage medium | |
| JPH0115899B2 (en) | ||
| Scherr | The design of IBM OS/VS2 release 2 | |
| CN117971429A (en) | A near data processing system and method based on coroutine | |
| JP3585956B2 (en) | Information processing apparatus and method | |
| JP2856761B2 (en) | Resource lock management device | |
| JP2023179057A (en) | Arithmetic processing device and processing method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040806 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041005 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050708 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050906 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060106 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060308 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060428 |
|
| 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: 20060915 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060926 |
|
| 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: 20091006 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101006 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111006 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111006 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121006 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131006 Year of fee payment: 7 |
|
| LAPS | Cancellation because of no payment of annual fees |