JPH11154138A - Server - Google Patents

Server

Info

Publication number
JPH11154138A
JPH11154138A JP9337673A JP33767397A JPH11154138A JP H11154138 A JPH11154138 A JP H11154138A JP 9337673 A JP9337673 A JP 9337673A JP 33767397 A JP33767397 A JP 33767397A JP H11154138 A JPH11154138 A JP H11154138A
Authority
JP
Japan
Prior art keywords
server
structure information
global
variable
client
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.)
Pending
Application number
JP9337673A
Other languages
Japanese (ja)
Inventor
Sadaji Asano
貞二 浅野
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP9337673A priority Critical patent/JPH11154138A/en
Publication of JPH11154138A publication Critical patent/JPH11154138A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To safely enable version-up of a module without having to stop a system concerning a client/server system in a distributed object environment. SOLUTION: A global parameter and its structure information are backed up in a backup file 42 on a disk 4. The structure information of the global parameter on a module 41 is written out in the load module 41 on the disk 4 as well. At the time of start-up, two pieces of said structure information are compared. When both pieces of structure information are coincident as a result of comparison, start-up is made successful, When both pieces of structure information are not coincident by the version-up of the module, on the other hand, fail information is reported to a client or according to the structure information on the side of the module 41, the global parameter is defined again.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、サーバに関し、特
に、分散オブジェクト環境下におけるサーバプログラム
のアップデート(更新)前後においてグローバル変数が
整合していない場合にグローバル変数を再構成して処理
を継続することができるサーバに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a server, and in particular, reconfigures a global variable when a global variable does not match before and after updating a server program in a distributed object environment and continues processing. Regarding the server that can.

【0002】[0002]

【従来の技術】クライアント・サーバ型の分散オブジェ
クト環境下では、一般的にネットワーク上に存在する複
数のホストコンピュータがクライアント・サーバ型のコ
ンピュータシステムを構成している。このコンピュータ
システムでは、各サーバは特定のホストコンピュータに
依存することなく配置されていて、クライアントは目的
のサーバ処理を実行するサーバが存在するホストコンピ
ュータを意識することなく処理を依頼(リクエスト)す
ることができる。このようなシステムでは、多数のコン
ピュータに分散されたオブジェクトが、代表的には、 C
ommon Object Request Broker Architecture(CORB
A標準)によって統合的に管理されている。CORBA
標準の環境下では、 Object Request Broker(ORB)
と呼ばれるシステムプログラムが各ホストコンピュータ
に配置されていて、クライアントとサーバ間のやりとり
を管理している。
2. Description of the Related Art In a client-server type distributed object environment, generally, a plurality of host computers existing on a network constitute a client-server type computer system. In this computer system, each server is located without depending on a specific host computer, and the client requests (requests) processing without being aware of the host computer on which the server that executes the target server processing exists. Can be. In such a system, objects distributed over many computers are typically represented by C
ommon Object Request Broker Architecture (CORB
A standard). CORBA
Under standard environment, Object Request Broker (ORB)
A system program called is installed in each host computer and manages the exchange between the client and the server.

【0003】クライアントとサーバ間のインタフェース
は Interface Difinition Language(IDL)と呼ばれ
る記述言語であらかじめ定義されていなければならな
い。この記述言語で定義されたインタフェースは、すべ
てのホストコンピュータ上のORBが解釈可能であっ
て、この定義に従ってクライアントからサーバへのリク
エストが管理される。特開平8−272725号公報に
は、CORBA標準による分散オブジェクト環境におい
てサーバの構成情報を判定し、操作するためのシステム
および方法が開示されている。
An interface between a client and a server must be defined in advance in a description language called Interface Definition Language (IDL). The interface defined in this description language can be interpreted by ORBs on all host computers, and requests from the client to the server are managed according to this definition. JP-A-8-272725 discloses a system and method for determining and operating server configuration information in a distributed object environment based on the CORBA standard.

