JPH09282189A - Server program - Google Patents

Server program

Info

Publication number
JPH09282189A
JPH09282189A JP8086244A JP8624496A JPH09282189A JP H09282189 A JPH09282189 A JP H09282189A JP 8086244 A JP8086244 A JP 8086244A JP 8624496 A JP8624496 A JP 8624496A JP H09282189 A JPH09282189 A JP H09282189A
Authority
JP
Japan
Prior art keywords
program
server program
access request
server
switching
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
JP8086244A
Other languages
Japanese (ja)
Inventor
Yoko Hirashima
陽子 平島
Hiromichi Ito
浩道 伊藤
Hisaya Itou
寿哉 伊藤
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP8086244A priority Critical patent/JPH09282189A/en
Publication of JPH09282189A publication Critical patent/JPH09282189A/en
Pending legal-status Critical Current

Links

Landscapes

  • Computer And Data Communications (AREA)

Abstract

PROBLEM TO BE SOLVED: To reduce the capacity of a memory to be used for a server program, and to enable connection with much more clients by providing server programs A and B respectively equipped with access managing means, and a switching means for switching the server programs A and B. SOLUTION: A switching control means 15 confirms the presence/absence of access request arrival at every monitor time. When the access request does not arrive within the monitor time, a program determining means 14 is called to determine the server program to be executed and continuously, a switching means 13 is called to change the program under executing. When all the access requests do not frequently arrive or when the access requests unprocessable for a server program B30 do not frequently arrive, with such an operation, the user process can execute a server program B30 with the comparatively less capacity of the memory to be used in stead of a server program A20.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明はネットワークを使用
してリモートに存在する資源を共有するためのクライア
ント・サーバプログラムに係り、特に、サーバプログラ
ムが使用するメモリを削減するための方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a client / server program for sharing resources existing remotely by using a network, and more particularly to a method for reducing the memory used by the server program.

【0002】[0002]

【従来の技術】パーソナルコンピュータ(以下、パソコ
ンと呼ぶ)が普及するにつれて、従来は各パソコン毎の
記憶装置に保管していたユーザのプログラムファイル、
データファイルなどを一箇所の大容量記憶装置に保管
し、各パソコンのユーザがデータを共有する、あるいは
各パソコンの記憶装置容量以上のデータをアクセスす
る、といった使い方がされるようになってきた。一般的
には、サーバと呼ばれるコンピュータとクライアントと
呼ばれる複数のパソコンをネットワークで接続し、サー
バ上のデータを各クライアントからアクセスし使用す
る。従来のサーバでは、各クライアントとのコネクショ
ンの確立ごとにクライアントに対するサービスを処理す
るためのプロセスを生成する。以下、このプロセスをユ
ーザプロセスと呼ぶ。なお、プロセスとは、計算機内部
でプログラムを実行する仮想的な実態であり、プロセス
に実行可能なプログラムを開始させることをロードと呼
ぶ。このように1クライアントごとにユーザプロセスを
生成する主な理由は、複数のユーザのアクセス要求を並
列に処理してレスポンスを高速化するため、および、あ
るユーザのアクセス要求の処理によって発生した障害が
他のユーザへ波及しないように各ユーザへのアクセス処
理を独立におこなうためである。
2. Description of the Related Art With the spread of personal computers (hereinafter referred to as personal computers), user program files, which are conventionally stored in a storage device for each personal computer,
Data files and the like are stored in a large-capacity storage device at one place, and users of each personal computer share data or access data exceeding the storage device capacity of each personal computer. Generally, a computer called a server and a plurality of personal computers called clients are connected via a network, and data on the server is accessed and used by each client. In a conventional server, a process for processing a service for a client is created each time a connection with each client is established. Hereinafter, this process is called a user process. A process is a virtual reality in which a program is executed inside a computer, and causing a process to start an executable program is called loading. In this way, the main reason for creating a user process for each client is to process access requests from multiple users in parallel to speed up the response, and to prevent a failure caused by processing an access request from a user. This is because the access processing to each user is performed independently so as not to affect other users.

【0003】図4に従来のサーバプログラムにおけるサ
ーバメインルーチン41の処理の流れを示す。ルーチン
41は従来のサーバプログラム起動時に開始されるルー
チンである。ルーチン41では、ステップ4100で作
業用メモリエリアの初期化等の初期設定をおこなった
後、ステップ4101でクライアントプログラムからの
コネクション確立要求を待つ。確立要求を受信すると、
ステップ4102でクライアントプログラムとのコネク
ションを確立する。次に、ステップ4103でクライア
ントプログラムに対するユーザプロセスを生成し、クラ
イアントプログラムから送信されるアクセス要求の処理
を実行させるため、ユーザプロセスに確立したコネクシ
ョンを引き渡す。その後、ステップ4101に戻り後続
のコネクション確立要求の受信を待つ。このようにして
従来のサーバプログラムは、各クライアントプログラム
ごとにユーザプロセスを生成するため、コネクションを
確立したクライアントプログラムと同数のユーザプロセ
スを持つ。
FIG. 4 shows a processing flow of a server main routine 41 in a conventional server program. The routine 41 is a routine started when the conventional server program is started. In the routine 41, after initialization such as initialization of the work memory area is performed in step 4100, a connection establishment request from the client program is waited in step 4101. Upon receiving the establishment request,
In step 4102, a connection with the client program is established. Next, in step 4103, a user process for the client program is generated, and the established connection is handed over to the user process in order to execute the processing of the access request sent from the client program. Then, the process returns to step 4101 to wait for the reception of the subsequent connection establishment request. In this way, the conventional server program has the same number of user processes as the client programs that have established a connection, because a user process is generated for each client program.

【0004】図5にサーバメインルーチン41で生成し
たユーザプロセスが最初に実行するプログラムであるユ
ーザメインルーチン42の処理の流れを示す。ユーザメ
インルーチン42は、まずステップ4200でクライア
ント情報処理装置のユーザのログイン処理をおこない、
ステップ4201でユーザからのアクセス要求の到着を
待つ。アクセス要求が到着すると、ステップ4202で
アクセス要求の種類を判別し、ログアウト要求であれ
ば、ステップ4204でログアウト処理をおこない、ユ
ーザメインルーチン42を終了する。ステップ4202
で、アクセス要求がログアウト要求以外であれば、ステ
ップ4203でアクセス処理を実行し、実行結果をクラ
イアントプログラムへ送信する。その後、ステップ42
01に戻り、アクセス要求を待つ。
FIG. 5 shows a processing flow of a user main routine 42 which is a program first executed by a user process generated by the server main routine 41. The user main routine 42 first performs a login process of the user of the client information processing apparatus in step 4200,
In step 4201, the arrival of an access request from the user is awaited. When the access request arrives, the type of the access request is determined in step 4202. If the access request is the logout request, the logout process is performed in step 4204, and the user main routine 42 ends. Step 4202
If the access request is other than the logout request, the access process is executed in step 4203 and the execution result is sent to the client program. Then, step 42
Return to 01 and wait for an access request.

【0005】このようなサーバプログラムの例として、
1クライアントプログラムごとにクライアントプログラ
ムからのアクセス要求を処理するユーザプロセスを生成
し、ユーザプロセスがそれぞれ、全てのアクセス要求を
処理する関数を備えたサーバプログラムを実行する方法
が、特開平3−147151号公報によって開示されて
いる。ところで、サーバプログラムはアクセス要求を処
理するために、オペレーティングシステムが提供するセ
キュリティーサービスプログラム等のライブラリをリン
クする。ここでリンクとは、プログラムからライブラリ
中の関数を使用するために、プログラムの実行時にライ
ブラリをプログラム本体と連結してメモリ上にロードす
ることである。ライブラリをリンクしたサーバプログラ
ムの実行時には、各ユーザプロセスがライブラリのコー
ドとデータを置くための領域をメモリ上に確保する。こ
の領域は数Mbyteから数Mbyteとなるのが一般
的である。
As an example of such a server program,
JP-A-3-147151 discloses a method of generating a user process for processing an access request from a client program for each client program, and executing each of the user processes a server program having a function for processing all access requests. It is disclosed in the official gazette. By the way, the server program links a library such as a security service program provided by the operating system in order to process the access request. Here, linking means loading the library by linking the library with the program body when the program is executed in order to use the function in the library from the program. When the server program linked with the library is executed, each user process reserves an area on the memory for storing the code and data of the library. This area is generally several Mbytes to several Mbytes.

【0006】[0006]

【発明が解決しようとする課題】従来例では接続したク
ライアントと同数のユーザプロセスを生成するため、メ
モリ使用量はクライアント後に比例して増加する。ま
た、それらのユーザプロセスはアクセス要求待ちで待機
している時でも恒常的にメモリを使用する。しかし、サ
ーバプログラムが稼働している情報処理装置が搭載でき
るメモリ量は有限であるので、サーバプログラムがリン
クするライブラリのメモリ使用量が大きい場合、多くの
クライアントと接続できないという課題があった。
In the conventional example, since the same number of user processes as the number of connected clients are created, the memory usage amount increases proportionally after the clients. Moreover, these user processes constantly use the memory even when waiting for an access request. However, since the information processing device in which the server program is operating has a finite amount of memory that can be installed, there is a problem that many clients cannot be connected when the memory usage of the library linked by the server program is large.

【0007】本発明の目的は、1クライアントに対して
1サーバプロセスを生成する従来の方法を変更すること
なく、且つ、アクセス要求に対するレスポンスの低下を
抑えて、サーバプログラムのメモリ使用量を削減し、よ
り多くのクライアントとの接続を可能にする方法を提供
することにある。
An object of the present invention is to reduce the memory usage of a server program without changing the conventional method of generating one server process for one client and suppressing the deterioration of the response to an access request. , To provide a way to allow connections with more clients.

【0008】[0008]

