HP OpenVMS Systems Documentation

Content starts here

HP OpenVMS Version 8.4 New Features and Documentation Overview


Previous Contents Index

8.7.1.1 Partial Dump Copies Qualifiers

Two new qualifiers /PARTIAL and /CONFIRM, have been added to the SDA COPY command.

/PARTIAL = (section[,...])

The /PARTIAL qualifier is used to specify the list of sections of the dump to be copied. The sections to be copied must be separated by commas. At least one section must be specified. If only one section is specified, the parentheses may be omitted. Table 8-2 lists of sections of the dump that can be copied.

Table 8-2 Dump Sections
PT System Page Table Space
S0S1 32-bit System Space
S2 64-bit System Space
REPLICATED_SYS Replicated System Space (only applies to Alpha systems with RADs enabled)
PROCESS=option Process Space for one or more processes. Options are:
  • ALL - All processes. This is the default.
  • KEY - All key processes.
  • OTHER - All other processes other than key processes.
  • NAME=(list) - Specific named processes.
GLOBAL=option Global Pages. Options are:
  • ALL - All global pages mapped by processes. This is the default option.
  • KEY - All global pages mapped by key processes.
  • OTHER - All other (not key) global pages mapped by processes.
KEY Equivalent to:
PT, S0S1, S2, REPLICATED_SYS, PROCESS = KEY, GLOBAL = KEY
OTHER Equivalent to:
PROCESS = OTHER, GLOBAL = OTHER
SYSTEM Equivalent to:
PT, S0S1, S2, REPLICATED_SYS

If /PARTIAL=PROCESS=NAME=(list) is specified:

  • Multiple process names must separated by commas. If only one process name is given, the parentheses may be omitted.
  • Process names can include "%" and "*" wildcards.
  • The comparison of the given name to actual process names in the dump is performed case-blind, and trailing spaces and tabs are ignored.
  • Process names can include characters, such as "," and "/". You can enclose the process name in quotes to include these special characters in the name you specify. You can also use the "%" wildcard instead of special characters.

/CONFIRM

The /CONFIRM qualifier can be used with /PARTIAL=PROCESS=option, /PARTIAL=KEY, or /PARTIAL=OTHER to choose specific processes instead of copying all processes. For each possible process to be copied, the user is prompted as follows:


Copy process "SWAPPER"? (Y/[N]/A/Q): 

where:

A response of YES includes the process in the copy.
A response of NO excludes the process from the copy. The default response is NO.
A response of ALL includes the process and all remaining processes in the copy.
A response of QUIT excludes the process and all remaining processes from the copy.

8.7.1.2 DUMP Keyword for /FILE

The DUMP keyword for the /FILE qualifier of the SDA SHOW DUMP command can now accept a value. This is the file number assigned by SDA as it opens the files that make up the dump. The files are numbered in ascending order, starting at 1. If no value exists, the default file is 1.

8.7.1.3 DCL ANALYZE /CRASH_DUMP Command

The following changes have been made to the DCL ANALYZE /CRASH_DUMP command:
  • A new qualifier /LOG causes SDA to display the names of the files opened as SDA initializes itself. This does not affect the behavior of commands within SDA, such as READ, but only files are opened when SDA starts. /LOG can also be used on ANALYZE/SYSTEM.
  • The filename parameter of ANALYZE/CRASH now accepts a comma-separated list of files and/or wildcards. All matching files are opened in the order they are specified. The following restrictions apply:
    • The file that contains System Page Tables (section PT) must be the first file opened. This is the "Primary" dump file. Usually, this file contains other sections as well (for example, all KEY sections).
    • If a wildcard is used to specify filenames, the primary dump file must be the first file to match the wildcard.
    • All the files specified must be part of the same original crash dump.
    • If any section of the dump is found in multiple input files, SDA issues a warning but continues.
    • If the file or unwind data collection is in a separate file, it must have the same name as the primary dump file, with file type .COLLECT, or be specified using the /COLLECTION qualifier.
    • The files specified must either be all compressed or all uncompressed. They cannot be mixed.

8.7.1.4 Other Notes for Partial Dump Copies

  • Partial Dump Copies can only be used with selective system dumps (both compressed and uncompressed). It cannot be used with full system dumps or with process dumps.
  • In a selective system dump, processes are dumped in two sections: Process Page Table Space and Process Memory. If a process is copied as part of a COPY /PARTIAL, the two sections are always copied together.
  • In a selective system dump from an Alpha system with RADs enabled, there is a Replicated System Space section for each RAD other than the base RAD. If replicated system space is copied as part of a COPY /PARTIAL, all replicated system space sections are always copied together.
  • The /PARTIAL qualifier cannot be combined with /COMPRESS or /DECOMPRESS. Such a copy must be performed as two separate COPY commands, and requires exiting from SDA and re-invoking it on the intermediate copy.

