Operational Summary

The following table summarizes the information presented so far as a time sequence of events.

 

Zim Application

Zim Server Process

Database Agent Process

1.

 

The Zim Server process is started with the command:

(UNIX) nohup zimserver [-p <portnumber> | -s service]

(WINDOWS) start zimserver [-p <portnumber> | -s service]

It reads the file zmserver.cfg and then listens for client connection requests.

 

 

2.

When a Zim application tries to connect to a server (using the CONNECT command), the Zim Application reads the file zmserver.cfg. It then sends a message containing the logical database name to the Zim Server Process.

 

 

3.

 

The logical database name is looked up in zimdb.zim. The Zim Server process records the connection and locates the actual database directory. It creates a working directory for the Database Agent process (it is about to start) and creates a config.zim in that directory based on config.srv. It then starts a Database Agent process and returns to listening for connection requests.

 

4.

 

 

The Database Agent process starts and runs SERVPROF and then waits for a request from the client.

5.

The Zim Application sends a LOGIN request to the Database Agent process (this is optional).

 

 

6.

 

 

The LOGIN is executed and the client is now logged in as that user.

7.

Requests are sent to the Database Agent process.

 

 

8.

 

 

Requests are processed and results are returned to the application.

9.

Results are received from the Database Agent process.

 

 

10.

When the application is finished it uses the DISCONNECT command to send a "disconnect" to the Database Agent process.

 

 

11.

 

 

The Database Agent process runs SERVBYE, sends a message to the Zim Server, and terminates.

12.

 

The Zim Server removes the Database Agent process from the list of active processes.