【課題を解決するための手段】この目的を達成するた
め、本発明はクライアントプログラムから送られる全て
のアクセス要求を処理するアクセス処理手段Aと、サー
バプログラムAとサーバプログラムBとを切り換える切
り換え手段と、サーバプログラムが稼働している情報処
理装置のメモリ空き容量、またはサーバプログラムのメ
モリ使用量に基づいて、サーバプログラムAとサーバプ
ログラムBのどちらを実行するべきか決定するプログラ
ム決定手段と、アクセス要求の到着とサーバプログラム
の切り換えが重ならないようにサーバプログラムの切り
換えを実行する切り換え制御手段と、アクセス要求の到
着を確認する周期である監視時間およびサーバプログラ
ムBでは処理できないアクセス要求の発行頻度の上限値
を記憶する記憶手段とを備えたサーバプログラムAと、
サーバプログラムAからアクセス処理手段Aを除いて、
アクセス処理手段Aからアクセス要求を処理する機能の
一部を省いてリンクするライブラリを少なくしたことに
よって、メモリ使用量を削減したアクセス処理手段Bを
加えたサーバプログラムBとを設ける。記憶手段は、監
視時間と、サーバプログラムBでは処理できないアクセ
ス要求の発行頻度の上限値とを記憶する。プログラム決
定手段は、サーバ情報処理装置の持つメモリの空き容量
が所定の下限値を下回っている時に、サーバプログラム
Bで動作すべきであると決定し、空き容量が下限値以上
である時には、サーバプログラムAで動作すべきである
と決定する。または、サーバプログラムの総メモリ使用
量が所定の上限値を上回っている時に、サーバプログラ
ムBで動作すべきであると決定し、メモリ使用量が上限
値以下である時には、サーバプログラムAで動作すべき
であると決定する。切り換え手段は、サーバプログラム
AまたはサーバプログラムB中から、他方のサーバプロ
グラムをロードして実行中のプログラムを変更する。切
り換え制御手段は、各ユーザごとのアクセス要求の発行
履歴を参照し、サーバプログラムBでは処理できないア
クセス要求の発行頻度が発行頻度の上限値で示される値
を下回っているユーザのアクセス要求はサーバプログラ
ムBで受け付る。そして、サーバプログラムBでは処理
不可能なアクセス要求が到着した時に、切り換え手段を
呼び出してサーバプログラムBをサーバプログラムAへ
切り換えて、アクセス要求を処理するように制御する。
一方、サーバプログラムBでは処理できないアクセス要
求の発行頻度が発行頻度の上限値で示される値以下であ
るユーザのアクセス要求は、サーバプログラムAのみで
受け付ける。また、切り換え制御手段は、監視時間ごと
にアクセス要求到着の有無を確認し、アクセス要求が監
視時間内に到着しない時に、プログラム決定手段を呼び
出して実行すべきサーバプログラムを決定し、続いて切
り換え手段を呼び出して実行中のプログラムを変更す
る。
In order to achieve this object, the present invention comprises an access processing means A for processing all access requests sent from a client program, and a switching means for switching between the server program A and the server program B. A program determining means for determining which of the server program A and the server program B should be executed, based on the free memory capacity of the information processing device in which the server program is operating, or the memory usage of the server program, and an access request. Control means for switching the server program so that the arrival of the server program and the switching of the server program do not overlap with each other, the monitoring time which is the period for confirming the arrival of the access request, and the upper limit of the access request issuing frequency that cannot be processed by the server program B Storage means for storing values And the server program A with a,
Excluding the access processing means A from the server program A,
A server program B including an access processing unit B in which a memory usage amount is reduced by omitting a part of a function of processing an access request from the access processing unit A and reducing a library to be linked is provided. The storage unit stores the monitoring time and the upper limit of the access request issuance frequency that cannot be processed by the server program B. The program determining means determines that the server program B should operate when the free space of the memory of the server information processing device is below a predetermined lower limit value, and when the free space is equal to or higher than the lower limit value, the server Decide that program A should work. Alternatively, when the total memory usage of the server program exceeds a predetermined upper limit value, it is determined that the server program B should operate, and when the memory usage is less than or equal to the upper limit value, the server program A operates. Decide that it should. The switching means loads the other server program from the server program A or the server program B and changes the program being executed. The switching control means refers to the access request issuance history for each user, and the access request of the user whose access frequency that the server program B cannot process is less than the value indicated by the upper limit of the issuance frequency is the server program. Accept at B. Then, when an access request that cannot be processed by the server program B arrives, the switching means is called to switch the server program B to the server program A and control the access request to be processed.
On the other hand, only the server program A accepts an access request from a user whose access frequency that the server program B cannot process is less than or equal to the value indicated by the upper limit of the issuance frequency. Further, the switching control means confirms whether or not the access request arrives at each monitoring time, and when the access request does not arrive within the monitoring time, calls the program determining means to determine the server program to be executed, and then the switching means. To change the running program.

【0009】この動作によってユーザプロセスは、すべ
てのアクセス要求が頻繁に到着しない場合、またはサー
バプログラムBで処理できないアクセス要求が頻繁に到
着しない場合に、サーバプログラムAの代わりに、比較
的メモリ使用量が少ないサーバプログラムBを実行する
ことができる。また、サーバプログラムの切り換え実行
時にアクセス要求が到着して生じる、アクセス要求のレ
スポンスの遅延発生回数を減らすことができる。したが
って、サーバプログラムのメモリ使用量を削減し、アク
セス要求に対するレスポンスの低下を抑えて、より多く
のクライアントプログラムがサーバプログラムへ接続す
ることを可能にする。
By this operation, the user process relatively uses the memory in place of the server program A when all access requests do not arrive frequently or when access requests that cannot be processed by the server program B do not arrive frequently. It is possible to execute the server program B which has a small number. In addition, it is possible to reduce the number of delays in the response of the access request, which occurs when the access request arrives when the server programs are switched. Therefore, it is possible to reduce the memory usage of the server program, suppress the deterioration of the response to the access request, and allow more client programs to connect to the server program.

【0010】[0010]

【発明の実施の形態】本発明の第一の実施例を図を用い
て説明する。
BEST MODE FOR CARRYING OUT THE INVENTION A first embodiment of the present invention will be described with reference to the drawings.

【0011】図2は本実施例におけるシステム構成であ
る。1sはサーバ情報処理装置、1cはクライアント情
報処理装置である。サーバ情報処理装置1sには、中央
処理装置(以下CPU)2s、メモリ3s、磁気ディス
ク4s、ディスクコントローラ5s、LANコントロー
ラ6sが具備されている。サーバ情報処理装置1sの起
動時には、オペレーティングシステム(以下OS)7
s、ファイルサーバプログラム8sが磁気ディスク4s
からディスクコントローラ5sを介してメモリ3s上に
ロードされる。一方、クライアント情報処理装置1cに
は、CPU2c、メモリ3c、磁気ディスク4c、ディ
スクコントローラ5c、LANコントローラ6cが具備
されている。クライアント情報処理装置1cの起動時に
は、磁気ディスク4cから、OS7cがディスクコント
ローラ5cを介してメモリ3c上にロードされる。ま
た、クライアント情報処理装置1cのユーザ(以下、単
にユーザと呼ぶ)がクライアントプログラム8cを起動
した時に、クライアントプログラム8cは磁気ディスク
4cからディスクコントローラ5cを介してメモリ3c
上にロードされる。サーバ情報処理装置1sとクライア
ント情報処理装置1cはローカルエリアネットワーク
(以下LAN)9により接続しており、LANコントロ
ーラ6sおよび、6cを介して通信する。以下、ファイ
ルサーバプログラム8sの処理の概要を簡単に述べる。
ファイルサーバプログラム8sは、クライアント情報処
理装置1cから磁気ディスク4s上に存在するファイル
へのアクセス処理を実現する。クライアントプログラム
8cは、ユーザの磁気ディスク4s上に存在するファイ
ルへのアクセス要求をファイルサーバプログラム8sへ
送信する。ファイルサーバプログラム8sは、アクセス
要求を受信し、処理する。アクセス要求は大きく分け
て、ログイン・ログアウト要求、ファイル操作要求、フ
ァイル属性操作要求の3種類である。ファイル操作要求
は、オープン要求、クローズ要求、リード要求、ライト
要求などであり、ファイル属性操作要求はファイルの所
有者およびアクセス属性の参照要求と変換要求である。
ファイルサーバプログラム8sは受信したアクセス要求
をサーバ情報処理装置1s上で実行し、その実行結果を
クライアントプログラム8cへ送信する。
FIG. 2 shows the system configuration of this embodiment. 1s is a server information processing apparatus and 1c is a client information processing apparatus. The server information processing device 1s includes a central processing unit (CPU) 2s, a memory 3s, a magnetic disk 4s, a disk controller 5s, and a LAN controller 6s. When the server information processing device 1s is activated, an operating system (hereinafter referred to as OS) 7
s, file server program 8s is magnetic disk 4s
Is loaded on the memory 3s via the disk controller 5s. On the other hand, the client information processing apparatus 1c includes a CPU 2c, a memory 3c, a magnetic disk 4c, a disk controller 5c, and a LAN controller 6c. When the client information processing apparatus 1c is activated, the OS 7c is loaded from the magnetic disk 4c onto the memory 3c via the disk controller 5c. Further, when a user of the client information processing apparatus 1c (hereinafter, simply referred to as a user) starts the client program 8c, the client program 8c operates from the magnetic disk 4c to the memory 3c via the disk controller 5c.
Loaded on. The server information processing device 1s and the client information processing device 1c are connected by a local area network (hereinafter referred to as LAN) 9 and communicate via LAN controllers 6s and 6c. The outline of the processing of the file server program 8s will be briefly described below.
The file server program 8s realizes an access process from the client information processing apparatus 1c to a file existing on the magnetic disk 4s. The client program 8c sends to the file server program 8s an access request for a file existing on the user's magnetic disk 4s. The file server program 8s receives and processes the access request. Access requests are roughly classified into three types: login / logout requests, file operation requests, and file attribute operation requests. The file operation request is an open request, a close request, a read request, a write request, etc., and the file attribute operation request is a file owner and access attribute reference request and conversion request.
The file server program 8s executes the received access request on the server information processing device 1s, and sends the execution result to the client program 8c.