8.7.2 Non-truncated Index Pages

The index page generated for the SET OUTPUT command is no longer truncated when the page is full, but additional pages are created with links.

In earlier releases of OpenVMS, the index page in an SDA output file could hold a maximum of 45 page headings, and each heading could be a maximum of 64 characters. Longer page headings were truncated, and any additional page headings were not recorded in the index.

OpenVMS Version 8.4 has been enhanced with the following changes:

  • If the index page is full, a new page is created and its page number is recorded in the initial index page.
  • Index pages now record the page number of the previous and the next index page.
  • The number of page headings in each index page has been increased to 51.
  • To limit truncation of page headings in the index, the maximum length of each heading has been increased to 100 characters.

8.7.3 SHOW_PFN_DATA Command: New Qualifier

A new /SUMMARY [=keyword] qualifier has been added to the SDA command SHOW PFN_DATA. The SHOW PFN_DATA /SUMMARY command produces a single-page summary of all pages on the system. The optional keywords are ALL, PROCESS, GLOBAL, and RAD.

If ALL is specified, it must be the only keyword. The other optional keywords can be provided as a combination, separated by commas and enclosed in parentheses.

The PROCESS keyword causes SDA to generate the following additional lists:

  • A list of all processes in the system displaying the breakdown of its active pages.
  • A list of all processes that contain non-active pages. For example, pages on the modified list.

The GLOBAL keyword causes SDA to generate an additional list with the breakdown for each global section of its in-memory pages, which pages are active, and which are on the free list or modified list.

The RAD keyword causes SDA to generate an additional list for each RAD, if RADs are enabled on the system, with the breakdown of all pages in the RAD sorted by location and type.

The ALL keyword causes SDA to generate summaries for each of the PROCESS, GLOBAL, and RAD (if RADs are enabled on the system) categories.

Example:


SDA> SHOW PFN /SUMMARY = (PROCESS, GLOBAL) 

8.7.4 Optional Filter Address for /RING_BUFFER[=n]

The SDA commands SHOW POOL /RING_BUFFER and SHOW PROCESS /POOL /RING_BUFFER now allow an optional address expression on the /RING_BUFFER qualifier. If the optional address is specified, SDA displays only the ring buffer entries for pool packets that contain the specified address.

For SHOW PROCESS /POOL, use of /RING_BUFFER=address to limit the display also implies /RING_BUFFER=ALL - all entries for packets containing the address are displayed including matched allocations and deallocations.

Example:


SDA> SHOW POOL /RING_BUFFER = 83A01234 

8.7.5 SHOW SYMBOL Command: New Qualifier

A new /BASE_ADDRESS=n qualifier has been added to the SDA command SHOW SYMBOL. Without this qualifier, SDA displays the value of the symbol, and, if the value is a valid address in the system or dump being analyzed, it displays the contents of that address. With the new /BASE_ADDRESS=n qualifier, the value n is added to the symbol's value and SDA displays the contents of the resulting address if it is valid.

Example:


SDA> SHOW SYMBOL CPU*BC* /BASE = CPUDB 

8.7.6 SHOW ACPI /NAMESPACE and SHOW ACPI /TABLES Commands

Two new commands have been added to SDA to display ACPI data structures: SHOW ACPI /TABLES and SHOW ACPI /NAMESPACE. You must specify either /TABLES or /NAMESPACE, but not both the qualifiers. By default, the command displays a summary of the ACPI tables or namespace. These commands can also be specified with optional qualifiers and parameters.

SHOW ACPI /TABLES name displays the details of the specified table. If there are multiple ACPI tables with the same name, details will be displayed for all such tables.

SHOW ACPI /NAMESPACE name displays summary information for all namespace entries with the specified name.

The following qualifiers can also be specified with these commands:

  • /ALL - outputs a detailed display of each item instead of summary only.
  • /ADDRESS - outputs a detailed display of the item at the specified address. For /TABLES, this is a physical address; for /NAMESPACE, this is a virtual address. The address of each item can be found in the summary display.
  • /CHILDREN (only valid with /NAMESPACE and when a name or an address is also specified) - displays the summary of all namespace entries that are children of the specified entry. You can combine /CHILDREN and /ALL to see the details of the entries.

Examples:


SDA> SHOW ACPI /TABLES XSDT 
SDA> SHOW ACPI /NAMESPACE _HID 
SDA> SHOW ACPI /NAMESPACE CPU0 /CHILDREN 

