Release notes for Model 204 version 7.6: Difference between revisions
m (→New XHTML entities for square-bracket characters: add new example) |
m (→New XHTML entities for square-bracket characters: tweak example) |
||
Line 200: | Line 200: | ||
<p class="code">begin | <p class="code">begin | ||
%x is unicode | %x is unicode | ||
%x = 'Released in 1966, Manos: The Hands of Fate [is a D-minus] ' | %x = 'Released in 1966, Manos: The Hands of Fate [is a D-minus] ' - | ||
'of a B movie: Its plot, about desert-dwelling pagans, makes little sense.' | 'of a B movie: Its plot, about desert-dwelling pagans, makes little sense.' | ||
printText {%x:unicodeAfter(']')} | printText {%x:unicodeAfter(']')} | ||
Line 213: | Line 213: | ||
The square brackets below are created using the <var>[[U (String function)|U]]</var> method and placed in variables <code>%sqL</code> and <code>%sqR</code>. The variables are inserted into a <var>Unicode</var> string and used to parse that string: </p> | The square brackets below are created using the <var>[[U (String function)|U]]</var> method and placed in variables <code>%sqL</code> and <code>%sqR</code>. The variables are inserted into a <var>Unicode</var> string and used to parse that string: </p> | ||
<p class="code">begin | <p class="code">begin | ||
%sqL is string len 1 initial("[":u) static | %sqL is string len 1 initial("&#x5B;":u) static | ||
%sqR is string len 1 initial("]":u) static | %sqR is string len 1 initial("&#x5D;":u) static | ||
%x is unicode | %x is unicode | ||
%x = 'Released in 1966, Manos: The Hands of Fate ' with %sqL with - | %x = 'Released in 1966, Manos: The Hands of Fate ' with %sqL with - |
Revision as of 01:41, 1 June 2016
These release notes describe new features, enhancements, and other changes contained in Model 204 version 7.6, generally available in January, 2016.
Overview
These release notes contain installation and features information for the Rocket Model 204 version 7.6 release. Before beginning your installation, please read through this information about product installation and changes.
New in this release
This section summarizes the highlights of Model 204 version 7.6. For a full list of features, refer to the Table of Contents.
Category | Feature |
---|---|
SOUL (User Language) |
|
Performance |
|
Fast/Unload |
|
Janus products |
|
Debugging and testing |
|
Operating system and hardware requirements
Operating system requirements
- IBM z/OS
- Versions supported: z/OS version 1.07 through 2.1.
- zHPF support requires version 2.1.
- Large (1 MB) page support requires version 1.9.
- Extended address volumes (EAV) requires version 1.12.
Version 1.07 is sufficient for all functionality except for the following features:
On z/OS, Model 204 release 7.6 operates as an APF authorized load module, as required by many 7.6 features.
To run Model 204 unauthorized, contact Technical Support. - IBM z/VM
- Versions supported: z/VM version 5.4 through 6.3.
- IBM z/VSE
- Versions supported: z/VSE version 5.1 and 5.2.
Hardware requirements
In general, Model 204 version 7.6 requires the IBM z/890 or above processor.
However, the IBM z10 or above processor is required for the following features:
- large (1 MB) page support
- IBM's High Performance FICON (zHPF) support
Model 204 compatibility with operating systems
For information on Model 204 certification with IBM operating systems, see Model 204 system requirements.
Connect★ compatibility with Model 204
The latest version of Connect★, version 7.5, is compatible with all versions of Model 204.
For more information on Connect★ installation, see the Connect★ wiki pages.
SOUL enhancements
New and changed SOUL statements
The Private keyword has been added to Class declarations, and Friend declarations have been added to Class blocks.
Members of a private class can be accessed only by the class itself or any class declared as a friend of the private class.
New and changed classes and methods
Json class
The Json class has been created to facilitate exchange of data with other platforms using the JSON format. This class contains a large number of methods and also adds three new exception classes: InvalidJsonType, JsonCircularReference, and JsonParseError, and one new enumeration: JsonType. In addition, the JsonParse function was added to the Unicode intrinsic class.
Web class
The Web class has been created as a container for Janus Web Server specific methods. This class contains two new methods: ScreenInputCallback and ScreenOutputCallback. There is also an associated new system type: WebScreenCallback and a new WebScreenException exception class.
"SSL" String methods
These new methods are added:
Method | Description |
---|---|
AES128CBCdecrypt | AES 128-bit key decryption |
AES128CBCencrypt | AES 128-bit key decryption |
AES128decrypt | AES 128-bit key decryption |
AES128encrypt | AES 128-bit key decryption |
AES192CBCdecrypt | AES 192-bit key CBC decryption |
AES192CBCencrypt | AES 192-bit key CBC decryption |
AES192decrypt | AES 192-bit key decryption |
AES192encrypt | AES 192-bit key decryption |
AES256CBCdecrypt | AES 256-bit key CBC decryption |
AES256CBCencrypt | AES 256-bit key CBC decryption |
AES256decrypt | AES 256-bit key decryption |
AES256encrypt | AES 256-bit key decryption |
DEA128CBCdecrypt | DEA 128-bit key decryption |
DEA128CBCencrypt | DEA 128-bit key decryption |
DEA128decrypt | DEA 128-bit key decryption |
DEA128encrypt | DEA 128-bit key decryption |
DEA192CBCdecrypt | DEA 192-bit key CBC decryption |
DEA192CBCencrypt | DEA 192-bit key CBC decryption |
DEA192decrypt | DEA 192-bit key decryption |
DEA192encrypt | DEA 192-bit key decryption |
DEA64CBCdecrypt | DEA 64-bit key CBC decryption |
DEA64CBCencrypt | DEA 64-bit key CBC decryption |
DEA64decrypt | DEA 64-bit key decryption |
DEA64encrypt | DEA 64-bit key decryption |
SHA224digest | 224-bit SHA-2 digest |
SHA256digest | 256-bit SHA-2 digest |
Utf8ToUnicode and Utf16ToUnicode string methods
The Utf8ToUnicode and Utf16ToUnicode String methods can now handle values that cannot be translated into EBCDIC. The AllowUntranslatable argument, now available for general use and True by default, specifies that such values will be stored into the target Unicode string rather than producing an exception.
New XHTML entities for square-bracket characters
By applying zap 76Z260
, [ and ] are supported as XMHTL entities (notably in the U method). This provides a much better approach to specifying square brackets, such as for XPath expressions.
For example, assuming the Online's codepage as shown by the UNICODE DISPLAY command matches your 3270 emulator's codepage:
- Recommended for version 7.6 and higher:
The left and right square brackets in this example are created using the
[
and]
XHTML entities. The UnicodeAfter method returns the part of a string that follows a specified delimiter:begin %x is unicode %x = 'Released in 1966, Manos: The Hands of Fate [is a D-minus] ' - 'of a B movie: Its plot, about desert-dwelling pagans, makes little sense.' printText {%x:unicodeAfter(']')} end
The request result is:
of a B movie: Its plot, about desert-dwelling pagans, makes little sense.
- Recommended for version 7.5:
The square brackets below are created using the U method and placed in variables
%sqL
and%sqR
. The variables are inserted into a Unicode string and used to parse that string:begin %sqL is string len 1 initial("[":u) static %sqR is string len 1 initial("]":u) static %x is unicode %x = 'Released in 1966, Manos: The Hands of Fate ' with %sqL with - ' is a D-minus ' with %sqr with - ' of a B movie: Its plot, about desert-dwelling pagans, makes little sense.' printText {%x:unicodeAfter(%sqR)} end
Again, the request result is:
of a B movie: Its plot, about desert-dwelling pagans, makes little sense.
New default certificate-signing algorithm
Janus Network Security as well as the StringList methods AppendSignedCertificate and AppendSignedClientCertificate methods have changed their default signature algorithm from SHA-1 to SHA-256.
This change is initially provided by zap maintenance.
Janus Web Server enhancements
Chunked encoding support
Janus Web support for HTTP 1.1 chunked encoding is added. The V7.6 Janus Web Server handles inbound chunked HTTP requests, but it does not send chunked output because it always knows the exact length of the entire response.
For more information about chunked encoding, see http://en.wikipedia.org/wiki/Chunked_transfer_encoding.
SCREENTHROW setting for Janus Web Legacy
The new SCREENTHROW setting for Janus Web ports allows Janus Web Legacy applications to trap client errors rather than deferring to the default Janus Web Legacy support error handling behavior.
Janus Web Server default rules
Janus Web used to automatically implement two web server ON rules to set up access to the Janus Web sample home page and to demonstration application procedures. These rules can be removed in version 7.6 (by zap maintenance).
Also, the automatic JANUS WEB ALLOW rule, which allowed any user to access the port without requiring a login, is changed to the following to force login for any URL on a Janus Web port:
JANUS WEB portname ALLOW * USER *
This rule applies (by zap maintenance) in version 7.6, unless overridden by user-added rules.
Fast/Unload enhancements
Fast/Unload HPO
Fast/Unload HPO (High Performance Option) is a Model 204 7.6 add-on feature that activates zIIP processing for Fast/Unload when invoked by the Fast/Unload Soul Interface.
The feature requires setting the FUNMTASK parameter, and it requires purchase of the Model 204 HPO feature.
Note: This feature does not provide zIIP support for PGM=FUNLOAD; that support becomes available with Model 204 7.7.
FUSI: new product name for SOUL access to Fast/Unload
The Fast/Unload SOUL Interface (FUSI), purchased as a separate Fast/Unload option, allows you to invoke Fast/Unload from a SOUL program.
Change to Fast/Unload installation
Fast/Unload is no longer loaded as a separate load module. See Notes for system manager and installer.
System management enhancements
Model 204 version number added to SMF records
A one-byte, hexadecimal representation of the Model 204 version number has been added to both SMF records (logout and since-last) at offset X'39'. For version 7.6, the value is X'4C'
(76 decimal).
Performance enhancements
Model 204 HPO
The approach to zIIP (IBM System z Integrated Information Processor) support in Model 204 prior to version 7.6 is to offload to zIIP only certain eligible code safe for execution on the zIIP engine. The V7.6 improvements to the zIIP offload make most of the Model 204 code zIIP tolerant: almost all MP-capable code (Model 204 code that may run on an MP subtask) is offloaded to zIIP. Code that cannot be executed on zIIP uses the MP subtask or a maintask.
Note: While a limited version of this capability is available to all customers, the fully expanded zIIP support is known as Model 204 HPO, and it requires an additional license. For more information, contact Rocket Software.
This feature is for z/OS systems only. As in previous releases, specifying a nonzero value for the AMPSUBZ parameter activates zIIP processing.
User-written $functions and zIIPs
Instead of having to indicate what code should run on zIIP, it is only necessary now to indicate what Assembler code cannot run on zIIP. Customers planning to use zIIP processing must do either of these:
- Inspect any user-written $functions for non-tolerant code (code that uses an SVC instruction or system services that may use SVC, like BSAM, VTAM, task-mode z/OS macros), which must be bracketed with
SRBMODE OFF
andSRBMODE ON
. - Specify
MP=NO
(the default) or no MP setting at all in the function table to cause $functions to run on a maintask. Any other value for MP enables $functions to run on zIIP subtasks.
It is not always obvious whether code can or cannot run on a zIIP subtask. Even if all explicit SVCs and non-task-mode system macros issued by Model 204 have been identified and bracketed, some may be issued implicitly by z/OS or other services, so user testing is important.
Parameter changes for zIIP usage
The following are V7.6 changes to the documented recommendations for the parameters that initiate and control Model 204 zIIP processing:
- Parameter ZQMAX is deprecated. If you have specified a value for ZQMAX, it is now ignored.
- X'01' becomes the default value of the SIRFUNC parameter.
The X'01' bit of SIRFUNC must be set (explicitly or as the default value) for zIIP processing or the run is cancelled.
- The XMEMOPT X'02' bit was not documented as necessary for zIIPs. It is necessary as of V7.6.
- It is now strongly recommended that customers running MP/204 not set the X'40' bit of the SCHDOPT parameter, since MP subtasks will no longer steal work from zIIP SRBs unless they seem overloaded, in which case you probably do not want the SCHDOPT X'40' bit to prevent MP subtasks from helping out.
Fast/Unload HPO
Fast/Unload HPO (High Performance Option) is a new product that activates zIIP processing for the Fast/Unload Soul Interface (only).
64-bit addressing and Above The Bar (ATB) storage
Storage above the (2G) bar increases scalability, performance, and growth potential. 64-bit addressing is the de facto standard for Model 204.
- ATB support for FTBL was released with Model 204 version 7.4.
- ATB support for GTBL, NTBL, and QTBL was released with Model 204 version 7.5.
- ATB support for STBL, VTBL, and several other tables is added in Model 204 version 7.6.
When using non-swappable ATB server space, each user gets SERVNSSZ bytes of ATB space, even if the thread is logged out or running resident requests. For greater efficiency, Model 204 also provides swappable ATB server areas that can supplement or replace the non-swappable areas. These swappable ATB server areas are controlled by the SERVGA and SERVGSZ parameters.
As more features use ATB buffers, it is a good idea to reevaluate your ATB and BTB buffer usage.
STBL, VTBL, and other tables in ATB storage
STBL, VTBL, and several other tables can now be placed into swappable or non-swappable server storage area above the bar.
To store a table in non-swappable ATB storage:
To store a table in swappable ATB storage:
Notes:
The settings for each server table above the bar are independent of each other.
However, you cannot set bits in both SERVNSA and SERVGA.
TBO buffers, the Procedure dictionary, and Longstrings
64-bit addressing support for TBO buffers, the Procedure dictionary, and Longstrings is new in version 7.6:
- Procedure dictionary pages will be in the above-the-bar buffer pool if NUMBUFG is set.
- TBO and longstring pages will accessed either directly from in-memory CCATEMP, if TEMPPAGE is set, or from the above-the-bar buffer pool if TEMPPAGE is not set but NUMBUFG is.
High Performance FICON (zHPF)
Model 204 version 7.6 supports IBM's High Performance FICON (zHPF) feature, which allows faster I/O by limiting the number of interactions between the channel and the device.
Required hardware and software:
- CPU: z10 and higher
- z/OS version: 2.01
- Disk subsystem: Contact your IT department to verify that your disk subsystem has the zHPF feature available and activated.
zHPF is not supported on z/CMS, z/VSE, or z/OS running under z/VM.
The new ZHPF command displays zHPF capabilities for each data set in a currently opened file.
Support for OI CHUNK field group members
The CHUNK attribute for DEFINE FIELD was introduced in Model 204 version 7.5 to improve the efficiency of range finds using Ordered Index (OI) processing. The CHUNK attribute can now be specified for field group members.
Debugging and testing enhancements
Unicode linefeed now causes line break on print
Printing or auditing a Unicode string invokes an implicit conversion to EBCDIC. If the string contains a Unicode linefeed character (U+000a), a new line will now be started on the output device, rather than a display of the linefeed character's hex encoding (

) as before.
This change should make it much easier to look at Unicode strings that contain formatting linefeeds. The feature works for any display-oriented statements such as Print, Audit, Trace, PrintText, AuditText, TraceText, Text, and so on.
SoftSpy
As of version 7.5, the code for SoftSpy, the debugging, testing, and performance-tuning product, has been included in the Model 204 nucleus, significantly simplifying SoftSpy installation. SoftSpy remains a separately licensed Model 204 add-on product.
For more information about SoftSpy version 7.6, see the SoftSpy 7.6 release notes.
Janus/TN3270 Debugger
- Product name change.
The "Sirius Debugger" product name is changed to "TN3270 Debugger."
- Synonym for SIRIUS DEBUG command.
A synonym, TN3270 DEBUG, is made available for the SIRIUS DEBUG command and all its subcommands.
Compatibility issues
Unicode linefeed line break
While the Unicode linefeed line break feature is likely to make it easier to examine Unicode strings, in theory it could cause a backward-compatibility problem for applications that parse the results of a Print of Unicode data, expecting the 

