You can improve the performance of a UTM application on Unix and Linux systems considerably by operating the KDCFILE on raw-device, i.e. as a character based device file. To do this, create the KDCFILE on a separate disk partition, in other words a partition on which no file system is stored.
Direct access to the KDCFILE via a device file without buffering in the system kernel requires less time and less resources than access via the file system when the KDCFILE is stored as a normal file in the filebase directory. The KDCFILE is stored as a contiguous data area on the disk partition. If the KDCFILE is stored as a file within a file system, then the data of the KDCFILE is often stored by the system in such a way that it is distributed across several storage areas which leads to increased access times.
Splitting the KDCFILE across several files (swapping out the page pool and restart area) requires you to use a separate disk partition for each file.
The raw partition of the database system used should be located on another disk.
Estimating the size of the required disk partition
To allow the system administrator to create a sufficiently large disk partition for your KDCFILE, you must calculate the size of the KDCFILE. This depends on the following factors:
the number of generated objects addressed by name
(transaction codes, users, program units, clients and printers, key sets, remote communication partners, connections for distributed processing, etc.)the generated size of the page pool (see "Page pool")
the generated size of the restart area (see "Restart area")
the number of work processes
To determine the size of the partition required for your KDCFILE, use KDCDEF to generate the KDCFILE as the file filebase/KDCA. Then output the size of your KDCFILE using the command ls -l. Please note that future modifications to the configuration generally affect the size of the KDCFILE. As a precaution, you should therefore select a larger disk partition.
Creating the raw special file
The disk partitioning is defined by the system administrator when installing the Unix or Linux system. Before system installation, therefore, you must inform your system administrator that you require disk partitions in raw-device format without file systems for your UTM applications. The system administrator can thus create several smaller partitions during installation, which can then be combined to form the storage area for your KDCFILE depending on requirements.
CAUTION!
Many disks contain administrative data in the first track. This area of the disk must therefore not be included in the partition for the KDCFILE.
Do not create a file system in the disk partition in which the KDCFILE is to be stored. Do not mount the disk partition using the mount command.
Ask your system administrator to create a special file for accessing the disk partition. Make sure that access to the KDCFILE takes place via a character-oriented special file (raw-device), i.e. the name of the special file must begin with r and the identifier must be a c (first character output by the ls -l command).
The owner of the special file must the user ID under which the application runs. Read and write access to the special file must be granted exclusively to the owner (access rights 600). Be careful when assigning access rights to the KDCFILE, as these are the only means of protecting your KDCFILE against unauthorized access.
The ls -l command for the special file
ls -l /dev/rxxxx
returns the following output:
crw------- 1 utmaw other 0,1030 Jul 14 15:13 /dev/rxxxx
Writing the KDCFILE to the special file
There are two options for creating the KDCFILE in the disk partition.
Delete the KDCFILE that you generated when determining the file size. Using the ln command, create a symbolic reference between the special file and filebase/KDCA. Regenerate the KDCFILE for your application using the KDCDEF generation tool. openUTM writes the KDCFILE directly to the special file.
rm
filebase/KDCA
ln -s /dev/rxxxx
filebase/KDCA
utmpath
/ex/kdcdef
Copy the KDCFILE (generated when determining the file size) to the special file using the cp or dd command, and then delete the KDCFILE filebase/KDCA.
Using the ln command, create a symbolic reference between the special file and filebase/KDCA.cp
filebase/KDCA /dev/rxxxx
rm
filebase/KDCA
ln -s /dev/rxxxx
filebase/KDCA
In both cases, after issuing the ln command, use the ls -l command to check whether a link exists between filebase/KDCA and the special file:
ls -l /dev/rxxxx filebase /KDCA
Output:
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Dual-file operation
If you require dual-file operation of the KDCFILE for security reasons, you will need two disk partitions. The disk partitions should be located on different disks. Ideally, the disks should be operated by different controllers. The system administrator must create a raw special file for each KDCFILE.
To ensure that openUTM can write each KDCFILE to the special file created for this purpose, you must create the following symbolic references:
ln -s /dev/rxxx1
filebase /KDCA
ln -s /dev/rxxx2
filebase
/KDCB