8.7.7 SHOW SPINLOCKS Command: New qualifiers

Two new qualifiers have been added to the SDA command SHOW SPINLOCKS: /DEVICE and /MISCELLANEOUS.

The /DEVICE qualifier causes SDA to display the device spinlocks, which are a subset of the dynamic spinlocks.

The /MISCELLANEOUS qualifier causes SDA to display all spinlocks that are not included in existing groupings, such as mailbox and PCB spinlocks. Miscellaneous spinlocks include those of XFC, PEDRIVER, TCP/IP, and various other spinlocks, and vary from system to system.

Note that the /DYNAMIC qualifier is unchanged. It causes SDA to display all dynamic spinlocks, which are now a superset of device, port, mailbox, PCB, cached PCB, process-shared (pthreads) and miscellaneous spinlocks.

8.7.8 SHOW RESOURCE /CONTENTION Command: New qualifier

A new /FULL qualifier has been added to the SDA command SHOW RESOURCE /CONTENTION. If /FULL is specified, an expanded display of each resource that is in contention is output. If /FULL is not specified, the default display is a one line summary of the resource, with an additional line for each lock associated with it. The /FULL qualifier can be used with both SHOW RESOURCE /CONTENTION and SHOW RESOURCE /CONTENTION = ALL.

8.7.9 SET CPU and SHOW CPU Command: New qualifier

A new /PRIMARY qualifier has been added to the SDA SET CPU and SHOW CPU commands, which sets or shows the primary CPU.

8.7.10 SHOW RAD Command: New qualifier (Integrity servers Only)

On Integrity server systems, a new /PXML qualifier has been added to the SDA command SHOW RAD. The SHOW RAD/PXML command displays the proximity database. The proximity database contains the information obtained from the ACPI tables. The proximity database is used to determine the RADs to be created on the system, and which CPUs and memory ranges make up each RAD.

Example:


SDA> SHOW RAD /PXML 

8.8 Memory Disk Booting from InfoServer (Integrity servers Only)

OpenVMS Version 8.4 supports "Memory Disk" booting from an InfoServer server. This feature eliminates the need for an OpenVMS LAN boot driver to boot over the network. It uses the existing Memory Disk boot functionality used for Integrity server satellite boots. For more information about memory disk booting from InfoServer, see the HP OpenVMS Version 8.4 for Integrity Servers Upgrade and Installation Manual.

8.9 Availability Manager Support for Cluster over IP

Availability Manager Version 3.1 has been enhanced to support the Cluster over IP functionality. This new release of Availability Manager provides functionality to manage and monitor LAN or IP path (channels) data, IP interface (IP bus) used for cluster communication, and virtual circuit formed using IP channels.


Chapter 9
Programming Features

This chapter describes new features relating to application and system programming in OpenVMS Version 8.4.

9.1 OpenVMS Callable Mail Enhancement

The OpenVMS callable mail API, MAIL$SEND_MESSAGE has been enhanced to send mails directly to the specified folder using the new send item code, MAIL$_SEND_RECIP_FOLDER.

If the recipient is VMSmail, and if the specified folder does not exist, a new folder with the name specified by the send item code is created. The folder name is case sensitive.

If you specify the MAIL$_SEND_RECIP_FOLDER item code, the new mail is placed in the folder specified by this item code. By default, if the item code is not specified, the mail is placed in the NEWMAIL folder. Using this feature, new mails can be directly sent to folders, such as JUNK or SPAM.

If the target mail server is a non OpenVMS server, the folder to which it is delivered depends on the protocol used by the recipient.

9.2 C Run-Time Library Enhancements

The following sections describe the C Run-Time Library (C RTL) enhancements included in OpenVMS Version 8.4. These enhancements provide improved UNIX portability, standards compliance, and the flexibility of additional user-controlled feature selections. New C RTL functions are also included. For more information about the C RTL functions, see the HP C Run-Time Library Reference Manual for OpenVMS Systems.

9.2.1 C RTL Support for Unicode - UTF-8 Encoding for Filenames

C RTL APIs now support filenames in UTF-8 (8-bit UCS/Unicode Transformation Format) encoding format when given in UNIX syntax. UTF-8 is a variable-length character encoding for Unicode.

UTF-8 is the most preferred encoding for email, web pages, and other places where characters are stored or streamed. For example, on an ODS-5 disk, the OpenVMS DIRECTORY command supports a filename with the following characters: /disk/mydir/^U65E5^U672C^U8A9E.txt

