Region size includes all four of these items; the SIZE option refers to the last two items.
For the SIZE option, the minimum required virtual storage is 4KB plus the size of the loaded program. This minimum requirement grows to accommodate the extra table entries needed by the program being loaded. For example, Fortran requires at least 3KB plus 4KB plus the size of the loaded program, and PL/I needs at least 8KB plus 4KB plus the size of the loaded program. Buffer number (BUFNO) and block size (BLKSIZE) could also increase this minimum size. Table 1 shows the appropriate storage requirements in bytes.
The maximum virtual storage that can be used is whatever virtual storage is available.
All or part of the storage required is obtained from user storage.
Consideration | Approximate virtual storage requirements (in bytes) | Comments |
---|---|---|
Data Management | 6KB | BSAM |
Object Module Buffers and DECBs | BUFNO × (BLKSIZE + 24) | Concatenation of different BLKSIZE and BUFNO must be considered. (Minimum BUFNO=2) |
Load Module Buffer and DECBs | 304 | |
SYSTERM DCB Buffers and DECBs | 312 | Allocated if TERM option is specified |
SYSLOUT Buffers and DECBs | BUFNO × (BLKSIZE + 24) | Buffer size rounded up to integral number of double words. (Minimum BUFNO=2) |
Size of program being loaded | Program size | Program size is restricted only by available virtual storage |
Each external relocation dictionary entry | 8 | |
Each external symbol | 20 | |
Largest ESD number | 4n (n is the largest number of ESDs in any input module) | Allocated in increments of 32 entries |
Fixed Loader Table Size | 1260 | Subtract 88 if NOPRINT is specified |
Condensed Symbol Table | 12n (n is the total number of control sections and common areas in the loaded program) | Built only if you invoke the binder under TSO, and space is available. |
System Requirements | 4000 |