As I'm sure you're well aware, OS/400 and i5/OS use system values to store configuration information for your iSeries/i5. These system values are used in much the same way a Windows PC uses the registry. In V5R3, IBM has added new system values and changed a few existing system values. In this TechTip, I'll explain how these changes will impact you.
New System Values
V5R3 includes 10 new system values to allow you greater control over things like auditing level and job threads as well as new system values for configuring system time on the iSeries. The table below contains a list of the new system values in V5R3.
New System Values in V5R3 | |||
System Value | Category | Value Type/ Length | Description |
QTIMADJ | Date/Time | *CHAR 30 | Identifies the software to use to adjust the system clock to keep it synchronized with an external time source |
QTIMZON | Date/Time | *CHAR 10 | Specifies the time zone to be used for this system |
QDATETIME | Date/Time | *CHAR 20 | Contains the combined values of QDATE and QTIME system values in a single system value |
QAUDLVL2 | Auditing | *CHAR 160 | Used to define actions to audit in addition to those defined on the QAUDLVL system value |
QENDJOBLMT | Jobs | *DEC 5,0 | Defines the amount of time for application cleanup during the immediate ending of a job |
QSAVACCPTH | Save and Restore | *CHAR 1 | Defines a default value identifying whether not logical access paths are saved |
QSCANFS | Security | *CHAR | Defines whether objects in the root (/), QOpenSys, and user-defined file systems should be scanned by exit programs registered with any of the Integrated File System (IFS) scan-related exit points |
QSCANFSCTL | Security | *CHAR 200 | Defines scan control options |
QTHDRSCAFN | Performance | *CHAR 20 | Defines whether secondary threads will have affinity to the same group of processors and memory as the initial thread |
QTHDRSCADJ | Performance | *CHAR 1 | Defines whether the system should make dynamic adjustments to the affinity of threads currently running on the system |
You'll notice that several of these new system values are date- and time-related. The QTIMADJ and QTIMZON system values both affect the way the iSeries clock is adjusted when time synchronization is used. The QTIMADJ system value identifies the software used to adjust the system clock to keep it in synch with a time server. This value is strictly informational and is not enforced in any way by the operating system, but it prevents software conflicts. The QTIMZON system value identifies the time zone for purposes of adjusting a synchronized time based on the time zone of your iSeries. The value for this system value is generally set using the WRKTIMZON command by placing an '8' (Update system value) next to the desired time zone description. The QDATETIME system value returns the combined values of the QDATE and QTIME system values in a single field.
The QAUDLVL2 system value (part of the AUDITING group of system values) identifies the level of action auditing in addition to those defined on the QAUDLVL system value.
The QENDJOBLMT system value identifies the amount of time (in seconds) allowed to pass for application cleanup when an application using signal handling procedures has been ended *IMMED.
The QSAVACCPTH system value defines a value to be used when ACCPTH(*SYSVAL) is specified on any of the save commands (SAVLIB, SAVOBJ, SAVCHGOBJ, etc.). A value of 1 defines that the logical access path data should be saved. This will increase the time and amount of storage space required to perform a save, but it will decrease restore time because access paths will not have to be rebuilt.
The QSCANFS system value defines whether or not exit programs registered with any of the user-defined exit points should scan the root file system, the QOpenSys file system, or any user-defined file systems. Along with this system value, the QSCANFSCTL system value defines whether default scan control options are used with the QSCANFS system value or if specified options should be used instead.
The QTHDRSCAFN system value identifies whether secondary threads should have affinity to the same resources as their parent (or initial) thread. The value *GROUP identifies that secondary threads should be grouped with the initial thread. *NOGROUP indicates that the secondary threads do not need to be grouped, for resource purposes, with their initial thread. QTHDRSADJ specifies whether or not automatic adjustments should be made to the affinity of threads currently running in the system. The default value is set to 1 (Dynamic Adjustment). You can lock the location of all threads and disable this automatic adjustment by setting the QTHDRSCADJ system value to 0 (No adjustment).
Changed System Values
As I mentioned earlier, in addition to the new system values, five system values have been changed.
The QPWRDWNLMT defines the amount of time in seconds allowed to pass for normal system shutdown when a shutdown *IMMED has been requested. The default value has been changed for this system value to 900 to work in turn with the new QENDJOBLMT system value. The value of QPWRDWNLMT should always be greater than the value of QENDJOBLMT.
The QUTCOFFSET system value defines the offset in hours and minutes from the coordinated universal time, or UTC. In V5R3, this system value is no longer editable because it is set based on the time zone definition supplied on the new QTIMZON system value.
The QTIME system value contains the current system time. This system value has been changed to prevent the user from changing the system time to the hour that daylight savings time affects. This means that once the system clock adjusts the time for daylight savings time, you cannot adjust the clock to fall between the hour the time was changed from and the hour it was changed to.
The QIPLDATTIM system value allows you to define a date and time to schedule a system IPL. This system value has also been changed to prevent the user from setting the IPL time to fall in the hour during which daylight savings time would be adjusted. In this circumstance, the scheduled IPL would never occur.
The system value QPRCMLTTSK controls system processor multi-tasking. A value of 0 identifies that the processor should perform a single task at a time. A value of 1 defines that the processor should be allowed to perform multiple tasks. A new value of 2 has been added to identify that the system should control whether or not multi-tasking is on.
Mike Faust is an application programmer for Fidelity Integrated Financial Solutions in Maitland, Florida. Mike is also the author of the books The iSeries and AS/400 Programmer's Guide to Cool Things and Active Server Pages Primer and SQL Built-in Functions and Stored Procedures. You can contact Mike at
LATEST COMMENTS
MC Press Online