【0004】上記コンピュータシステムにおいては、シ
ステム上に存在するすべてのサーバが、クライアントか
らのリクエストに即座に対応できるように常にアクティ
ブ状態におかれていることが望ましい。しかし、このよ
うにすべてのサーバを常にアクティブ状態に維持するこ
とは、コンピュータ上の資源を無駄に消費することとな
る。
In the above computer system, it is desirable that all servers existing on the system are always in an active state so as to be able to immediately respond to a request from a client. However, keeping all servers active at all times wastes resources on the computer.

【0005】そこで、クライアントからリクエストがな
い場合は、ORBの管理の下、サーバのプロセスを停止
したシャットダウン状態にしている。すなわち、メモリ
やテーブル類等の資源を解放してプロセス・コントロー
ル・ブロックを消去している。
Therefore, when there is no request from the client, the server process is shut down under the management of the ORB. That is, resources such as memory and tables are released to erase the process control block.

【0006】そして、新たなリクエストが発行されたと
きに、ORBは新たなプロセスをサーバにアサインし
(割り当て)、サーバをアクティブ状態にする。アクテ
ィブ状態になると、サーバの記憶空間はシャットダウン
前とは別の新たな記憶空間となり、先に記憶空間に存在
したカウンタ値等のグローバル変数の値は保証されな
い。
When a new request is issued, the ORB assigns (assigns) a new process to the server and activates the server. When the server enters the active state, the storage space of the server becomes a new storage space different from that before the shutdown, and the value of the global variable such as the counter value existing in the storage space earlier is not guaranteed.

【0007】サーバは、このような不具合に鑑み、ディ
スク上のファイルにグローバル変数の複製をもち、シャ
ットダウン後のスタートアップ時に、この複製のグロー
バル変数を読み出すように構成している。このグローバ
ル変数のバックアップ方式は、システムのクラッシュ、
例えば、バグ等によるプロセス停止の後の復旧時にもグ
ローバル変数のバックアップ方式として利用することが
できる。
In view of such a problem, the server has a configuration in which a global variable is duplicated in a file on a disk, and the global variable of the duplicate is read out at startup after shutdown. This backup method of global variables can be used for system crashes,
For example, it can be used as a backup method for global variables at the time of recovery after a process stop due to a bug or the like.

【0008】分散オブジェクト環境下では、特定のサー
バの保守をするときにもシステム全体を停止しなくても
よいという利点がある。例えば、モジュールつまりアプ
リケーション・ファイルのアップデートの際、サーバが
シャットダウン状態においてはプロセスとサーバとの対
応関係がなくなっていることから、ディスク上のサーバ
の実行形式ファイルつまりサーバのアプリケーション・
プログラムを入れ替えるのみで、新たなリクエストを受
けたとき、サーバはアクティブ状態になる。
[0008] In a distributed object environment, there is an advantage that it is not necessary to stop the entire system even when maintaining a specific server. For example, when updating a module, that is, an application file, when the server is in a shutdown state, the correspondence between the process and the server is lost.
The server becomes active when a new request is received simply by replacing the program.

【0009】[0009]

【発明が解決しようとする課題】しかし、上記バックア
ップされたグローバル変数を使用して新たなリクエスト
に応答する方式では、ディスク上のファイルにバックア
ップされたグローバル変数の構造に変更がない場合にの
み正常な起動が可能である。すなわち、モジュールのア
ップデートの際、新しいサーバでグローバル変数の構造
がシャットダウン前から変更されている場合には、ディ
スク上のサーバの実行形式ファイルを入れ替えるのみで
は、サーバをアクティブ状態にすることができない。
However, in the method of responding to a new request using the backed up global variables, the method of normalizing only when there is no change in the structure of the backed up global variables in a file on the disk. Startup is possible. That is, when updating the module, if the global variable structure is changed in the new server before the shutdown, the server cannot be activated simply by replacing the server executable file on the disk.

【0010】本発明は、上記問題点を解消し、モジュー
ルのアップデートの際、シャットダウン前後においてグ
ローバル変数の変更があった場合でも容易にスタートア
ップさせることができるサーバを提供することを目的と
する。
SUMMARY OF THE INVENTION It is an object of the present invention to solve the above problems and to provide a server which can be easily started up even when a global variable is changed before and after shutdown when updating a module.