【0012】図1に本実施例におけるファイルサーバプ
ログラム8sを構成するプログラムおよび、それらのプ
ログラムを構成するルーチンを示す。ここでルーチンと
は、プログラムの構成要素であり、ある機能を実現する
ための命令とデータの集合である。ファイルサーバプロ
グラム8sは、サーバメインプログラム10と、ユーザ
サービスプログラムA20と、ユーザサービスプログラ
ムB30を具備する。以下に、三つのプログラムを構成
するルーチンを説明する。
FIG. 1 shows the programs that make up the file server program 8s in this embodiment and the routines that make up those programs. Here, a routine is a constituent element of a program and is a set of instructions and data for realizing a certain function. The file server program 8s includes a server main program 10, a user service program A20, and a user service program B30. The routines that form the three programs will be described below.

【0013】サーバメインプログラム10は、クライア
ントプログラム8cとのコネクションを確立するサーバ
メインルーチン11と、ログイン要求を処理するログイ
ン処理部80を持つユーザメインルーチン12と、実行
中のサーバメインプログラム10を他の二つのプログラ
ムのどちらかに変更する切り換えルーチン13と、ファ
イルサーバプログラム8sが情報を保持するための情報
格納エリア16とをメモリ3s上に持つ。
The server main program 10 includes a server main routine 11 for establishing a connection with the client program 8c, a user main routine 12 having a login processing section 80 for processing a login request, and a running server main program 10. The switching routine 13 for changing to one of the two programs and the information storage area 16 for the file server program 8s to hold information are provided on the memory 3s.

【0014】ユーザサービスプログラム20は、クライ
アントプログラム8cから送信されたファイル操作要求
を処理するファイル操作処理部81とファイル属性操作
要求を処理するファイル属性操作処理部82およびログ
アウト要求を処理するログアウト処理部83を持つアク
セス処理ルーチンA21と、実行中のユーザサービスプ
ログラム20をユーザサービスプログラム30に変更す
る切り換えルーチン13と、ユーザサービスプログラム
20かユーザサービスプログラム30のどちらのプログ
ラムで稼働すべきであるか判断するプログラム決定ルー
チン14と、切り換えルーチン13を呼び出すタイミン
グを決定し、切り換えルーチン13を呼び出して切り換
えを実行する切り換え制御ルーチン15と、情報格納エ
リア16とを具備する。
The user service program 20 includes a file operation processing unit 81 for processing a file operation request sent from the client program 8c, a file attribute operation processing unit 82 for processing a file attribute operation request, and a logout processing unit for processing a logout request. An access processing routine A21 having 83, a switching routine 13 for changing the running user service program 20 to the user service program 30, and a program to be operated by the user service program 20 or the user service program 30 The information storage area 16 is provided with a program determination routine 14 for executing the switching routine, a switching control routine 15 for determining the timing for calling the switching routine 13, and calling the switching routine 13 to execute switching. That.

【0015】ユーザサービスプログラム30は、ファイ
ル操作処理部81のみを持つアクセス処理ルーチンB3
1と、実行中のユーザサービスプログラム30をユーザ
サービスプログラム20に変更する切り換えルーチン1
3と、プログラム決定ルーチン14と、切り換え制御ル
ーチン15と、情報格納エリア16とを具備する。
The user service program 30 has an access processing routine B3 having only a file operation processing section 81.
1 and a switching routine 1 for changing the running user service program 30 to the user service program 20.
3, a program determination routine 14, a switching control routine 15, and an information storage area 16.

【0016】図3にファイルサーバプログラム8sを構
成する三つのプログラムと、三つのプログラムがリンク
しているライブラリを示す。本実施例で、ファイル操作
要求を処理するためには、ライブラリA100中のファ
イル操作関数101が必要であり、ログイン・ログアウ
ト要求と、ファイル属性操作要求の処理にはそれぞれ、
ライブラリB200中のログイン・ログアウト関数20
1とファイル属性操作関数202が必要である。そこ
で、サーバメインプログラム10はログイン要求を処理
するために、ライブラリB200をリンクする。またユ
ーザサービスプログラム20は、3種類のアクセス要求
をすべて処理するためにライブラリA100とライブラ
リB200をリンクする。一方、ユーザサービスプログ
ラム30は、ユーザサービスプログラム20に比べてメ
モリ使用量を減らすために、ライブラリA100のみリ
ンクし、ライブラリB200をリンクしない。このた
め、ログイン・ログアウト要求とファイル属性操作要求
は処理できない。
FIG. 3 shows three programs constituting the file server program 8s and a library linked with the three programs. In this embodiment, the file operation function 101 in the library A100 is required to process the file operation request, and the login / logout request and the file attribute operation request are processed respectively.
Login / logout function 20 in library B200
1 and the file attribute operation function 202 are required. Therefore, the server main program 10 links the library B200 in order to process the login request. Further, the user service program 20 links the library A100 and the library B200 in order to process all three types of access requests. On the other hand, the user service program 30 links only the library A100 and does not link the library B200 in order to reduce the memory usage as compared with the user service program 20. Therefore, the login / logout request and the file attribute operation request cannot be processed.

【0017】図6に情報格納エリア16に記録される情
報を示す。メモリ空き容量下限値73は、ユーザサービ
スプログラム20がユーザサービスプログラム30に切
り換わる時の条件である、メモリ3sの空き容量の下限
値を記憶する値である。監視時間74は、アクセス要求
到着の有無を調べる間隔の長さである。アクセス要求フ
ラグ72は、1である時にはアクセス要求の到着があっ
たことを示し、0である時にはアクセス要求の到着が無
かったことを示す。アクセス要求フラグ72は、アクセ
ス処理ルーチンA21およびアクセス処理ルーチンB3
1が更新する。プログラム番号71は稼働しているユー
ザサービスプログラムを示す。ユーザサービスプログラ
ム20のプログラム番号は0、ユーザサービスプログラ
ム30のプログラム番号は1である。ファイルサーバプ
ログラム8sが切り換わった後には、アクセス処理ルー
チンA21およびアクセス処理ルーチンB31が、新た
に開始されたプログラムを示す番号をプログラム番号7
1に設定する。ユーザ名70は、ログインを実行したユ
ーザのIDであり、ユーザメインルーチン12がログイ
ン処理後に記録する。
FIG. 6 shows the information recorded in the information storage area 16. The memory free space lower limit value 73 is a value for storing the lower limit value of the free space of the memory 3s, which is a condition when the user service program 20 switches to the user service program 30. The monitoring time 74 is the length of an interval for checking whether or not an access request has arrived. When the access request flag 72 is 1, it indicates that the access request has arrived, and when it is 0, it indicates that the access request has not arrived. The access request flag 72 is the access processing routine A21 and the access processing routine B3.
1 updates. The program number 71 indicates a running user service program. The program number of the user service program 20 is 0, and the program number of the user service program 30 is 1. After the file server program 8s is switched, the access processing routine A21 and the access processing routine B31 set the program number 7 to the number indicating the newly started program.
Set to 1. The user name 70 is the ID of the user who has logged in, and is recorded by the user main routine 12 after the login process.

【0018】ファイルサーバプログラム8sの管理者
は、実行環境に応じたメモリ空き容量下限値73’と監
視時間47’をパラメタファイル90に記入しておく。
ファイルサーバプログラム8sは起動時にパラメタファ
イル90からメモリ空き容量下限値73’と監視時間7
4’を読み込んで情報格納エリア16のメモリ空き容量
下限値73、監視時間74にそれぞれ記録する。
The administrator of the file server program 8s writes in the parameter file 90 the memory free space lower limit value 73 'and the monitoring time 47' according to the execution environment.
The file server program 8s starts from the parameter file 90 at the time of startup, and the lower limit value 73 'of free memory space and the monitoring time 7
4'is read and recorded in the memory free space lower limit value 73 and the monitoring time 74 of the information storage area 16, respectively.

【0019】以下、各ルーチンの処理の流れをフローチ
ャートを用いて説明する。図7は、本実施例におけるサ
ーバメインルーチン11の処理の流れを示す。ルーチン
11はファイルサーバプログラム8sの起動時に開始さ
れるルーチンである。サーバメインルーチン11は、ス
テップ1100で作業用メモリエリアの初期化等の初期
設定をおこなった後、ステップ1101でパラメタファ
イル90に定義されているメモリ空き容量下限値7
3’、および監視時間74’を読み込み、情報格納エリ
ア16のメモリ空き容量下限値73、および監視時間7
4にそれぞれ設定する。その後、ステップ1102でク
ライアントプログラム8cからのコネクション確立要求
を待つ。確立要求を受信すると、ステップ1103でク
ライアントプログラム8cとのコネクションを確立す
る。次に、ステップ1104でユーザプロセス2を生成
し、ユーザプロセス2に確立したコネクションを引き渡
す。以後のクライアントプログラム8cから送られるア
クセス要求の処理は、ユーザプロセス2が実行する。そ
の後、ステップ1102に戻り後続のコネクション確立
要求の受信を待つ。
The flow of processing of each routine will be described below with reference to flowcharts. FIG. 7 shows the flow of processing of the server main routine 11 in this embodiment. Routine 11 is a routine started when the file server program 8s is started. The server main routine 11 performs initialization such as initialization of the working memory area in step 1100, and then in step 1101 the memory free space lower limit value 7 defined in the parameter file 90.
3'and the monitoring time 74 'are read, and the memory free space lower limit value 73 of the information storage area 16 and the monitoring time 7
Set to 4, respectively. Then, in step 1102, the client program 8c waits for a connection establishment request. When the establishment request is received, in step 1103, the connection with the client program 8c is established. Next, in step 1104, the user process 2 is generated, and the established connection is handed over to the user process 2. The subsequent processing of the access request sent from the client program 8c is executed by the user process 2. After that, the process returns to step 1102 and waits for the reception of the subsequent connection establishment request.

