Target architecture

The SMP environment product is intended for machines with the following features:

Adaptive Server consists of one or more cooperating processes (called engines), all of which run the server program in parallel. See Figure 5-1.

Figure 5-1: SMP environment architecture

Image of the achiecture of an SMP environment. On the top level are the clients, cpu’s, and disks. The next level is the operating system. The next level is the engines. Beneath this is the shared execurable, consisting of the program memory, and at the bottom level is the shared memory.

When clients connect to Adaptive Server, the client connections are assigned to engines in a round-robin fashion, so all engines share the work of handling network I/O for clients. All engines are peers, and they communicate via shared memory.

The server engines perform all database functions, including updates and logging. Adaptive Server, not the operating system, dynamically schedules client tasks onto available engines.

The operating system schedules the engine processes onto physical processors. Any available CPU is used for any engine; there is no engine affinity. The processing is called symmetric because any Adaptive Server engine can pick up any Adaptive Server task, unless it is deliberately configured otherwise.