【0011】[0011]

【課題を解決するための手段】上記の課題を解決し、目
的を達成するための本発明は、クライアント・サーバ型
の分散オブジェクト環境に配置されたサーバにおいて、
サーバ上のグローバル変数の複製およびその構造情報
(第1構造情報)を格納したバックアップファイルと、
サーバのアプリケーション・プログラム、ならびに該ア
プリケーション・プログラム上のグローバル変数の構造
情報(第2構造情報)を格納した実行形式ファイルと、
サーバプロセスのスタートアップ時に、前記第1構造情
報および第2構造情報の一致・不一致を判別するグロー
バル変数の構造比較手段と、前記第1構造情報および第
2構造情報が不一致のときにスタートアップ失敗を表す
フェール情報をクライアントに通知するフェール処理手
段とを具備した点に特徴がある。
SUMMARY OF THE INVENTION In order to solve the above-mentioned problems and achieve the object, the present invention provides a server arranged in a client-server type distributed object environment.
A backup file storing a copy of the global variable on the server and its structure information (first structure information);
An executable file storing an application program of the server and structure information (second structure information) of global variables on the application program;
Global variable structure comparing means for judging whether the first structure information and the second structure information match or not at the start-up of the server process, and indicating a startup failure when the first structure information and the second structure information do not match. It is characterized in that a fail processing unit for notifying the client of fail information is provided.

【0012】上記特徴によれば、実行形式ファイルにア
プリケーション・プログラムのグローバル変数の構造情
報をもたせた。したがって、アプリケーション・プログ
ラムのアップデートでグローバル変数の構造に変更があ
った場合に、そのことを、第1および第2構造情報の比
較によって判別することができる。そして、グローバル
変数の変更があった場合は、そのままスタートアップで
きないので、クライアントへスタートアップ失敗を通知
してオペレータの介入を促すことができる。
According to the above feature, the executable file has the structure information of the global variables of the application program. Therefore, when the structure of the global variable is changed by updating the application program, it can be determined by comparing the first and second structure information. When the global variables are changed, the startup cannot be performed as it is, so that the startup failure can be notified to the client to prompt the operator to intervene.

【0013】[0013]

【発明の実施の形態】以下、本発明の実施形態を図面を
参照して詳細に説明する。図2は、本発明の一実施例に
係るクライアント・サーバ・システムの構成を示すブロ
ック図である。同図において、LAN等のネットワーク
上にワークステーションWS1,WS2,WS3が接続
されている。ワークステーションWS1,WS2,WS
3は、それぞれシステムプログラムとしてORBを有し
ている。ここでは、ワークステーションWS1にクライ
アント1が存在し、ワークステーションWS2,WS3
にサーバ2,3が存在する場合を想定している。
Embodiments of the present invention will be described below in detail with reference to the drawings. FIG. 2 is a block diagram showing the configuration of the client server system according to one embodiment of the present invention. In the figure, workstations WS1, WS2 and WS3 are connected on a network such as a LAN. Workstation WS1, WS2, WS
3 has an ORB as a system program. Here, the client 1 exists in the workstation WS1, and the workstations WS2 and WS3
It is assumed that servers 2 and 3 exist in the server.

【0014】図3は、上記クライアント・サーバ・シス
テムのインタフェースの構造を示す図である。同図にお
いて、ワークステーションWS1〜WS3はシステムプ
ログラムとしてのORBと記述言語IDLで定義された
インタフェースを介してデータの授受をする。すなわ
ち、ワークステーションWS1上のクライアント1で発
行されたリクエストREQはIDLおよびORBを介し
てワークステーションWS2,WS3上のサーバ2,3
に通知される。また、前記各サーバ2,3での処理結果
は、IDL5およびORB6を介して前記クライアント
1に通知される。
FIG. 3 is a diagram showing the structure of the interface of the client server system. In the figure, workstations WS1 to WS3 exchange data via an interface defined by a description language IDL and an ORB as a system program. That is, the request REQ issued by the client 1 on the workstation WS1 is transmitted to the servers 2 and 3 on the workstations WS2 and WS3 via the IDL and ORB.
Will be notified. Further, the processing results of the servers 2 and 3 are notified to the client 1 via the IDL 5 and the ORB 6.