【0020】図8は本実施例におけるユーザメインルー
チン12の処理の流れを示す。ユーザメインルーチン1
2はユーザプロセス2上で最初に実行されるルーチンで
ある。まず、ステップ1200において、クライアント
プログラム8cから送られたログイン要求をサーバメイ
ンルーチン11で確立したコネクションを通じて受信
し、ユーザのログイン処理をおこなう。ステップ120
1で、ログイン処理時にクライアントプログラム8cか
ら送られたユーザ名70を情報格納エリア16のユーザ
名71に書き込む。続いて、実行中のサーバメインプロ
グラム10が保持しているopen中のファイル記述子
や、情報格納エリア16に記録されている情報等(以
下、サーバ情報と呼ぶ)をサーバメインプログラム10
の終了後もユーザサービスプログラム20で使用するた
め、ステップ1202でサーバ情報をメモリ3s上に存
在するプロセス間共有領域に書き出して退避させる。次
に、全てのアクセス要求を受け付けるため、ステップ1
203でユーザサービスプログラム20をロードし、ユ
ーザメインルーチン12を終了する。
FIG. 8 shows the processing flow of the user main routine 12 in this embodiment. User main routine 1
Reference numeral 2 is a routine that is first executed on the user process 2. First, in step 1200, the login request sent from the client program 8c is received through the connection established by the server main routine 11, and the user login processing is performed. Step 120
In step 1, the user name 70 sent from the client program 8c during the login process is written in the user name 71 in the information storage area 16. Next, the open file descriptor held by the running server main program 10 and the information recorded in the information storage area 16 (hereinafter referred to as server information) are stored in the server main program 10.
Since it is used by the user service program 20 even after the end of step 1, the server information is written and saved in the inter-process shared area existing in the memory 3s in step 1202. Next, in order to accept all access requests, step 1
At 203, the user service program 20 is loaded, and the user main routine 12 is ended.

【0021】図9はプログラム決定ルーチン14の処理
の流れを示す。まず、ステップ1400でメモリ3sの
空き容量を取得し、ステップ1401でメモリ空き容量
が、情報格納エリア16に保持されているメモリ空き容
量の下限値73より小さいか確認する。取得したメモリ
空き容量が下限値73より小さければ、メモリ3sが不
足している状態であるから、メモリ使用量が比較的少な
いユーザサービスプログラム30で動作すべきと判断
し、ステップ1402でユーザサービスプログラム30
のプログラム番号である0を返す。ステップ1401
で、メモリ空き容量が下限値73以上である場合は、メ
モリ3sの空き容量が十分にあると判断して、ユーザサ
ービスプログラム20で動作すべきと判断し、ステップ
1403でユーザサービスプログラム20のプログラム
番号である1を返す。
FIG. 9 shows a processing flow of the program determination routine 14. First, in step 1400, the free space of the memory 3s is acquired, and in step 1401, it is confirmed whether or not the free memory space is smaller than the lower limit value 73 of the free memory space held in the information storage area 16. If the obtained free memory capacity is smaller than the lower limit value 73, it means that the memory 3s is insufficient, so it is determined that the user service program 30 having a relatively small memory usage should operate. Thirty
0 which is the program number of is returned. Step 1401
If the free memory capacity is equal to or more than the lower limit value 73, it is determined that the free space in the memory 3s is sufficient, it is determined that the user service program 20 should operate, and in step 1403, the program of the user service program 20 is executed. Returns 1 which is the number.

【0022】図10に切り換え制御ルーチン15の処理
の流れを示す。初めに、ステップ1500において情報
格納エリア16中のアクセス要求フラグ72に0を設定
して初期化し、ステップ1501で監視時間74の間待
つ。監視時間74の間にアクセス要求が到着すれば、別
スレッドで稼働しているアクセス処理ルーチンA21も
しくはアクセス処理ルーチンB31がアクセス要求フラ
グ72を1に設定する。監視時間74の後、ステップ1
502でアクセス要求フラグ72が1であるか確認し、
待ちを開始してから到着したアクセス要求の有無を確か
める。フラグ72が1であれば、到着したアクセス要求
があったことから、この後もすぐに次のアクセス要求が
到着する可能性が高いとみなす。ファイルサーバプログ
ラム8sの切り換え実行中にアクセス要求が到着する
と、アクセス要求は切り換え処理が完了するまで受信さ
れない。また、ユーザサービスプログラム30に切り換
わる途中でファイル属性操作要求が到着すると、切り換
え処理の終了後、すぐにユーザサービスプログラム20
へ切り換える必要がある。このような理由から、アクセ
ス要求に対するレスポンスが遅れることを避けるため
に、ステップ1502でフラグ72が1であれば、ファ
イルサーバプログラム8sを切り換えずにステップ15
00に戻る。ステップ1502で、アクセス要求フラグ
72が0であれば、アクセス要求はすぐに到着しないと
みなしてファイルサーバプログラム8sを切り換える。
ステップ1503で、ユーザサービスプログラム20と
ユーザサービスプログラム30のどちらで動作すべきか
決定するため、プログラム決定ルーチン14をコールす
る。その後、ステップ1504で、プログラム決定ルー
チン14のリターン値が情報格納エリア16に記録され
たプログラム番号71と同じであるか確認する。本実施
例で、プログラム決定ルーチン14のリターン値は現在
動作すべきプログラムのプログラム番号である。一方、
情報格納エリア16に保持されているプログラム番号7
1は、この時点で実際に稼働しているプログラムのプロ
グラム番号である。リターン値とプログラム番号71が
同じであればファイルサーバプログラム8sを切り換え
る必要はないのでステップ1501に戻る。ステップ1
504でリターン値がプログラム番号71と異なれば、
続くステップにおいて現在実行しているプログラムを、
リターン値が示すプログラムに切り換える。まず、ステ
ップ1505でサーバ情報をメモリ3s上にあるプロセ
ス間共有領域に書き出して退避させる。その後、ステッ
プ1506でリターン値が0であるか確認し、リターン
値が0であればステップ1507でユーザサービスプロ
グラム30をロードする。ステップ1506でリターン
値が0でない場合は、ステップ1508でユーザサービ
スプログラム20をロードする。
FIG. 10 shows a processing flow of the switching control routine 15. First, in step 1500, the access request flag 72 in the information storage area 16 is initialized to 0, and in step 1501, the process waits for the monitoring time 74. When an access request arrives during the monitoring time 74, the access processing routine A21 or the access processing routine B31 running in another thread sets the access request flag 72 to 1. After monitoring time 74, step 1
At 502, it is confirmed whether the access request flag 72 is 1,
Check whether there is an access request that arrived after waiting. If the flag 72 is 1, it is considered that there is a high probability that the next access request will arrive soon after this, because the access request has arrived. If an access request arrives during the switching of the file server program 8s, the access request is not received until the switching process is completed. Further, when a file attribute operation request arrives during the switching to the user service program 30, the user service program 20 is immediately sent after the switching process is completed.
Need to switch to. For this reason, in order to avoid delaying the response to the access request, if the flag 72 is 1 in step 1502, the file server program 8s is not switched and step 15 is executed.
Return to 00. If the access request flag 72 is 0 in step 1502, it is considered that the access request does not arrive immediately and the file server program 8s is switched.
In step 1503, the program decision routine 14 is called to decide which of the user service program 20 and the user service program 30 should be operated. Then, in step 1504, it is confirmed whether the return value of the program determination routine 14 is the same as the program number 71 recorded in the information storage area 16. In the present embodiment, the return value of the program determination routine 14 is the program number of the program that should be currently operated. on the other hand,
Program number 7 held in information storage area 16
1 is the program number of the program actually running at this point. If the return value and the program number 71 are the same, there is no need to switch the file server program 8s, and the process returns to step 1501. Step 1
If the return value is different from the program number 71 at 504,
In the next steps,
Switch to the program indicated by the return value. First, in step 1505, the server information is written and saved in the inter-process shared area on the memory 3s. Then, in step 1506, it is confirmed whether the return value is 0. If the return value is 0, the user service program 30 is loaded in step 1507. If the return value is not 0 in step 1506, the user service program 20 is loaded in step 1508.

【0023】図11にアクセス処理ルーチンA21の処
理の流れを示す。
FIG. 11 shows a processing flow of the access processing routine A21.

【0024】ユーザサービスプログラム20がユーザプ
ロセス2上にロードされると、まずアクセス処理ルーチ
ンA21が開始される。初めに、ステップ2100で作
業用メモリエリアの初期化などの初期設定をおこない、
ステップ2101で退避していたサーバ情報をメモリ3
s上のプロセス間共有領域から読み出してユーザプロセ
ス2内のデータ領域に格納する。プロセス内データ領域
とは、メモリ3s上に存在し、ユーザサービスプログラ
ム20が使用するデータを置くための専用の領域であ
る。次に、現在実行中のプログラムはユーザサービスプ
ログラム20であることを示すため、ステップ2102
で、ユーザサービスプログラム20のプログラム番号で
ある1を情報格納エリア16のプログラム番号71に設
定する。その後、ステップ2103で、ファイルサーバ
プログラム8sの切り換えが実行可能かどうかを調べる
ために、新たなスレッドを生成して切り換え制御ルーチ
ン15を実行する。ステップ2104でアクセス要求を
待ち、アクセス要求が到着したら、ステップ2105で
アクセス要求が到着したことを記録するため情報格納エ
リア16のアクセス要求フラグ72に1を設定する。ス
テップ2106で、到着したアクセス要求がログアウト
要求であるか確認し、ログアウト要求であればステップ
2109でログアウト処理をおこない、ユーザサービス
プログラム20を終了する。この時、別スレッドで動作
している切り換え制御ルーチン15も終了する。ステッ
プ2106で、アクセス要求がログアウト要求でなけれ
ば、続くステップ2107でファイル属性操作要求であ
るか確認し、ファイル属性操作要求であれば、ステップ
2110でファイル属性操作を実行し、後続のアクセス
要求を待つため、ステップ2104に戻る。ステップ2
107で、アクセス要求がファイル属性操作要求でない
場合はファイル操作要求であるので、ステップ2108
でファイル操作を実行する。その後、後続のアクセス要
求を受け付けるため、ステップ2104のアクセス要求
待ちに戻る。
When the user service program 20 is loaded on the user process 2, the access processing routine A21 is first started. First, in step 2100, initialization such as initialization of the working memory area is performed,
The server information saved in step 2101 is stored in the memory 3
It is read from the inter-process shared area on s and stored in the data area in the user process 2. The in-process data area is an area that exists on the memory 3s and is a dedicated area for storing data used by the user service program 20. Next, in order to indicate that the program currently being executed is the user service program 20, step 2102 is executed.
Then, the program number 1 of the user service program 20 is set in the program number 71 of the information storage area 16. Then, in step 2103, a new thread is generated and the switching control routine 15 is executed in order to check whether the switching of the file server program 8s can be executed. At step 2104, the access request is waited, and when the access request arrives, the access request flag 72 of the information storage area 16 is set to 1 in order to record the arrival of the access request at step 2105. In step 2106, it is confirmed whether or not the arrived access request is a logout request, and if it is a logout request, logout processing is performed in step 2109, and the user service program 20 is terminated. At this time, the switching control routine 15 operating in another thread also ends. If the access request is not the logout request in step 2106, it is confirmed in the following step 2107 whether it is a file attribute operation request. If it is a file attribute operation request, the file attribute operation is executed in step 2110 and the subsequent access request is issued. To wait, return to step 2104. Step 2
If the access request is not a file attribute operation request at 107, it is a file operation request, so step 2108
To execute the file operation. After that, in order to accept the subsequent access request, the process returns to the access request waiting in step 2104.