With UTF-8 support enabled, a C program can read the filename from the OpenVMS directory and use the filename as an UTF-8 encoded string. For example, opendir("/disk/mydir") followed by an readdir() places "\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E.txt" in the d_name field of the supplied directory structure. An open("/disk/mydir/\xE6\x97\xA5\xE6\x9C\xAC\xE8\xAA\x9E.txt",O_RDWR,0) or open("/disk/mydir/xxxyyyzzz.txt", O_RDWR,0) opens this file.

Where; "\xE6\x97\xA5" is the E697A5 byte stream, which represents the xxx character in UTF-8 encoding.

This feature enhances the UNIX portability of international software with UTF-8 encoded filenames.

DECC$FILENAME_ENCODING_UTF8 logical name is introduced to enable this feature. To enable the UTF-8 encoding, define DECC$FILENAME_ENCODING_UTF8 and DECC$EFS_CHARSET logical names. If DECC$FILENAME_ENCODING_UTF8 is not defined, the default behavior is to accept filenames in ASCII and Latin-1 format. Note this feature works only on an ODS-5 disk.

For more information about UTF-8 encoding, see HP C Run-Time Library Reference Manual for OpenVMS Systems.

9.2.2 Enhanced strcmp() and memcmp() for Performance Improvements

C RTL strcmp() and memcmp() APIs have been enhanced to improve performance on Integrity servers, which reduces the compute time.

Approximately 56% performance improvement was seen with the newer implementation and thus, enhances the performance throughput of many business critical applications.

9.2.3 Semaphore Support

C RTL supports the following Open Group semaphore control operations in C RTL:
System V semaphore routines supported:

semctl()
semget()
semop()
ftok()

POSIX semaphore routines supported:

sem_close()
sem_destroy()
sem_getvalue()
sem_init()
sem_open()
sem_post()
sem_timedwait()
sem_trywait()
sem_unlink()
sem_wait()

9.2.4 DECC$PRINTF_USES_VAX_ROUND Feature Switch

A new feature switch, DECC$PRINTF_USES_VAX_ROUND, has been added to the C RTL.

With this switch set, the F and E format specifiers of printf use VAX rounding rules for programs compiled with IEEE float.

9.3 Linker Utility Enhancement

New /CBT and /NOCBT qualifiers are added to the LINK command. The linker creates image files using /NOCONTIGUOUS (default) or /CONTIGUOUS. However, the default /NOCONTIGUOUS does not create a non-contiguous file; it creates a contiguous best try (CBT) file.

In some build environments, for example, if the target disk is heavily fragmented and is also heavily used from other nodes in a cluster environment, it is often impossible to write contiguous files. Attempting to do so can impact the I/O performance for this disk on all nodes in the cluster.

To make the new qualifiers compatible with the existing default, the new default is /NOCONTIGUOUS and /CBT. To disable the default and have the linker create a non-contiguous file, /NOCBT must be specified. The combination of /CONTIGUOUS and /NOCBT is contradictory and is not allowed. Specifying /CONTIGUOUS/CBT or /CONTIGUOUS gives the same result.

9.4 System Services New Information

The following new system service has been added to OpenVMS Version 8.4:

  • $POWER_CONTROL - $POWER_CONTROL system service is added on all Integrity server system platforms to change the platform's power and performance settings to a desired value. The setting applies to the entire system as though commanded using the iLO web interface. For information about $POWER_CONTROL, see the HP OpenVMS System Services Reference Manual.

9.5 New Item Codes

The following new item codes have been added to the $GETDVI system service:

  • DVI$_NOXFCCACHE_ON_VOLUME - returns a boolean value indicating status of whether XFC caching is enabled on the volume. A value of 0 indicates that XFC caching is enabled for the volume. A value of 1 indicates that XFC caching is disabled for the volume.
  • DVI$_XFC_DEPOSING - returns a boolean value indicating whether the XFC volume depose operation is in progress or not. A value of 0 indicates that the XFC volume depose operation is not in progress. A value of 1 indicates that the XFC volume depose operation is in progress.

The following new item codes have been added to the $MOUNT system service:

  • MNT$_DATA---specifies if the XFC must be enabled on a disk. By default, MNT$_DATA is passed with MOUNT, except when NOQUOTA, NOFILEDID, NOEXTENT, and WRITETHROUGH values are passed.
  • MNT$_NODATA---specifies if the XFC must be disabled on a disk. This value is the default value when NOQUOTA, NOFILEID, NOEXTENT, and WRITETHROUGH values are passed with the MOUNT command.

For more information, see the HP OpenVMS System Services Reference Manual.


Previous Next Contents Index