【0015】クライアント1がサーバ2に対してリクエ
ストを発した場合のサーバ2の動作を図1を参照して説
明する。サーバ2はコンピュータとこのコンピュータ上
で実行されるアプリケーション・プログラムをロードす
るためのメモリを有する。ディスク4はアプリケーショ
ン・プログラムを格納した実行形式ファイル41とグロ
ーバル変数のバックアップファイル42とを有してい
る。グローバル変数は、サーバ2でのサービスの実行に
よって変数の書き換えが発生する毎に、バックアップフ
ァイル42に格納、つまりバックアップされる。したが
って、シャットダウン時には、グローバル変数が確実に
バックアップされており、再度のスタートアップ時に
は、バックアップファイル42のグローバル変数を使用
することができる。なお、バックアップファイル42に
はクローバル変数のほか該変数の構造情報I1も格納さ
れている。前記実行形式ファイル41もアプリケーショ
ン・プログラム上のグローバル変数の構造情報I2を有
している。
The operation of the server 2 when the client 1 issues a request to the server 2 will be described with reference to FIG. The server 2 has a computer and a memory for loading an application program executed on the computer. The disk 4 has an executable file 41 storing an application program and a backup file 42 of global variables. The global variables are stored in the backup file 42, that is, backed up every time the variables are rewritten by the execution of the service in the server 2. Therefore, at the time of shutdown, the global variables are surely backed up, and at the time of restarting again, the global variables of the backup file 42 can be used. It should be noted that the backup file 42 stores not only global variables but also structural information I1 of the variables. The executable file 41 also has structure information I2 of global variables on the application program.

【0016】サーバ2はリクエストREQを受けるまで
はシャットダウン状態である。サーバ2はリクエストR
EQを受けると、ORBの管理動作によりディスク4上
の実行形式ファイル41をサーバ3のメモリ上にロード
する。実行形式ファイル41がロードされると、サーバ
2は自己のスタートアップ処理を開始する。スタートア
ップ処理では、例えばローカル変数や資源つまりメモリ
やI/Oの初期化が行われる。スタートアップ処理に
は、ディスク4上のバックアップファイル42に格納さ
れているグローバル変数の複製をロードして、シャット
ダウン前の状態の復元を図る処理も含まれる。
The server 2 is in a shutdown state until receiving the request REQ. Server 2 requests R
When the EQ is received, the executable file 41 on the disk 4 is loaded on the memory of the server 3 by the management operation of the ORB. When the executable file 41 is loaded, the server 2 starts its own startup processing. In the start-up processing, for example, local variables and resources, that is, memories and I / O are initialized. The startup process includes a process of loading a copy of the global variable stored in the backup file 42 on the disk 4 to restore the state before the shutdown.

【0017】サーバ2における復元処理では、必要に応
じてグローバル変数の再配置が実行される。すなわち、
シャットダウン状態の間にアプリケーション・プログラ
ムがアップデートされている場合がある。この場合、シ
ャットダウン前後でバックアップファイル42のグロー
バル変数の構造情報I1とアプリケーション・プログラ
ム上のグローバル変数の構造情報I2とが異なっている
ことがある。そこで、グローバル変数の再配置では、グ
ローバル変数のバックアップファイル42に含まれてい
るグローバル変数の構造情報I1と実行形式ファイル4
1に含まれているグローバル変数の構造情報I2とを比
較する。比較の結果、両者が一致した場合はシャットダ
ウン前の状態が復元されたので、クライアント1からの
リクエストREQの処理を開始する。
In the restoration processing in the server 2, global variables are rearranged as necessary. That is,
Application programs may be updated during the shutdown state. In this case, before and after the shutdown, the structure information I1 of the global variables in the backup file 42 and the structure information I2 of the global variables in the application program may be different. Therefore, in the relocation of the global variables, the structure information I1 of the global variables included in the backup file 42 of the global variables and the execution format file 4
1 is compared with the structure information I2 of the global variable included in the global variable. As a result of the comparison, if they match, the state before the shutdown is restored, and the processing of the request REQ from the client 1 is started.