【0025】図12はアクセス処理ルーチンB31の処
理の流れを示す。
FIG. 12 shows the processing flow of the access processing routine B31.

【0026】ユーザサービスプログラム30がユーザプ
ロセス2上にロードされると、まずアクセス処理ルーチ
ンB31が開始される。はじめに、ステップ3100で
作業用メモリエリアの初期化等の初期設定をおこない、
ステップ3101で、メモリ3s上のプロセス間共有領
域に退避していたサーバ情報を読み出して、自プロセス
内データ領域に格納する。次に、ステップ3102でユ
ーザサービスプログラム30のプログラム番号である0
を情報格納エリア16のプログラム番号71に設定す
る。その後、ファイルサーバプログラム8sの切り換え
が実行可能であるか調べるために、ステップ3103で
新たなスレッドを生成して切り換え制御ルーチン15を
実行する。ステップ3104でアクセス要求を待ち、ア
クセス要求が到着したら、ステップ3105でアクセス
要求があったことを記録するため、情報格納エリア16
のアクセス要求フラグ72に1を設定する。ステップ3
106でアクセス要求の種類を確認し、ファイル操作要
求であればステップ3107でファイル操作を実行す
る。その後、ステップ3104に戻り後続のアクセス要
求を待つ。ステップ3106において、アクセス要求が
ファイル操作以外のアクセス要求であれば、アクセス処
理ルーチンB31では処理できないので、ステップ31
08でサーバ情報をメモリ3s上にあるプロセス間共有
領域に書き出した後、ステップ3109でユーザサービ
スプログラム20をロードし、アクセス処理ルーチンB
31を含むユーザサービスプログラム30を終了する。
この時、別スレッドで動作している切り換え制御ルーチ
ン15も終了する。
When the user service program 30 is loaded on the user process 2, the access processing routine B31 is first started. First, in step 3100, initialization such as initialization of the working memory area is performed,
In step 3101, the server information saved in the inter-process shared area on the memory 3s is read and stored in the in-process data area. Next, at step 3102, the program number of the user service program 30 is 0.
Is set to the program number 71 in the information storage area 16. Thereafter, in order to check whether the file server program 8s can be switched, a new thread is generated in step 3103 and the switching control routine 15 is executed. When the access request arrives in step 3104 and the access request arrives, the information storage area 16 is recorded in step 3105 to record that the access request is made.
The access request flag 72 is set to 1. Step 3
The type of access request is confirmed at 106, and if it is a file operation request, the file operation is executed at step 3107. After that, the process returns to step 3104 to wait for the subsequent access request. In step 3106, if the access request is an access request other than a file operation, the access processing routine B31 cannot process it.
At 08, the server information is written in the inter-process shared area on the memory 3s, and at step 3109, the user service program 20 is loaded and the access processing routine B is executed.
The user service program 30 including 31 is terminated.
At this time, the switching control routine 15 operating in another thread also ends.

【0027】以上説明したように、クライアントプログ
ラム8cがアクセス要求を頻繁に発行しない場合、クラ
イアントプログラム8cに対応するユーザプロセス2
は、メモリ使用量が比較的少ないユーザサービスプログ
ラム30でアクセス要求を受け付ける。したがって、ア
クセス要求を頻繁に実行しないユーザが存在すれば、フ
ァイルサーバプログラム8sの総メモリ使用量を削減す
ることができ、より多くのクライアントプログラム8c
が同時にファイルサーバプログラム8sに接続できる。
As described above, when the client program 8c does not frequently issue access requests, the user process 2 corresponding to the client program 8c.
Receives an access request by the user service program 30 having a relatively small memory usage. Therefore, if there is a user who does not frequently execute access requests, it is possible to reduce the total memory usage of the file server program 8s, and to increase the number of client programs 8c.
Can simultaneously connect to the file server program 8s.

【0028】本発明の第二の実施例を図を用いて説明す
る。
A second embodiment of the present invention will be described with reference to the drawings.

【0029】本発明の第二の実施例におけるシステム構
成、ファイルサーバプログラム8sを構成するプログラ
ムおよびルーチン、ファイルサーバプログラム8sを構
成する三つのプログラムがリンクしているライブラリは
それぞれ、図2、図1、図3に示す第一の実施例のシス
テム構成、ファイルサーバプログラム8sを構成するプ
ログラムおよびルーチン、ファイルサーバプログラム8
sを構成する三つのプログラムがリンクしているライブ
ラリと同じである。第二の実施例における情報格納エリ
ア16に記録される情報、切り換えルーチン13、プロ
グラム決定ルーチン14、切り換え制御ルーチン15に
ついては第一の実施例と異なる。
The system configuration according to the second embodiment of the present invention, the programs and routines constituting the file server program 8s, and the libraries linked with the three programs constituting the file server program 8s are shown in FIGS. 2 and 1, respectively. 3, the system configuration of the first embodiment shown in FIG. 3, the programs and routines constituting the file server program 8s, the file server program 8
It is the same as the library to which the three programs that make up s are linked. The information recorded in the information storage area 16 in the second embodiment, the switching routine 13, the program determination routine 14, and the switching control routine 15 are different from those in the first embodiment.

【0030】図13に、情報格納エリア16に記録され
る情報を示す。アクセス要求履歴77はユーザがログイ
ン中に発行したアクセス要求の種類と到着時刻の履歴で
ある。アクセス処理ルーチンA21およびアクセス処理
ルーチンB31は、アクセス要求履歴77を情報格納エ
リア16に記録する。アクセス処理ルーチン21は、ア
クセス要求履歴77をログアウト要求の処理後に各ユー
ザごとのアクセス要求履歴ファイル91中のアクセス要
求履歴77’に出力する。切り換えフラグ76は、ユー
ザがファイル属性操作要求を頻繁に実行しない場合に1
であり、それ以外の場合は0である。ユーザメインルー
チン12は、ユーザのログイン時にユーザのアクセス要
求履歴ファイル91を参照して、ファイル属性操作の頻
度が小さければ、切り換えフラグ76を1に設定する。
アクセス要求フラグ72、ユーザ名70については第一
の実施例と同様である。メモリ使用量上限値78は、ユ
ーザサービスプログラム20がユーザサービスプログラ
ム30に切り換わる時の条件である、メモリ3sの使用
量の上限値を記憶する値である。属性操作空き時間75
は、ユーザがファイル属性操作必要をほとんど実行しな
いとみなすための条件である、ファイル属性操作要求の
到着間隔の下限値を記録する値である。
FIG. 13 shows information recorded in the information storage area 16. The access request history 77 is a history of types and arrival times of access requests issued while the user is logged in. The access processing routine A21 and the access processing routine B31 record the access request history 77 in the information storage area 16. The access processing routine 21 outputs the access request history 77 to the access request history 77 ′ in the access request history file 91 for each user after processing the logout request. The switching flag 76 is set to 1 when the user does not frequently execute the file attribute operation request.
And 0 otherwise. The user main routine 12 refers to the user's access request history file 91 when the user logs in, and sets the switching flag 76 to 1 if the frequency of file attribute operation is low.
The access request flag 72 and the user name 70 are the same as in the first embodiment. The memory usage amount upper limit value 78 is a value for storing the upper limit value of the usage amount of the memory 3s, which is a condition when the user service program 20 switches to the user service program 30. Attribute operation free time 75
Is a value for recording the lower limit of the arrival interval of the file attribute operation request, which is a condition for considering that the user rarely executes the file attribute operation request.

【0031】管理者はパラメタファイル90に、実行環
境に応じて決定した監視時間74’、属性操作空き時間
75’、メモリ使用量上限値78’を記入しておく。フ
ァイルサーバプログラム8sはその起動時にパラメタフ
ァイル90から、監視時間74’、属性操作空き時間7
5’、メモリ使用量上限値78’を読み込んで、それぞ
れ情報格納エリア16の監視時間74、属性操作空き時
間75、メモリ使用量上限値78に記録する。
The administrator writes in the parameter file 90 the monitoring time 74 ', the attribute operation free time 75', and the memory usage upper limit 78 'determined according to the execution environment. When the file server program 8s is started, the monitoring time 74 'and the attribute operation free time 7 are read from the parameter file 90.
5 ′ and the memory usage upper limit 78 ′ are read and recorded in the monitoring time 74, the attribute operation idle time 75, and the memory usage upper limit 78 of the information storage area 16, respectively.

【0032】以下、各ルーチンの処理の流れについて説
明する。
The processing flow of each routine will be described below.

【0033】本実施例におけるサーバメインルーチン1
1は、図7に示す第一の実施例におけるサーバメインル
ーチン11と同様である。
Server main routine 1 in this embodiment
1 is the same as the server main routine 11 in the first embodiment shown in FIG.

