- Global limits in tz390
- max_errors = 100 (override with ERR(nnn))
- max_file_size = 50 MB (override with MAXSIZE(mb))
- max_time_seconds = 15 maximum elapsed time in seconds (override
with TIME(sec))
- Global limits z390 GUI Interface
- max_cmd - 100 maximum command history for scrolling
- mz390 Macro Processor
- max_mac_name = 5000 maximum macro files concurrently loaded
- max_mac_file_name = 1000 maximum concurrent files (MLC, MAC, and
CPY's)
- max_mac_line = 200,000 maximum source lines in files
- max_mac_lab = 10,000 maximum macro statement labels in loaded
macro files
- max_mac_call_level = 50 maximum current active macro call nesting
- max_pos_parm = 10,000 maximum concurrent positional macro parms
- max_kwd_parm = 10,000 maximum concurrent keyword parsm
- max_lcl_name = 10,000 maximum concurrent local macro variables
- max_lcl_set = 10,000 maximum local seta, setb, and setc variables
- max_gbl_name = 100,000 maximum global variable names
- max_gbl_set = 100,000 maximum global seta, setb, and setc
variables
- max_exp_stk = 500 maximum set expression stack
- max_pc = 50,000 macro peudo op codes
- az390 Assembler
- max_pass = 4 maximum passes to resolve formward nested symbol
references
- max_bal_line = 200,000 maximum MLC source lines loaded
- max_sym = 50,000 maximum ordinary symbols defined
- max_lit = 20,000 maximum literals defined
- max_esd = 1,000 maximum external symbols defined (CSECT, ENTRY,
EXTRN)
- max_use = 500 maximum concurrent USING definitions
- max_exp_stk = 500 maximum expression stack
- max_exp_rld = 500 maximum expression relocation definition stack
- max_rld = 50,000 maximum relocation definitions generated from
reduced expression RLD's
- lz390 Linker
- max_gbl_esd = 10,000 maximum global RLD references
- max_obj_files = 1,000 maximum loaded OBJ files
- max_obj_esd = 1,000 maximum ESD entries in single OBJ file
- max_rld = 100,000 maximum RLD's in final binary 390 load module
- ez390 Emulator
- max_mem = 1 maximum main memory allocated (override with MEM(mb)
- max_pc_stk = 50 maximum PC instruction nesting stack size
- max_tiot_files = 100 maximum concurrent files open
- max_cde_pgms = 500 maximum programs loaded via LOAD or LINK svcs
- max_link_stk = 50 maximum nested LINK svcs
- General Limitations
- All source files are ASCII vs EBCDIC so z390 macro assembler
programs are restricted from using extended EBCDIC characters in literal
character strings. The workaround is to recode such characters in
hex source string format (i.e. binary zero can be coded as X'00').
- The az390 assembler default object code format is OBJ mainframe
compatible which limits single CSECT's to 16MB. Use OBJHEX option
to generate ascii hex format object code which supports single CSECT's
over 16MB (see TESTOBJ1.MLC). The OBJHEX format is also readable
for debugging and the lz390 will read either without option required.
- The ez390 emulator supports problem state instructions including
32 and 64 bit instructions plus HFP and BFP floating point instructions.
The ez390 emulator does not support supervisor state instructions and
instructions that relate to multiple address spaces such as MVCP and
MVCS. See regression tests TESTINS1, TESTINS2, and TESTFP1 for
instruction tests.
- The ez390 emulator will support allocation of main memory up to
physical limit of machine it is running on. The default is 1 MB to
minimize overhead for single assembler program execution. There is
support for AMODE24 and AMODE31 but not AMODE64.
- The ez390 runtime supports basic MVS type system macros at the
macro interface level. The lower level SVC interfaces are
different. MVS type control block support is limited to those
control blocks that have DSECT definitions and only those fields that
are defined in the DSECT's. See CVTD, DCBD, and DECBD macros for
currently supported fields.
RPI requests for additional
support are welcome.
- The ez390 runtime supports QSAM and
VSAM file
access. With v1.3.08 KSDS currently only supports random and skip
sequential browsing. Inserts and alternate index support is
planned.
- The ez390 runtime supports Graphical User Access Method (GUAM
option) with 3 modes including MCS console, TN3270 data stream, and
graphics mode. The current gz390 GUAM graphics macros are not yet
fully supported.
- The ez390 runtime support TCPIO macro and svc for TCP/IP sockets
connections. This support is used to support
Service Oriented Architecture (SOA)
services (See soa directory for demos), and also
EXEC CICS
compatible transaction manager with local and remote TN3270 clients
accessing EXEC CICS assembler applications running on server. See
cics directory for more information.
- The z390 executable classes mz390, az390, lz390, and ez390
typically use between 30-40 MB of memory. However the largest
assembly tested with v1.2 with over 450 macros used 88 MB which is
larger than the default J2RE runtime memory allocation of about 50 MB.
For this reason the mz390.bat command has been updated in v1.2 to set
J2RE parameter of -Xmx100000000 to set mz390 defualt memory allocation
to 100 MB. Memory can be allocated up to physical limit of memory
but allocating too much can cause system to stall when running multiple
applications.
|