【0018】一方、サーバ2がシャットダウン状態の間
に前記実行形式ファイル41がアップデートされていて
両者が一致しない場合は、グローバル変数の補正処理を
行った後にリクエストREQの処理を開始する。
On the other hand, if the executable file 41 has been updated while the server 2 is in the shutdown state and the two do not match, the processing of the request REQ is started after the global variable is corrected.

【0019】グローバル変数の構造情報I1,I2が一
致しない場合、その不一致の態様により復元処理が異な
る。以下、グローバル変数のディスク4上の位置が異な
る場合と、新たなグローバル変数が追加された場合を説
明する。図4(a)はバックアップされていたグローバ
ル変数の構造情報I1の一例であり、図4(b)は実行
形式ファイル41に含まれるグローバル変数の構造情報
I2の一例である。構造情報I1,I2には、各グロー
バル変数のタイプ、サイズ、位置、および依存関係が含
まれている。
When the structure information I1 and I2 of the global variables do not match, the restoration processing differs depending on the mode of the mismatch. Hereinafter, a case where the position of the global variable on the disk 4 is different and a case where a new global variable is added will be described. FIG. 4A shows an example of the global variable structure information I1 that has been backed up, and FIG. 4B shows an example of the global variable structure information I2 included in the executable file 41. The structure information I1 and I2 include the type, size, position, and dependency of each global variable.

【0020】図4の構造情報I1,I2から、シャット
ダウン前後では変数Aおよび変数Cの位置が変更されて
いるのに加え、変数Bが追加されていることがわかる。
さらに、追加された変数Bは変数に対してプログラム上
で依存関係にあることも記述されている。依存関係の例
としては、例えば、変数Aを算出するときに、変数Bが
用いられる場合がある。したがって、このような依存関
係があるときには、変数Aが初期化される時には変数B
も同時に初期化される必要がある。
From the structural information I1 and I2 in FIG. 4, it can be seen that before and after the shutdown, the positions of the variables A and C are changed and the variable B is added.
Further, it is described that the added variable B has a dependency on the program on the variable. As an example of the dependency, for example, when calculating the variable A, the variable B may be used. Therefore, when such a dependency exists, the variable B is initialized when the variable A is initialized.
Also needs to be initialized at the same time.

【0021】なお、依存関係を含む構造情報は、実行形
式ファイル41をコンパイルするコンパイラの拡張機能
により生成するように構成できる。例えば、アルゴリズ
ム上、「A.table=K+B; If A.tab
le>4 then A.seat=TRUE」となっ
ていれば、コンパイラの構文解析機能により図4(b)
に示した依存関係が生成される。
Note that the structure information including the dependency can be generated by an extended function of a compiler that compiles the executable file 41. For example, in the algorithm, “A.table = K + B; If A.tab
le> 4 then A. If "seat = TRUE" is set, FIG.
Is generated.

【0022】シャットダウン前後の構造情報が異なるグ
ローバル変数の復元処理をフローチャートを参照して説
明する。図5において、スタートアップされた後、ステ
ップS1では前記構造情報I1とI2とを比較する。ス
テップS2では、前記構造情報I1とI2とが一致して
いるか否かを判断する。一致していなかった場合は、ス
テップS3に進み、追加されているグローバル変数があ
るか否かを判断する。グローバル変数が追加されていた
場合はステップS4に進み、追加されているグローバル
変数を初期化する。この実施形態では変数Bが追加され
ていて該変数Bはバックアップファイル42からロード
されることはないので、該変数Bの初期化が行われる。
グローバル変数の初期化は、該変数Bのオブジェクトに
おけるコンストラクタを有効にすることによって実行さ
れる。例えば、変数Bがカウンタ値である場合、該カウ
ンタ値のインクリメントおよびデクリメントを実行する
オブジェクトにおいて、該オブジェクトの生成(インス
トール)時にコンストラクタが有効となり、グローバル
変数であるカウンタ値に「0」がセットされ、初期化さ
れる。
A process of restoring a global variable having different structural information before and after shutdown will be described with reference to a flowchart. In FIG. 5, after startup, in step S1, the structure information I1 and I2 are compared. In step S2, it is determined whether or not the structure information I1 and I2 match. If they do not match, the process proceeds to step S3, and it is determined whether there is any added global variable. If a global variable has been added, the process proceeds to step S4, and the added global variable is initialized. In this embodiment, since the variable B is added and the variable B is not loaded from the backup file 42, the variable B is initialized.
The initialization of the global variable is performed by enabling the constructor in the object of the variable B. For example, when the variable B is a counter value, for an object for which the counter value is to be incremented and decremented, the constructor becomes valid when the object is generated (installed), and “0” is set to the global variable counter value. , Is initialized.