【0034】図14は本実施例におけるユーザメインル
ーチン12の処理の流れを示す。ユーザメインルーチン
12はユーザプロセス2上で最初に実行されるルーチン
である。まず、ステップ5200において、サーバメイ
ンルーチン11で確立したコネクションを通じてクライ
アントプログラム8cから送られたログイン要求を受信
し、ユーザのログイン処理をおこなう。ステップ520
1で、ログイン処理時にクライアントプログラム8cか
ら送られたユーザ名を情報格納エリア16のユーザ名7
0に書き込む。次にステップ5202で、アクセス履歴
ファイル91中のアクセス要求履歴77’を参照し、フ
ァイル属性操作要求の到着間隔の最小値を調べる。最小
値が属性操作空き時間75を上回る場合は、ユーザはフ
ァイル属性操作を実行しない可能性が高いとみなし、フ
ァイル属性操作要求は処理できないがメモリ使用量が比
較的少ないユーザサービスプログラム30を主に使用す
ることを示すため、ステップ5205で情報格納エリア
16の切り換えフラグ76に1を設定する。その後、ス
テップ5206でサーバ情報をサーバメインプログラム
10の終了後もユーザサービスプログラム20で使用す
るため、サーバ情報をメモリ3s上に存在するプロセス
間共有領域に書き出して退避させ、ステップ5207で
ユーザサービスプログラム30をロードし、ユーザメイ
ンルーチン12を終了する。ステップ5202におい
て、最小値が属性操作空き時間75以下である場合は、
ユーザはファイル属性操作を実行する可能性が高いとみ
なし、ステップ5203で、ステップ5206と同様に
サーバ情報をメモリ3s上に存在するプロセス間共有領
域に書き出して退避させた後、全てのアクセス要求が処
理できるように、ステップ5204でユーザサービスプ
ログラム20をロードし、ユーザメインルーチン12を
終了する。
FIG. 14 shows the flow of processing of the user main routine 12 in this embodiment. The user main routine 12 is a routine executed first on the user process 2. First, in step 5200, the login request sent from the client program 8c through the connection established by the server main routine 11 is received, and the login process for the user is performed. Step 520
1, the user name sent from the client program 8c during the login process is set to the user name 7 in the information storage area 16.
Write to 0. Next, at step 5202, the access request history 77 'in the access history file 91 is referred to, and the minimum value of the arrival interval of the file attribute operation request is checked. If the minimum value exceeds the attribute operation free time 75, it is considered that the user is not likely to execute the file attribute operation, and the user service program 30 that cannot process the file attribute operation request but has a relatively small memory usage is mainly used. In order to indicate use, 1 is set in the switching flag 76 of the information storage area 16 in step 5205. After that, in step 5206, the server information is used in the user service program 20 even after the server main program 10 ends, so the server information is written and saved in the inter-process shared area existing in the memory 3s, and in step 5207, the user service program. 30 is loaded, and the user main routine 12 is ended. In step 5202, if the minimum value is 75 or less for the attribute operation free time,
It is considered that the user is likely to execute the file attribute operation, and in step 5203, like step 5206, the server information is written to the inter-process shared area existing in the memory 3s and saved, and then all access requests are issued. The user service program 20 is loaded at step 5204 for processing and the user main routine 12 is exited.

【0035】図15に本実施例におけるプログラム決定
ルーチン14を示す。ルーチン14は、切り換え制御ル
ーチン15から呼び出される。まず、ステップ4400
で現在のファイルサーバプログラム8s全体のメモリ使
用量を取得し、ステップ4401でメモリ使用量が情報
格納エリア16に記録された上限値78以下であるか確
認する。ステップ4401において、メモリ使用量が上
限値78以下であれば、メモリ3sには余裕があるた
め、ステップ4404でユーザサービスプログラム20
のプログラム番号である1を返す。ステップ4401に
おいて、メモリ使用量が情報格納エリア16に記録され
た上限値78より大きい場合は、メモリ3sの使用量は
上限値78より超過しているので、続いてもう一つの切
り換えの条件を確認する。ステップ4402でアクセス
要求履歴77を参照し、現在時刻から最新の属性操作要
求の到着時刻を引いた差分の値と属性操作空き時間75
を比較する。差分の値が属性操作空き時間75より大き
ければ、ユーザはファイル属性操作を頻繁に実行しない
アクセス傾向を持つユーザであって、現在も属性操作空
き時間75以内にファイル属性操作を実行していないの
で、この後もファイル属性操作を実行しない可能性が高
いとみなす。そこで、ユーザサービスプログラム30で
動作すべきと判断し、ステップ4403でユーザサービ
スプログラム30のプログラム番号0を返す。それ以外
の場合は、ユーザサービスプログラム20で動作すべき
と判断し、ステップ4404でプログラム番号1を返
す。
FIG. 15 shows the program determination routine 14 in this embodiment. The routine 14 is called from the switching control routine 15. First, step 4400
Then, the current memory usage of the entire file server program 8s is acquired, and it is confirmed at step 4401 whether the memory usage is equal to or less than the upper limit value 78 recorded in the information storage area 16. If the memory usage amount is equal to or less than the upper limit value 78 in step 4401, there is a margin in the memory 3s.
1 which is the program number of is returned. In step 4401, if the memory usage amount is larger than the upper limit value 78 recorded in the information storage area 16, the usage amount of the memory 3s exceeds the upper limit value 78, so that another switching condition is confirmed. To do. In step 4402, the access request history 77 is referenced, and the difference value obtained by subtracting the arrival time of the latest attribute operation request from the current time and the attribute operation free time 75
Compare. If the value of the difference is larger than the attribute operation free time 75, it means that the user has an access tendency not to frequently execute the file attribute operation and still does not execute the file attribute operation within the attribute operation free time 75. , It is highly likely that the file attribute operation will not be executed even after this. Therefore, it is determined that the user service program 30 should operate, and in step 4403 the program number 0 of the user service program 30 is returned. In other cases, it is determined that the user service program 20 should operate, and the program number 1 is returned in step 4404.

【0036】図16に切り換え制御ルーチン15の処理
の流れを示す。切り換え制御ルーチン15はアクセス処
理ルーチンA21から呼び出される。まず、ステップ4
500において情報格納エリア16中のアクセス要求フ
ラグ72に0を設定して初期化し、ステップ4501で
アクセス要求の到着を監視するため監視時間74の間待
つ。監視時間74の間にアクセス要求が到着すれば、別
スレッドで稼働しているアクセス処理ルーチンA21が
アクセス要求フラグ72に1を設定する。監視時間74
の後、ステップ4502でアクセス要求フラグ72が1
であるか確認し、待ちを開始してから到着したアクセス
要求の有無を確かめる。フラグ72が1であれば、アク
セス要求の到着があったので、この後もすぐにアクセス
要求が到着する確率が高いとみなす。そこで、アクセス
要求の到着とファイルサーバプログラム8sの切り換え
が重なって、アクセス要求に対するレスポンスが遅れる
ことを避けるため、切り換えを実行せずにステップ45
00に戻る。ステップ4502において、アクセス要求
フラグ72が0であれば、到着したアクセス要求は存在
せず切り換えが実行できるので、ユーザサービスプログ
ラム20と、ユーザサービスプログラム30のうち、ど
ちらで動作すべきか決定するため、ステップ4503で
プログラム決定ルーチン14をコールする。ここで、プ
ログラム決定ルーチン14のリターン値は現在動作すべ
きプログラムのプログラム番号である。ステップ450
4でリターン値が0であるか確認し、リターン値が0で
あればユーザサービスプログラム30への切り換えをお
こなう。まず、ステップ4505でサーバ情報をメモリ
3s上にあるプロセス間共有領域に書き出して退避させ
る。その後、ステップ4506でユーザサービスプログ
ラム30をロードする。ステップ4504でリターン値
が0でなければ、現在実行中のプログラムと実行すべき
プログラムが共にユーザサービスプログラム20であ
り、切り換えを実行する必要が無いのでステップ450
1に戻る。
FIG. 16 shows a processing flow of the switching control routine 15. The switching control routine 15 is called from the access processing routine A21. First, step 4
In 500, the access request flag 72 in the information storage area 16 is initialized by setting 0, and in step 4501, the process waits for a monitoring time 74 to monitor the arrival of the access request. If an access request arrives during the monitoring time 74, the access processing routine A21 running in another thread sets 1 in the access request flag 72. Monitoring time 74
Then, in step 4502, the access request flag 72 is set to 1
Then, after waiting, it is confirmed whether there is an access request that has arrived. If the flag 72 is 1, the access request has arrived, and it is considered that the probability that the access request will arrive soon after this is high. Therefore, in order to avoid the delay of the response to the access request due to the overlap of the arrival of the access request and the switching of the file server program 8s, the switching is not executed in step 45.
Return to 00. If the access request flag 72 is 0 in step 4502, there is no arriving access request and switching can be executed. Therefore, in order to determine which of the user service program 20 and the user service program 30 should operate, In step 4503, the program decision routine 14 is called. Here, the return value of the program determination routine 14 is the program number of the program to be operated at present. Step 450
In step 4, it is confirmed whether the return value is 0, and if the return value is 0, switching to the user service program 30 is performed. First, in step 4505, the server information is written and saved in the inter-process shared area on the memory 3s. Then, in step 4506, the user service program 30 is loaded. If the return value is not 0 in step 4504, both the program currently being executed and the program to be executed are user service programs 20, and there is no need to execute switching, so step 450
Return to 1.