values to be present.
M204XSVC
(applies to z/OS, z/VM CMS)
Zap 76Z043 enables you to use a 7.6 load module with M204XSVC from version 7.4 or 7.5 without applying any changes to the SVC.
Once you have applied zap 76Z043, you can use a 7.6 load module with:
- M204XSVC version 7.4
- M204XSVC version 7.5 if zap 75Z345 was not applied or was removed by 76Z043. (If zap 75Z345 was applied but 76Z043 was not, message "M204.0077: Errors detected -- run cancelled" is issued and initialization terminates.)
Note: When a pre-7.6 M204XSVC is used with 7.6, the zHPF feature is not supported and its setting (X'10' in SYSOPT2) is reset with no message issued.
z/VM CMS users: In order to apply this zap to 7.6, you need to relink the M204CMS module as well as the ONLINE module. Contact Technical Support for details.
APSYPAGE parameter is obsolete
(applies to z/OS)
The APSYPAGE parameter has been disabled as of version 7.6. If APSYPAGE is non-zero, a warning will appear:
M204.2958: APSYPAGE obsolete as of 7.6
The Online will still come up but APSYPAGE will have no effect. See APSYPAGE parameter for information about using the RESPAGE parameter instead of APSYPAGE.
NEBUFF default value is now 40
The default value of the NEBUFF parameter for Fast/Unload SOUL Interface (FUSI) is now 40. (NEBUFF had a default value of 2 in previous versions.) See also FUNL.NEB.
Unlabeled FDV statement compilation errors
Version 7.6 introduced an edge case incompatibility by disallowing code which is very questionable or clearly wrong; that is, previously the compiler allowed pretty much any statements between the label and the FDV. Such statements are no longer allowed. For example, the following was allowed in older versions of Model 204:
a: audit 'About to FDV' fdv foo b: frv in a
Inserting SOUL code between a label and an FDV statement is no longer allowed, and so the result of the above is:
M204.0311 Unacceptable statement reference
This change was introduced as maintenance in both version 7.5 (as zaps 75Z408 and 75Z414) and version 7.6 (as zaps 76Z175 and 76Z182).
New and changed commands
SWITCH STREAM (new parameter: RESET)
The SWITCH STREAM command has added an optional RESET parameter that causes any disabled parallel GDG members to be reopened during the switch. RESET is valid only for a CCAJLOG stream specified as a Parallel GDG.
TN3270 DEBUG (new synonym for SIRIUS DEBUG)
TN3270 DEBUG is now available as a synonym for the SIRIUS DEBUG command and all its subcommands.
ZHPF (new)
The ZHPF command displays zHPF capabilities for each data set for a currently opened file.
Displayed value | Meaning |
---|---|
Supported: YES |
zHPF-type I/O (called "transport mode I/O") can be used for the data set. |
Supported: NO | Hardware or z/OS support for zHPF functionality is insufficient (for example, when z/OS runs under VM). |
Supported: N/A | zHPF support is not available at all on z/OS or on the hardware level. |
New and changed parameters
CFROPTS (new)
The new CFROPTS system parameter makes it possible to request that Model 204 use strict fair share enqueuing for critical file resource lock conflicts.
DSPOPT (new setting: X'04')
The new X'04' setting for the DSPOPT parameter uses compression for 64-bit in-storage server swapping.
FUNL.NEB (new)
The new FUNL.NEB parameter enables you to change the default NEBUFF parameter for all subsequent Fast/Unload SOUL Interface (FUSI) requests. The default value of FUNL.NEB is 0, meaning that the original NEBUFF default value (40) is used. You can also specify a value greater than 1 to be the new NEBUFF default. FUNL.NEB=1
is not allowed.
FUNMTASK (new)
The new FUNMTASK parameter specifies whether Fast/Unload SOUL Interface (FUSI) requests are to be executed on a z/OS subtask or on one of these: the Model 204 maintask, an MP/204 subtask, or the zIIP support SRB.
FUNPGM (obsolete)
The FUNPGM parameter is now obsolete, because the Fast/Unload CSECTs are all linked with the Online, and the Fast/Unload load module is no longer loaded as a separate load module.
LSERVERG (new)
The new LSERVERG parameter shows the current server size required for the user's tables in the ATB (above the bar) server.
LSERVERN (new)
The new LSERVERN parameter shows the current server size required for the user's tables in the NSA (non-swap area).
MAXOND (new)
The new MAXOND parameter defines the number of times an On unit can be entered before the evaluation is terminated.
NEBUFF (changed default value)
The default value of the NEBUFF parameter for Fast/Unload SOUL Interface (FUSI) requests is now 40. (Prior to 7.6, the default NEBUFF value was 2.) See also FUNL.NEB.
RCVOPT (new setting: X'20')
The X'20' bit of the RCVOPT parameter prevents the flushing of dirty pages for a file that does not do pre-imaging (FRCVOPT X'20' set) during a subtransaction checkpoint.
SERVACTG (new)
The SERVACTG parameter shows the swappable size, in bytes, of the ATB server area being used by the current user.
SERVACTV (new)
The SERVACTV parameter shows the swappable size, in bytes, of the BTB server area being used by the current user.
SERVGA (new settings)
The SERVGA parameter now has settings to allocate additional server tables in the ATB swappable-server area.
SERVNSA (new settings)
The SERVNSA parameter now has settings to allocate additional server tables in the ATB non-swappable-server area.
SYSOPT2 (new setting)
The SYSOPT2 parameter now has a setting to enable zHPF usage.
VTLAPSY (newly documented)
The VTLAPSY parameter, previously undocumented, indicates the name of an APSY subsystem used to provide full-screen login support for IODEV=7 terminals (3270-type).
Debugging and testing enhancements
SoftSpy and Muse can now use the standard zap AUTH mechanism; EDIT CONFIG is no longer used to enter authorization keys.
Notes for system manager and installer
Fast/Unload and FUNPGM
In version 7.6 (of Model 204 and of Fast/Unload), the Fast/Unload CSECTs are all linked with the Online. This change was made primarily to enable use of zIIPs with Fast/Unload. The main implication of this change is that the FUNPGM parameter is now obsolete, because Fast/Unload is not loaded as a separate load module.
Documentation conversion to wiki format
Rocket Model 204 documentation is being converted from individual manuals in PDF format to a set of cross-linked HTML articles in this integrated wiki, M204wiki.
As of Model 204 version 7.6, most manuals are now in wiki format. The rest remain in PDF format, available in the Rocket M204
folder of the Rocket Software Documentation Library.
For details, see Model 204 documentation.
New and updated messages
See New and updated messages in Model 204 version 7.6 for details.