【0023】ステップS5では追加された変数が他のグ
ローバル変数と依存関係にあるか否かを判断する。依存
関係があればその依存関係にある変数を初期化する。こ
の実施形態ではグローバル変数Aの要素である「tab
le」および「seat」と依存関係があるので、これ
らの変数を初期化する。グローバル変数の追加がない場
合、および追加があっても依存関係がない場合は、ステ
ップS4〜S6はスキップされる。
In step S5, it is determined whether or not the added variable has a dependency on another global variable. If there are any dependencies, initialize the dependent variables. In this embodiment, the element of the global variable A “tab”
Since there are dependencies with "le" and "seat", these variables are initialized. Steps S4 to S6 are skipped when there is no addition of a global variable, and when there is no dependency even if it is added.

【0024】ステップS7では、グローバル変数の位置
に変更があったか否かを判断する。この判断が肯定なら
ばステップS8に進み、グローバル変数をディスク4上
に再配置する。この実施形態では、構造情報I2に従っ
て、グローバル変数を再構成する。すなわち、変数Aと
して位置(Location)1に置かれていた値は位
置3に変数Aとして再配置される。同様に、変数Cとし
て位置3に置かれていた値は位置1に変数Cとして再配
置される。こうして再配置されたグローバル変数はサー
バ2のメモリへロードされる。ステップS9では、クラ
イアント1から要求があったサービスを開始する。グロ
ーバル変数の位置変更がなかった場合は、ステップS1
0でグローバル変数の追加があったか否かを判断し、こ
の判断が肯定ならば、復元処理が終了したので、ステッ
プS9に進む。ステップS10が否定ならば追加構造情
報I1,I2の不一致はないので、ステップS11に進
んでフェール情報をクライアント1に通知してスタート
アップ失敗で終了する。
In step S7, it is determined whether or not the position of the global variable has been changed. If this determination is affirmative, the process proceeds to step S8, where the global variables are relocated on the disk 4. In this embodiment, the global variables are reconfigured according to the structure information I2. That is, the value placed at position (Location) 1 as variable A is rearranged at position 3 as variable A. Similarly, the value placed at position 3 as variable C is rearranged at position 1 as variable C. The global variables thus rearranged are loaded into the memory of the server 2. In step S9, the service requested by the client 1 is started. If the position of the global variable has not been changed, step S1
It is determined whether or not a global variable has been added at 0. If the determination is affirmative, the restoration process has been completed, and the process proceeds to step S9. If step S10 is negative, there is no inconsistency between the additional structure information I1 and I2, so the flow proceeds to step S11 to notify the client 1 of the fail information and ends with the startup failure.

【0025】上述の実施形態では、変数の位置の変更お
よび変数の追加があった例を示した。本発明は、これら
に限定されず、変数のタイプや変数のサイズが変更され
ていた場合にも同様に、該当するグローバル変数を初期
化することで対応できる。
In the above-described embodiment, an example has been described in which the position of a variable is changed and a variable is added. The present invention is not limited to these, and can also be applied to the case where the type of the variable or the size of the variable has been changed, by similarly initializing the corresponding global variable.