【0037】図17にアクセス処理ルーチンA21の処
理の流れを示す。アクセス処理ルーチンA21はステッ
プ2200で作業用メモリエリアの初期化などの初期設
定をおこない、ステップ2201で、メモリ3s上のプ
ロセス間共有領域に退避していたサーバ情報を読み出し
て自プロセス内データ領域に格納する。次に、切り換え
制御ルーチンを動作させる必要があるか確認するため、
ステップ2202で切り換えフラグ76を参照する。ス
テップ2202で切り換えフラグ76が1であれば、ス
テップ2203で、ファイルサーバプログラム8sの切
り換えが実行可能かどうかを調べるために、新たなスレ
ッドを生成して切り換え制御ルーチン15を実行する。
ステップ2202でフラグ76が1でなければ、ファイ
ルサーバプログラム8sを切り換える必要は無いのでス
テップ2204に進む。ステップ2204でアクセス要
求を待ち、アクセス要求が到着したら、ステップ220
5でアクセス要求が到着したことを記録するため情報格
納エリア16のアクセス要求フラグ72に1を設定す
る。ステップ2206で、アクセス要求がログアウト要
求であるか確認し、ログアウト要求であれば、ステップ
2210でログアウト要求を処理し、ステップ2211
で、情報格納エリア16に記録したアクセス要求履歴7
7をアクセス要求履歴ファイル91に出力した後、ユー
ザサービスプログラム20を終了する。この時、別スレ
ッドで動作している切り換え制御ルーチン15も終了す
る。ステップ2206において、アクセス要求がログア
ウト要求でなければ、続くステップ2207でファイル
属性操作要求であるか確認し、ファイル属性操作要求で
あれば、ステップ2212でファイル属性操作を実行
し、ステップ2209で、アクセス要求の種類と到着時
刻をアクセス要求履歴77として情報格納エリア16に
記録する。その後、後続のアクセス要求を受け付けるた
め、ステップ2204のアクセス要求待ちに戻る。一
方、ステップ2207でアクセス要求がファイル属性操
作要求でなければ、ファイル操作要求であるので、ステ
ップ2208でファイル操作を実行する。その後、ステ
ップ2209でアクセス要求の種類と到着時刻をアクセ
ス要求履歴77として情報格納エリア16に記録する。
その後、後続のアクセス要求を受け付けるため、ステッ
プ2204のアクセス要求待ちに戻る。
FIG. 17 shows a processing flow of the access processing routine A21. In step 2200, the access processing routine A21 performs initialization such as initialization of the work memory area, and in step 2201, reads the server information saved in the inter-process shared area on the memory 3s and stores it in the in-process data area. Store. Next, in order to confirm whether it is necessary to operate the switching control routine,
In step 2202, the switching flag 76 is referenced. If the switching flag 76 is 1 in step 2202, a new thread is generated and the switching control routine 15 is executed in step 2203 to check whether the switching of the file server program 8s can be executed.
If the flag 76 is not 1 in step 2202, there is no need to switch the file server program 8s, so the flow advances to step 2204. Waiting for the access request at step 2204, and when the access request arrives, step 220
In step 5, the access request flag 72 in the information storage area 16 is set to 1 to record the arrival of the access request. In step 2206, it is confirmed whether the access request is a logout request. If the access request is a logout request, the logout request is processed in step 2210, and step 2211 is executed.
The access request history 7 recorded in the information storage area 16
After outputting 7 to the access request history file 91, the user service program 20 is terminated. At this time, the switching control routine 15 operating in another thread also ends. If the access request is not the logout request in step 2206, it is confirmed in the following step 2207 whether it is a file attribute operation request. If it is a file attribute operation request, the file attribute operation is executed in step 2212, and the access is performed in step 2209. The request type and arrival time are recorded in the information storage area 16 as the access request history 77. After that, in order to accept the subsequent access request, the process returns to the access request waiting in step 2204. On the other hand, if the access request is not a file attribute operation request in step 2207, it is a file operation request, and therefore a file operation is executed in step 2208. Then, in step 2209, the type and arrival time of the access request are recorded in the information storage area 16 as the access request history 77.
After that, in order to accept the subsequent access request, the process returns to the access request waiting in step 2204.

【0038】図18はアクセス処理ルーチンB31の処
理の流れを示す。ユーザサービスプログラム30がユー
ザプロセス2上にロードされると、まずアクセス処理ル
ーチンB31が開始される。はじめに、ステップ320
0で作業用メモリエリアの初期化等の初期設定をおこな
い、ステップ3201で、メモリ3s上のプロセス間共
有領域に退避していたサーバ情報を読み出して自プロセ
ス内データ領域に格納する。次にステップ3202でア
クセス要求を待ち、アクセス要求が到着したら、ステッ
プ3203でアクセス要求があったことを記録するた
め、情報格納エリア16のアクセス要求フラグ72に1
を設定する。ステップ3204でアクセス要求の種類を
確認し、ファイル操作であればステップ3205でファ
イル操作を実行する。その後、ステップ3206で、ア
クセス要求の種類と到着時刻をアクセス要求履歴77と
して情報格納エリア16に記録し、ステップ3202に
戻り後続のアクセス要求を待つ。ステップ3204にお
いて、アクセス要求がファイル操作以外のアクセス要求
であれば、アクセス処理ルーチンB31では処理できな
いので、ステップ3207でサーバ情報をメモリ3s上
にあるプロセス間共有領域に書き出した後、ステップ3
208でユーザサービスプログラム20をロードし、ア
クセス処理ルーチンB31を含むユーザサービスプログ
ラム30を終了する。この時、別スレッドで動作してい
る切り換え制御ルーチン15も終了する。
FIG. 18 shows the processing flow of the access processing routine B31. When the user service program 30 is loaded on the user process 2, the access processing routine B31 is first started. First, step 320
At 0, initialization such as initialization of the work memory area is performed, and at step 3201, the server information saved in the inter-process shared area on the memory 3s is read and stored in the in-process data area. Next, in step 3202, an access request is waited for, and when the access request arrives, the access request flag 72 in the information storage area 16 is set to 1 in order to record that the access request is made in step 3203.
Set. In step 3204, the type of access request is confirmed, and if it is a file operation, the file operation is executed in step 3205. Thereafter, in step 3206, the type of the access request and the arrival time are recorded in the information storage area 16 as the access request history 77, and the process returns to step 3202 to wait for the subsequent access request. In step 3204, if the access request is an access request other than a file operation, it cannot be processed by the access processing routine B31. Therefore, in step 3207, the server information is written in the inter-process shared area on the memory 3s, and then step 3
At 208, the user service program 20 is loaded, and the user service program 30 including the access processing routine B31 is terminated. At this time, the switching control routine 15 operating in another thread also ends.

【0039】以上説明したように、クライアントプログ
ラム8cがファイル属性操作要求、または全てのアクセ
ス要求を頻繁に発行しない場合に、クライアントプログ
ラム8cのユーザプロセス2は、ファイル属性操作要求
を処理する機能を省くことによって、メモリ使用量が比
較的少なくしたユーザサービスプログラム30でアクセ
ス要求を受け付ける。したがって、前述のようなユーザ
が存在する場合には、ファイルサーバプログラム8sの
メモリ使用量を削減することができるので、より多くの
クライアントプログラム8cが同時にファイルサーバプ
ログラム8sに接続できる。
As described above, when the client program 8c does not frequently issue a file attribute operation request or all access requests, the user process 2 of the client program 8c omits the function of processing the file attribute operation request. As a result, the access request is accepted by the user service program 30 whose memory usage is relatively small. Therefore, when there is such a user as described above, the memory usage of the file server program 8s can be reduced, so that more client programs 8c can be connected to the file server program 8s at the same time.

【0040】[0040]

【発明の効果】本発明はアクセス要求を処理するサーバ
プログラムAと、サーバプログラムAからアクセス要求
を処理する機能の一部を省いてメモリ使用量を減らした
サーバプログラムBと、二つのプログラムの相互の切り
換えを実現する切り換え手段と、実行すべきプログラム
を決定するプログラム決定手段と、アクセス要求の到着
と切り換えの実行が重ならないように切り換えを実行す
る切り換え制御手段とを設けることによって、アクセス
要求に対するレスポンスの低下を抑え、サーバプログラ
ムのメモリ使用量を削減するので、より多くのクライア
ントプログラムが同時にサーバプログラムに接続でき
る。また、サーバ情報処理装置の資源を有効に活用する
ことができる。
According to the present invention, the server program A for processing an access request, the server program B in which a part of the function for processing an access request is omitted from the server program A to reduce the memory usage, and the two programs are mutually By providing switching means for realizing the switching of the access request, program determining means for determining the program to be executed, and switching control means for executing the switching so that the arrival of the access request and the execution of the switching do not overlap with each other, the access request Since the decrease in response is suppressed and the memory usage of the server program is reduced, more client programs can connect to the server program at the same time. In addition, the resources of the server information processing device can be effectively used.

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

【図1】本発明の第一の実施例と第二の実施例における
ファイルサーバプログラム8sを構成するプログラムの
説明図。
FIG. 1 is an explanatory diagram of programs constituting a file server program 8s according to a first embodiment and a second embodiment of the present invention.

【図2】本発明の第一の実施例と第二の実施例における
システム構成を示す説明図。
FIG. 2 is an explanatory diagram showing a system configuration in a first embodiment and a second embodiment of the present invention.

【図3】本発明の第一の実施例と第二の実施例における
ファイルサーバプログラム8sを構成するプログラムの
説明図。
FIG. 3 is an explanatory diagram of programs constituting a file server program 8s according to the first and second embodiments of the present invention.

【図4】従来例におけるサーバメインルーチン41の処
理のフローチャート。
FIG. 4 is a flowchart of processing of a server main routine 41 in a conventional example.

【図5】従来例におけるユーザメインルーチン42の処
理のフローチャート。
FIG. 5 is a flowchart of processing of a user main routine 42 in a conventional example.

【図6】本発明の第一の実施例に、ファイルサーバプロ
グラム8sが切り換えを実行する際に使用する情報を示
す説明図。
FIG. 6 is an explanatory diagram showing information used when the file server program 8s executes switching in the first embodiment of the present invention.

【図7】本発明の第一の実施例および第二の実施例にお
けるサーバメインルーチン11の処理のフローチャー
ト。
FIG. 7 is a flowchart of the processing of the server main routine 11 in the first and second embodiments of the present invention.

【図8】本発明の第一の実施例のユーザメインルーチン
12の処理のフローチャート。
FIG. 8 is a flowchart of processing of a user main routine 12 according to the first embodiment of this invention.

【図9】本発明の第一の実施例のプログラム決定ルーチ
ン14の処理のフローチャート。
FIG. 9 is a flowchart of the processing of a program determination routine 14 according to the first embodiment of this invention.

