Progress
Database Administration
Guide and Reference


Operating System Resources

The Progress Version 9 database relies on operating system resources, such as the file system and processes, to perform its operations. The following sections introduce resources you should be aware of. For more information, see Managing Performance."

Semaphores

Semaphores are interprocess communications that act as resource counters. The database engine uses semaphores to synchronize the activities of server and self-service client processes that are connected to a database. By default, each database has an array of semaphores, one for each user or server. Each process uses its semaphore when it must wait for a shared resource. Semaphores are not used for single-user sessions. The Semaphore sets (-semsets) Progress broker startup parameter allows you to change the number of semaphore sets available to the broker.

You might also need to set some kernel or system parameters to increase the number of semaphores. For information on setting kernel and system parameters, see the "Semaphores" section of Managing Performance."

Spin Locks

The database engine uses a spin lock algorithm to control access to shared-memory structures. You can control how the database engine uses spin locks with the Spin Lock Retries (-spin) startup parameter. For more information on -spin, see the "Unproductive CPU Processing" section in Managing Performance."

File Descriptors

A file descriptor is an identifier assigned to a file when it is opened. There is a system limit on the number of file descriptors. Each database process (clients, remote client servers, and the broker) uses several file descriptors. You might have to adjust the system file descriptor limit.

Processes

Brokers, servers, clients, and background writers run as processes. Processes implement the client, the server, or the functions for both on a node. Processes also coordinate communication among nodes, and provide operating system and application services for the node. A kernel or system parameter in the operating system limits the number of active processes that can run on a system. You might have to raise the parameter to allow for more processes.

Shared Memory

Shared memory is an area in system memory that multiple users can access concurrently. You might have to adjust the maximum shared-memory segment size and the total number of available segments to improve system performance. For more information on shared memory, see the "Memory Utilization" section in Managing Performance."


Copyright © 2004 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095