【0026】また、本実施形態では、グローバル変数の
構造情報I1,I2が異なった場合、グローバル変数を
再配置してロードする例を示した。しかし、これに限ら
ず、グローバル変数の不一致を検出した場合、サービス
開始のための処理を中断し、オペレータへの介入を要求
するフェール情報をクライアント1に通知してもよい。
これによってクライアント1がリカバリー処理に入るこ
とができる。また、不一致となったグローバル変数が、
あらかじめ定めた特定の変数である場合にのみ、前記フ
ェール情報を通知するようにしてもよい。
In the present embodiment, an example has been described in which, when the structure information I1 and I2 of the global variables are different, the global variables are rearranged and loaded. However, the present invention is not limited to this, and when a mismatch between global variables is detected, processing for starting a service may be interrupted, and fail information requesting intervention by an operator may be notified to the client 1.
This allows the client 1 to enter the recovery process. Also, the mismatched global variable is
The failure information may be notified only when the variable is a predetermined specific variable.

【0027】以上のように、本実施形態によれば、サー
バプログラムつまりサーバのアプリケーション・プログ
ラムのアップデートにより、グローバル変数の構造に変
更が生じた場合は、クライアントに通知してオペレータ
の介入を促すことができる。また、サーバプログラムの
アップデートによるグローバル変数の構造変更に応じて
自動的にグローバル変数の再定義をすることができるの
で、システムを停止することなく安全に実行形式ファイ
ルの入れ替えをして、サーバプログラムのアップデート
をすることができる。
As described above, according to the present embodiment, when the structure of a global variable is changed due to the update of the server program, that is, the application program of the server, the client is notified and the intervention of the operator is prompted. Can be. In addition, since global variables can be automatically redefined in response to changes in the structure of global variables due to server program updates, the executable files can be safely replaced without stopping the system, and the server program can be redefined. Updates can be made.

【0028】[0028]

【発明の効果】以上の説明から明らかなように、本発明
によれば、サーバプログラムのバージョンアップ等によ
ってグローバル変数の構造に変更が生じた場合、この構
造の変更を判別して、クライアントに通知する等の適当
なリカバリ処理をすることができる。
As is apparent from the above description, according to the present invention, when the structure of a global variable is changed due to a version upgrade of a server program or the like, the change in the structure is determined and notified to the client. An appropriate recovery process can be performed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の一実施形態に係るクライアント・サ
ーバメシステムのデータの流れを示す図である。
FIG. 1 is a diagram showing a data flow of a client-server system according to an embodiment of the present invention.

【図2】 本発明の一実施形態に係るクライアント・サ
ーバ・システムの構成を示すブロック図である。
FIG. 2 is a block diagram illustrating a configuration of a client server system according to an embodiment of the present invention.

【図3】 分散オブジェクト環境下のクライアント・サ
ーバ・システムのインタフェースの構造を示す図であ
る。
FIG. 3 is a diagram showing a structure of an interface of a client server system in a distributed object environment.

【図4】 グローバル変数の構造情報の一例を示す図で
ある。
FIG. 4 is a diagram showing an example of global variable structure information.

【図5】 グローバル変数の再定義のフローチャートで
ある。
FIG. 5 is a flowchart of redefining global variables.

【符号の説明】[Explanation of symbols]

1…クライアント、 2,3…サーバ、 4…ディスク
装置、 41…実行形式ファイル、 42…バックアッ
プファイル、 I1,I2…構成情報
DESCRIPTION OF SYMBOLS 1 ... Client, 2, 3 ... Server, 4 ... Disk device, 41 ... Executable file, 42 ... Backup file, I1, I2 ... Configuration information

Claims (4)

