• Keine Ergebnisse gefunden

JOB MEMORY MANAGEMENT

Im Dokument COMPUTER SYSTEMS (Seite 56-59)

Data file

3.3 JOB MEMORY MANAGEMENT

Central Memory is one of the resources allocated to a job by COS. A job's memory is composed of several distinct areas. Some of these areas are managed exclusively by COS; others are managed by both you and COS.

Figure 3-1 shows a job in memory. The total job size equals the length of the job's JTA plus the user field length. The lined area between WJCHLM and WJCLFT is unused space within the job and contains enough memory to guarantee that the user area is always a multiple of 512 words.

3.3.1 INITIAL MEMORY ALLOCATION

When the job initiates, it is given sufficient memory for the Control Statement Processor (CSP) to execute. Once the JOB statement is processed, the job is allowed a user field length no larger than the amount specified by the MFL parameter on the JOB control statement (refer to section 7).

3.3.2 FIELD LENGTH REDUCTION

There are two modes of user field length reduction: automatic and user managed. A job initiates in automatic field length reduction mode, and the system automatically increases and decreases the job's field length as the areas within the job increase and decrease.

When a job is in user-managed field length reduction mode, the system continues to increase the job's field length as before, but never

automatically decreases it. The job's field length can be decreased only by the user until the job is returned to automatic field length reduction mode.

Increases in field length can result in the job requ1r1ng more memory than can be immediately supplied, which causes the job to be delayed until sufficient memory can be given to it. Therefore, you may want to manage the job's field length when it is known that the job will undergo

frequent short-lived fluctuations in size. The field length can be

reduced at the beginning of each job step and during each job step if the job is in automatic field length reduction mode and any area of the job decreases.

3-4 SR-0011 0

n

/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

/////////////////// Job Table Area ///////////////////

/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

o ////////////////////////////////////////////////////////

128

WJCHLM

WJCLFT

WJCDSP

WJCBFB

W@JCFL

Job Communication Block

User Code/Data Blank Common

Heapt

/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

/////////////////////// Unused ///////////////////////

/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / / /

Logical File Tables

Dataset Parameter Area

I/O Buffers

Figure 3-1. User Area of Memory for a Job

t Although the heap follows blank common in the figure, it can optionally precede blank common.

SR-OOll 0

User Field

3-5

3.3.3 USER MANAGEMENT OF MEMORY

A user can dynamically manage the user code/data area of the job by requesting an increase or decrease of memory at the end of the user code/data area.

A user can manage the field length of the job by requesting a specific field length.

When the user manages the field length of the job, the job is placed in user-managed field length reduction mode for the duration of the job step (the next job step when using the MEMORY control statement described in section 7).

A user can place the job in user-managed field length reduction mode across job steps by explicitly requesting that mode. The job remains in user-managed field length reduction mode until the user explicitly

requests automatic field length reduction mode.

3.3.3.1 Management by control statement from the run stream

A user can use the MEMORY control statement to manage the job's field length. When the user manages the job's field length, the job will be placed in user-managed field length reduction mode for the duration of the next job step. The MEMORY control statement may also place the job in user-managed field length reduction mode across job steps or return the job to automatic mode.

3.3.3.2 Management from within a program

From within a program, the MEMORY macro or MEMORY routine requests user management of the job's user code/data area and field length. When the user manages the job's field length, the job is placed in user-managed field length reduction mode for the duration of the job step. The MEMORY macro or MEMORY routine may also place the job in user-managed field length reduction mode across job steps or return the job to automatic mode.

3.3.3.3 Management associated with a program

Use of the SEGLDR directives BCINC, PADINC, and NORED, and the LDR control statement parameters BC, PAD, and NORED causes certain types of memory management to be associated with the binary being loaded. (Refer to the Segment Loader (SEGLDR) Reference Manual, CRI publication SR-0066, for more information on SEGLDR and section 14 of this manual for more information on LDR.) This association is stored with the binary if the

3-6 SR-0011 0

,-

b~~~~¥ ~~ ~~vQd on a dataset. The management associated can be user code/data area management or field length management and occurs when the binary is loaded for execution. If the field length is being managed, the job is placed in user-managed field length reduction mode for the duration of program execution.

3.3.4 SYSTEM MANAGEMENT OF MEMORY

The system changes appropriate areas of the job's memory when a job

initiates certain system actions (that is, advances to the next job step, does I/O, and so on). The JTA, Logical File Tables (LFTs), and Dataset Parameter Area (DSP) pictured in figure 3-1 can increase but will never decrease. The user code/data and buffer areas may both increase and decrease in size. If the job is in automatic field length reduction mode, the system automatically increases and decreases the job's field length when any area in the job increases or decreases. If the job is in user-managed field length reduction mode, the system continues to

increase the field length when i t needs to, but never automatically decreases the field length.

Im Dokument COMPUTER SYSTEMS (Seite 56-59)