【図10】本発明の第一の実施例の切り換え制御ルーチ
ン15の処理のフローチャート。
FIG. 10 is a flowchart of processing of a switching control routine 15 according to the first embodiment of this invention.

【図11】本発明の第一の実施例のアクセス処理ルーチ
ンA21の処理のフローチャート。
FIG. 11 is a flowchart of processing of an access processing routine A21 according to the first embodiment of this invention.

【図12】本発明の第一の実施例のアクセス処理ルーチ
ンB31の処理のフローチャート。
FIG. 12 is a flowchart of processing of an access processing routine B31 according to the first embodiment of this invention.

【図13】本発明の第二の実施例のファイルサーバプロ
グラム8sが、切り換えを実行する際に使用する情報を
示す説明図。
FIG. 13 is an explanatory diagram showing information used when the file server program 8s according to the second embodiment of this invention performs switching.

【図14】本発明の第二の実施例のユーザメインルーチ
ン12の処理のフローチャート。
FIG. 14 is a flowchart of processing of a user main routine 12 according to the second embodiment of this invention.

【図15】本発明の第二の実施例のプログラム決定ルー
チン14の処理のフローチャート。
FIG. 15 is a flowchart of the processing of a program determination routine 14 according to the second embodiment of the present invention.

【図16】本発明の第二の実施例の切り換え制御ルーチ
ン15の処理のフローチャート。
FIG. 16 is a flowchart of processing of a switching control routine 15 according to the second embodiment of this invention.

【図17】本発明の第二の実施例のアクセス処理ルーチ
ンA21の処理のフローチャート。
FIG. 17 is a flowchart of processing of an access processing routine A21 according to the second embodiment of this invention.

【図18】本発明の第二の実施例のアクセス処理ルーチ
ンB31の処理のフローチャート。
FIG. 18 is a flowchart of processing of an access processing routine B31 according to the second embodiment of this invention.

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

13…切り換えルーチン、 14…プログラム決定ルーチン、 20…ユーザサービスプログラム、 30…ユーザサービスプログラム。 13 ... Switching routine, 14 ... Program determination routine, 20 ... User service program, 30 ... User service program.

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】クライアントプログラムを具備するクライ
アント情報処理装置とネットワークにより接続されたサ
ーバ情報処理装置の上で動作する資源共用のためのサー
バプログラムにおいて、 前記クライアントプログラムから送信される全てのアク
セス要求を処理可能なアクセス処理手段Aを備えたサー
バプログラムAと、前記クライアントプログラムから送
信されるアクセス要求の一部だけを処理可能なアクセス
処理手段Bを備えたサーバプログラムBと、前記サーバ
プログラムAと前記サーバプログラムBとを切り換える
切り換え手段とを具備することを特徴とするサーバプロ
グラム。
1. A server program for resource sharing, which operates on a server information processing apparatus connected to a client information processing apparatus having a client program by a network, wherein all access requests transmitted from the client program are A server program A having a processable access processing means A, a server program B having an access processing means B capable of processing only a part of an access request sent from the client program, the server program A and the server program A. A server program comprising a switching means for switching between the server program B and the server program B.
【請求項2】請求項1において、前記サーバ情報処理装
置のメモリ空き容量に基づいて、稼働すべきサーバプロ
グラムを決定するプログラム決定手段を具備し、前記切
り換え手段は前記プログラム決定手段の情報に基づいて
前記切り換えをおこなうサーバプログラム。
2. The program determining means according to claim 1, further comprising: program determining means for determining a server program to be operated based on a free memory capacity of the server information processing device, wherein the switching means is based on information of the program determining means. A server program for performing the switching.
【請求項3】請求項1において、 前記サーバプログラム全体のメモリ使用量に基づいて、
稼働すべきサーバプログラムを決定するプログラム決定
手段を具備し、前記切り換え手段は前記プログラム決定
手段の情報に基づいて前記切り換えをおこなうサーバプ
ログラム。
3. The method according to claim 1, based on the memory usage of the entire server program,
A server program comprising a program determining means for determining a server program to be operated, wherein the switching means performs the switching based on information from the program determining means.
【請求項4】請求項1、2または3において、 前記アクセス要求の到着を確認する周期である監視時間
を保持する記憶手段と、前記確認をおこなう切り換え制
御手段を具備し、前記切り換え制御手段は前記アクセス
要求が前記監視時間が示す期間に到着しない時、前記プ
ログラム決定手段と前記切り換え手段を呼び出して、前
記切り換えをおこなうように制御するサーバプログラ
ム。
4. The switching control means according to claim 1, further comprising storage means for holding a monitoring time, which is a cycle for confirming the arrival of the access request, and switching control means for performing the confirmation. A server program that calls the program determining unit and the switching unit to control the switching when the access request does not arrive within the period indicated by the monitoring time.
【請求項5】請求項1、2、3または4において、 前記サーバプログラムAおよび前記サーバプログラムB
はそれぞれ、前記切り換え手段と、前記プログラム決定
手段と、前記切り換え制御手段とを含むサーバプログラ
ム。
5. The server program A and the server program B according to claim 1, 2, 3 or 4.
Is a server program including the switching means, the program determining means, and the switching control means, respectively.
【請求項6】請求項1、2、3または4において、 前記サーバプログラムBは、前記サーバプログラムAと
比較して、実行時のメモリ使用量が少ないサーバプログ
ラム。
6. The server program according to claim 1, 2, 3 or 4, wherein the server program B has a smaller memory usage at the time of execution than the server program A.
【請求項7】請求項1、2、3、4、5または6におい
て、 前記サーバプログラムBでは処理できないアクセス要求
の発行頻度の上限値を記憶する記憶手段を具備し、前記
切り換え制御手段はクライアント情報処理装置のユーザ
のアクセス要求発行履歴を参照し、前記サーバプログラ
ムBでは処理できないアクセス要求の発行頻度が前記上
限値で示される値を下回っているならば、前記ユーザの
発行するアクセス要求を前記サーバプログラムBで受け
付け、処理不可能なアクセス要求が到着した時に、前記
切り換え手段を呼び出して前記サーバプログラムBを前
記サーバプログラムAへ切り換え、前記アクセス要求を
処理するように制御するサーバプログラム。
7. The storage device according to claim 1, 2, 3, 4, 5 or 6, further comprising: storage means for storing an upper limit value of the issuance frequency of access requests that cannot be processed by the server program B. If the access request issuance history of the user of the information processing device is referred to, and the issuance frequency of the access request that cannot be processed by the server program B is below the value indicated by the upper limit value, the access request issued by the user is A server program which is accepted by the server program B and, when an unprocessable access request arrives, calls the switching means to switch the server program B to the server program A and control the access request to be processed.
【請求項8】請求項1、2、3、4、5または6におい
て、 前記切り換え制御手段は、クライアント情報処理装置の
ユーザが前記監視時間で示される期間アクセス要求を発
行しない場合には、前記切り換え手段を呼び出して前記
サーバプログラムAを前記サーバプログラムBへ切り換
え、前記ユーザの発行するアクセス要求を前記サーバプ
ログラムBで受け付けるように制御するサーバプログラ
ム。
8. The switching control means according to claim 1, when the user of the client information processing device does not issue an access request for a period indicated by the monitoring time. A server program that calls a switching means to switch the server program A to the server program B, and controls the server program B to accept an access request issued by the user.
JP8086244A 1996-04-09 1996-04-09 Server program Pending JPH09282189A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8086244A JPH09282189A (en) 1996-04-09 1996-04-09 Server program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8086244A JPH09282189A (en) 1996-04-09 1996-04-09 Server program

Publications (1)

Publication Number Publication Date
JPH09282189A true JPH09282189A (en) 1997-10-31

Family

ID=13881408

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8086244A Pending JPH09282189A (en) 1996-04-09 1996-04-09 Server program

Country Status (1)

Country Link
JP (1) JPH09282189A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012008016A1 (en) * 2010-07-13 2012-01-19 富士通株式会社 Multithread processing device, multithread processing system, multithread processing program, and multithread processing method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012008016A1 (en) * 2010-07-13 2012-01-19 富士通株式会社 Multithread processing device, multithread processing system, multithread processing program, and multithread processing method
JP5408353B2 (en) * 2010-07-13 2014-02-05 富士通株式会社 Multithread processing apparatus, multithread processing system, multithread processing program, and multithread processing method

Similar Documents

Publication Publication Date Title
US7150042B2 (en) Techniques for performing malware scanning of files stored within a file storage device of a computer network
US7093002B2 (en) Handling of malware scanning of files stored within a file storage device of a computer network
KR100546931B1 (en) Method and System for Remote Software Distribution and Installation
JPH0477938B2 (en)
CA2367890C (en) A host adapter for combining i/o completion reports and method of using the same
US8880694B2 (en) Server system and control method for same
JP5909566B2 (en) Computer system and control method thereof
JPH0954754A (en) Customer-information control system and method in loosely-coupled parallel processing environment
US6038664A (en) Method for selecting communication access method for local area networks
TWI394074B (en) Methods, apparatus and computer programs for managing access to storage
US6295602B1 (en) Event-driven serialization of access to shared resources
EP4287023A1 (en) Service processing method and device
US5968168A (en) Scheduler reducing cache failures after check points in a computer system having check-point restart function
US7908377B2 (en) Computer system and data sharing method
JPH09282189A (en) Server program
US20030225898A1 (en) Method of controlling storage control apparatus, storage control apparatus, and computer readable program for controlling the same
US20040139205A1 (en) Hot standby server system
US20060140202A1 (en) Retrieving data using an asynchronous buffer
JPH08235127A (en) Method and device for automatic load decentralization
JP3006491B2 (en) Transaction execution state management system, management method, and medium for storing management program
JPH08212090A (en) Server system
JPH09231148A (en) Decentralized system
JPH09274583A (en) Managing information storage device
US6842900B2 (en) Information processing apparatus executing processing corresponding to new thread by reusing arrangement for previous thread
JP5390947B2 (en) Job management system, job management apparatus and program thereof