【特許請求の範囲】[Claims] 【請求項1】 クライアント・サーバ型の分散オブジェ
クト環境に配置されたサーバにおいて、 サーバ上のグローバル変数の複製およびその構造情報
(第1構造情報)を格納したバックアップファイルと、 サーバのアプリケーション・プログラム、ならびに該ア
プリケーション・プログラム上のグローバル変数の構造
情報(第2構造情報)を格納した実行形式ファイルと、 サーバプロセスのスタートアップ時に、前記第1構造情
報および第2構造情報の一致・不一致を判別するグロー
バル変数の構造比較手段と、 前記第1構造情報および第2構造情報が不一致のときに
スタートアップ失敗を表すフェール情報をクライアント
に通知するフェール処理手段とを具備したことを特徴と
するサーバ。
1. A server arranged in a client-server type distributed object environment, comprising: a backup file storing a copy of a global variable on the server and its structure information (first structure information); An executable file storing structural information (second structure information) of global variables on the application program; and a global for determining whether the first structure information and the second structure information match or not at the start-up of the server process. A server comprising: variable structure comparing means; and fail processing means for notifying a client of fail information indicating startup failure when the first structure information and the second structure information do not match.
【請求項2】 グローバル変数の位置の変更により前記
不一致が生じた場合に、該グローバル変数を前記第2構
造情報に従って再配置する再配置手段を具備したことを
特徴とする請求項1記載のサーバ。
2. The server according to claim 1, further comprising a rearrangement means for rearranging the global variable according to the second structure information when the mismatch occurs due to a change in the position of the global variable. .
【請求項3】 グローバル変数の新たな追加により前記
不一致が生じた場合に、該追加されたグローバル変数を
初期化する初期化手段を具備したことを特徴とする請求
項1記載のサーバ。
3. The server according to claim 1, further comprising initialization means for initializing the added global variable when the mismatch occurs due to a new addition of a global variable.
【請求項4】 グローバル変数間の依存関係が新たに発
生して前記不一致が生じた場合に、該依存関係にあるす
べてのグローバル変数を初期化する初期化手段を具備し
たことを特徴とする請求項1記載のサーバ。
4. The apparatus according to claim 1, further comprising an initializing unit for initializing all the global variables having the dependency when the dependency is newly generated between the global variables and the inconsistency occurs. Item 7. The server according to Item 1.
JP9337673A 1997-11-21 1997-11-21 Server Pending JPH11154138A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9337673A JPH11154138A (en) 1997-11-21 1997-11-21 Server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9337673A JPH11154138A (en) 1997-11-21 1997-11-21 Server

Publications (1)

Publication Number Publication Date
JPH11154138A true JPH11154138A (en) 1999-06-08

Family

ID=18310889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9337673A Pending JPH11154138A (en) 1997-11-21 1997-11-21 Server

Country Status (1)

Country Link
JP (1) JPH11154138A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043735B2 (en) 2000-06-08 2006-05-09 Hitachi, Ltd. System and method to dynamically select and locate server objects based on version information of the server objects

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7043735B2 (en) 2000-06-08 2006-05-09 Hitachi, Ltd. System and method to dynamically select and locate server objects based on version information of the server objects

Similar Documents

Publication Publication Date Title
US6681389B1 (en) Method for providing scaleable restart and backout of software upgrades for clustered computing
US8032740B2 (en) Update in-use flash memory without external interfaces
US6098158A (en) Software-enabled fast boot
US5924102A (en) System and method for managing critical files
JP2772103B2 (en) Computer system startup method
TW454147B (en) Recoverable software installation process and apparatus for a computer system
US8495609B2 (en) Methods, systems, and computer program products for taking a snapshot of installed software on a data processing system as part of a software update process
US6553490B1 (en) Computer system including local computer with capability to automatically update operating system or application program from network server
US6205558B1 (en) Recovery of file systems after modification failure
US5842024A (en) Method of software installation
US7284157B1 (en) Faulty driver protection comparing list of driver faults
US7565517B1 (en) Retargeting a captured image to new hardware while in a pre-boot environment
JP5444368B2 (en) Application restore point
US8225037B2 (en) Apparatus and method for incremental package deployment
JP4359609B2 (en) Computer system, system software update method, and first server device
US5961642A (en) Generic kernel modification for the dynamic configuration of operating systems in a multi-processor system
US10795688B2 (en) System and method for performing an image-based update
US11803412B2 (en) Containerized application management system and management method
US7228526B2 (en) Application imaging infrastructure
US7818557B2 (en) Method for re-imaging a computer system
US6275930B1 (en) Method, computer, and article of manufacturing for fault tolerant booting
US7134050B2 (en) Method and system for containing software faults
US7467328B2 (en) Kernel configuration recovery
JPH11154138A (en) Server
KR20190130903A (en) Method and system for swapping booting disk