• Keine Ergebnisse gefunden

IBM System/3 Overlay Linkage Editor Reference Manual

N/A
N/A
Protected

Academic year: 2022

Aktie "IBM System/3 Overlay Linkage Editor Reference Manual"

Copied!
60
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

a ga o a ao a o a a aa a a ao

a a a a a a a a

a a a a a a a a

a a a a a a o a a o a o a a a a a a a a a a a a a a a o a a a o a a a o a a a a a a a e t a e a a o a a c a a a o a a a a a o a a a o a a c a o

a a a a a c o a

a a a a c c a a

a aa a

. Oa a a oa a O O a a a a a aa a a

IBM System/3

Overlay Linkage Editor Reference Manual

Program Numbers:

5702-SC1 (Models 8 and 10) s703-SC1 (Model 6)

5704-SC1 (Model 15) 5704-SC2 (Model 15) 5705-SC1 (Model 121

a a a a a a a a

a a a a a a a a

a a a a a a o a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a a o a a a a a a a o a a a a a a o a a a a o a a o a o a a a a a a a a

a a a a a a a a a a a a

o a a a a a a a a a a a

a o a o a a o a a a a a a a a a

a a a a a a a a a a a a

a a a a a a a a a a a a

a a a a a a a a a a a a

G C 2 1 - 7 5 6 1 - 5 File No. 53-31

a a a o a o a o a a a a a a a a a a a a a a a a a a a a a o a a a o o o a a a a a a a a a o a a a a a a a o a a a o a a a a a a a o a a a a a a a o a a a a o a a a a a a a a a a a a o a a a a a o o a a a a o a a a a a a a a a a a a a a o a a a a a a a a a a a o a o a a a o a a

a a a a a a a a a a a a a a a a a a a o o o a a a a a

o a o a a a a a a

a a a a a c a a o a a o a a o a a a a a o a a a a a a a a a a a a a o a a a a a a a a a a a a a a e a a a a o a a a a a a a a o a o a o a c a a

a a a a a a a a a o a a

o 9 a a a a a c o o o a

a o a a a a a a a o a a

a a a a o a a a S a c a a a o o a a a o a a a o a a a c a a a a a a a a a a a a a a a a a o c a a a a

a a a a a a a a a a o a a o a a o a

(2)

Preface

The Overlay l-urkage Editor is a part of the IBM System/3 Model l5 System Control Program (Program Number 5704-SCl), and is a separately orderable feature of the IBM System/3 Model 10 Disk System (Feature 602616027), IBM System/ilModel l2 (Feature 60261602j).and the IBM System/3 Model 6 (Feature 601 I /6012). This manual pro- vides reference inforrnation for programmers using the Overlay Linkage Editor capabilities of System/3. This man- ual is intenderl for experienced progranmers who plur to linkcdit their own object modules rather than have the ianguage tranr;lators (assemblers and contpilers) do the link+diting.

Note: In this publication there are some references to support of 64K bytes of main storage. A Systeml3 Model

10 with a 64K processing unit is available only as an RPQ.

Your IBM Marketing Representative can provide informa- tion about this.

Sixth Edition (September 1978)

T h i s i s a r n a j o r r e v i s i o n of. and obsoletes GCl2l-75614 and technical newsletters c N 2 1 - 5 4 0 6 a n d ( ] N 2 1 - 5 5 8 5 . changcs or aclciitions t o t h e t c x t a n d i l l u s t r a t i o n s are i n d i c a t e d b y a v e r r t i c a l l i n e t o t h o l e f t o 1 ' t h c changc or addition.

This edition appnies to thc System/3 progran.l versions listcd belrw and to all subsequenr vcrslons and moclifications until othcrwise indicated in ncw editions or technical news- l e 1 t e r s .

System/3 ModelS

The System/3 Model8 is supported by Systemi3 Model l0 Dsk System control programrning and program products.

The facilitics described in this publication for the Mc,del 10 are also applicable to the Model 8, although the Model 8 is not referenced. It shoulC be noted that not all devicr:s and features which are available on the Model 10 are available on the Model 8. Therefore, Model 8 users should be familiar

with the contents of IBM Systemf 3 Model 8 Introdu,ction, G C 2 1 - 5 1 1 4 .

Version Modifications

l s 0

1 5 0

6 0

3 0

4 0

Program Number Feature Number Model

5 702-SC I 5 7 0 3 - S C l 5704-SC1

s704-sc2

5 7 0 5 - S C 1

6 0 2 6 , 6 0 2 7 8 , 1 0 6 0 1 0 , 6 0 1 1 4 , 6

6 0 3 3 , 6 0 7 0 , 6 0 7 1 1 s A . 1 s B , 1 s C 6 0 1 r , 6 0 1 2 i s D

6 0 7 0 , 6 0 7 1 t 2

changes are periodically made to the specifications herein; before using this publication in connection with the operation of IBM systems, refer to the latest IBM system13 Bibliography, GC20-8080, for the editions that are applicable and current.

Use this publication only for the purposes stated in the heface.

Publications are not stocked at the address below. Requestes for copies of IBM publi- cations and for technical information about the system should be made to your IBM representative or to the branch office serving your locality.

This publication could contain technical inaccuracies or typographical errors. Address your comments about this publication to IBM Corporation, pub[cations, Department 2 4 5 , R o c h e s t e r , Minnesota 5590l.IBM may use and distribute any of the information j'ou supply in any way it believes appropriate without incurring any obligation whatever You may, of course, continue to use the information you supply.

O C o p y r i g h t I n t e r n a t i o n a l Business Machines Corporation 19'11,19':.2, 1g73,1974, 1 9 7 4 . 1 9 7 5 . 1 9 ' t 8

(3)

INTRODUCTION System Configuration

himary Storage Requirements

Secondary Storage Requirements

Error Halts

Changes in Load Module Size

USING THE OVERLAY LINKAGE EDITOR Cornpiler Entry

User Enty

OCL Staternents Control Statements Parameter Summary Storage Map

O V E R L A Y S . Overlay Areas R o o t A r e a User Overlay Area System Overlay Area Co-resident Area Assigning Overlays

Control Statements and Object Modules . Determining Which Modules Can Be Overlaid Link-Edit Start Addresses

L o a d M o d u l e E n t r y P o i n t Overlay Area Size

lncluding Overlay Areas in the Root Using the Group Statement

M e m o r y R e s i d e n t O v e r l a y s (M o d e l 15 Only)

Supewisor Support for Memory Resident Overlays . . Using Memory Resident Overlay with Communicatrons

Control hogramming .

Memory Resident Overlay Propgam Execution -

E.recution of the MOVE Technique Execution of the REMAP Technique . E)Q\MPLES .

Examples I through 5 E x a m p l e s 6 a n d 7

Example 6 (frigure 12) Lxample 7

E x a m p l e s 8 t h r o u g h 1 1 E x a m p l e 8 Example 9 E x a m p l e l 0 E x a m p l e 1 1 E x a m p l e s 1 2 a n d 1 3

E x a m p l e 1 2 L x a m p l e l 3

Contents

APPENDIX A. MESSAGES APPENDX B. OBJECT MODULES

Header Record

External Symbol List (ESL) Records . Text-Relocation Directory (RLD) Records End Record

APPENDIX C. PERFORMANCE IMPROVEMENTS GLOSSARY ,

I

3

J

3

J

3

4

o

t 2 1 3 l 3 l 3 l 3 1 4 T 4 l 4 1 5 l 6 1 6 l 8 i 8 l 8 1 8 1 9 1 9 l 9 2 0

f l

2 2

38 13 13 1 3 11 45 17 19

I N D E X . ' s t

L ) L J

2 7 2 7 2 9 3 0 3 l 32

J J

3 5 3 5 36

(4)
(5)

Unkage editor processing is necessary following the assem_

bly or compilation of any program. The output of a lan- guage translator (assembler or compiler.y is called an object module (see Figure 1). An object module cannot be run as a program until it is link-edited into a load module. Ob_

ject modules and load modules can reside on cards or in the object library on disk (see Figure 2).

Introduction

Load M o d u l e Source

Program Obiect

M o d u l e

Figure 1. Preparing a Source Program for Execution

Introduction

(6)

_ {bject Library_D,.Eclgry- _ P e r m a n e n t E n t r i e s

' O L i b r a r V E n t r i e s . B L i b r a r y E n t r i e s

T e m p o r a r y E n t r i e s - O Library Entries - R L i b r a r y E n t r i e s

T h e O l i b r a r y e n t r i e s a r e l o a d modules. They are loaoed b y t h e L O A D O C L s t a t e m e n t .

T h e R l i b r a r y e n t r i e s a r e o b j e c t m o d u l e s that must be l i n k - e d i t e d in t o a l o a d m o d u l e before theV can be loadeo.

F i g u r e 2 . F o r m a t o f O b j e c t L i b r a r y

The Overlay Unkage Editor provides a cornpiler entry and The user entry allows the user to link-edit IBM Systern/3 a user entry. The compiler entry provides the following Basic Assembler object modules and object modules built

functions: by other language translators into load modules. Tire user

can influence the determination of overlays himself or he . Punches into cards and/or catalogs into the object library can allow the Overlay Linkage Editor to determine the

on a disk the output object module of a language trans- overlay structure. The load modules can be punched in.to lator such as IBM Systenr/-3 FORTRAN, COBOL, Basic cards and/or cataloged into an object library on disk.

A s s e m b l e r . a n d M o d e l 1 5 R P G ll .

o Link-edits the output of language translators such as I B M S y s t e m i 3 F O R T R A N , C O B O L a n d M o d e l l5 RPG II into a load module and punches the load lnodule into cards andi or catalogs it into an object library on disk. The assigning of modules to overlay segments is determined automatically by the Overlay Linkage Editor.

(7)

S Y S T E M C O N F I G U R A T I O N

For information concerning the minimum system config- uration for Overlay Linkage Editor and additional devices supported. see one of the following publications. as appro- priate for your System/3 model:

. IRM S.r,stemf 3 Models 4, 6,8. 10, ontl l2 System Generation Relbrence Manual, GC2 l-5126

o IBM Svsteml3 Model I5 System Generation ReJbrenc.e Irfanual. GC2I-7616

IBM S,t,steml3 Model 4 Introduction, GC2l-5146 IBM Systemf 3 Model6 Inftoductktn, GA2l-9122 IBM Systeml3 Model 8 Introductittr, GC2 l-5114 IBM Systemf 3 Model I2 Introcluctioir, GC2 l-5 l l6 IBM S.vstemf 3 Model I5 Introduction, GC2l-5094

P R I M A R Y S T O R A G E R E O U I R E M E N T S

The prirnary storage requirements for the execution of the Overlay Linkage Editor are as lollows:

Systeml3 Model Models 4 and 6 M o d e l s 8 a n d l 0 M o d e l l 2 M o d e l 1 5

Main Storage 1 K 1 K 8 K l 0 K

S E C O N D A R Y S T O R A G E R E O U I R E M E N T S

The Overlay Linkage Editor requires l0 tracks in the object l i b r a r y . F o r e x e c u t i o n . w o r k s p a c e m u s t b e a v a i l a b l e a s follows:

5444 5445

3340 5444

S i m u l a t i o n A r e a M a i n D a t a A r e a M o d e l s 4

a n d 6 X

M o d e l s 8

a n d 1 O X

M o d e l 1 2 X

M o d e l 1 5 X X X X

This space can be specified by the user or allocated by the Overlay I inkage Editur (see index entry: OCL statements).

E R R O R H A L T S

Halts are issued with system halt messages on SYSLOG for e r r o r c o n d i t i o n s . l f t h e lo g is o f f , a s e c o n d l e v e l h a l t is r s s u e d t o l ' u l l y d e f i n e th e e r r o r c o n d i t i o n ( M o d e l s 6 , l 0 D i s k S y s t e r n . a n d ll ) .

C H A N G E S I N L O A D M O D U L E S I Z E

Changes made to the Ove rlay Linkage Lditor l'rom release t o r e l e a s e m a y c a u s c c h a n g e i n t h e s i z e o f t h e o u t p u t lo a d m o d u l e r . F o r e x a n r p l e , a p r o g r a n l t h a t l r t s in 4 K o n o n e re - l e a s e m a y n o t f l t i n 4 K o n t h e n e x t r e l e a s e .

l n t r o d u c t i o n 3

(8)

U s i n g t h e O v e r l a y L i n k a g e E d i t o r

This section describes rthe compiler and user entries to the Overlay Linkage Editor and the storage map printed by thc Overlay Unkage Editor to infornr the user of the srrucrure oi-lris progrant. '[he

input object ntodules usecl by both cntries o1' the Overlay .Linkage Editor are described in Appendix B.

C O M P I L E R E N T R Y

The cortrpiler e ntrv to the Overlay Linkagc Editor is usecl by language translators to punch and/or catalog their out- put objcct niodules (otrject modules arc described in Ap- p e n d i x l 3 ) . L a n g r r a g e t r a n s l a r o r s , s u c h a s tB M S v s t e r l / - l F O R T R A N . C I O B O L . a n d R P G Il ( M o d e l t 5 o n l y ) , c a n a l s o s p c c i f y l i n k - e d i t i n g . T l i e O v e r l a y L i n k a g e E d i t o r t h e n li n k - e d i t s t l r e o i r j e c t r n o d u l e i n r o a l o a d m o d u l e a n d p u n c h e s a n d / o r c a t a l o g s t h e lo a d rl o d u l e .

When thc user crlrnpiles an object module and inrmecliately l i n k - e d i l s it i n t o a l o a d rn o d u l e v i a th e c o m p i l e r e n t r y . h e t : l n i n f l u e n c e t l i c d c t e r r n i n a t i o n o f o v e r l a y s o n l i r b y s p e c i - 1 , v i n g t h c c a t e g o r y o f t l h t o b j e c t n t o d u l e s c l n th c c o r n p i l e r i n p u t . F o r t h e O v e r l a y L i n k a g c l r c l i l r r r n r e t h o d o f ' d e t c r - nrining overlay structure, see indcx cntry: deterntining oYerlq) nndulas.

U S E R E N T R Y

'fo usc tlte Overlay Linkage Editor, the user ntust supply:

. Operation Contnrl l_;inguage (OCL) statemcnts o O v e r l a y L i n k a g c ' E d i t o r C o n t r o l s t a t e m e n t s . M o d u l c s to b e l i n k c ' d (d c s c r i b e d i n A p p e n d i r B )

OCL Statements

Thc fbllorvirig OCL starernents are examples of loading thc Overlay Linkage Editor via thc user cntry:

T h e ( ) v e r i a y l- i n k a g c E d i t o r r e q u i r e s f r o n t 1 0 t o 3 0 t r a c k s o f d i s k s p a c e . F I L E s t a t c r n c n t s s h o u l d b e s u p p l i c d fo r l a r g c p r o g r a m s ( 2 5 K o r r n o r e ) , o r i 1 ' t h c p a r t i t i o n s i z e th a t t h e O v e r l a v l - i n k a g c E d i t o r i s c u r r e n t l y i n . i s 2 5 K o r m o r e . l l t h c t w o l j l [ - E s t a t c r n e n t s a r e s u p p l i e d , t h e y r n u s t b b t h e s a r i l e a s t h e s t a n d a r d F I L E s t a t e n t c n t s u s e d b y t h e c o r n p i l e r s . T h c O v e r i a y L i n k a g e lr d i t o r w i l l t l n d d i s k s p a c e if F I L [ r s t a t c n r e n t s a r e ll o l s u p p l i c c l . S l t a c c w i l l b c a s s i g n e d o n F l i f t h c r c i s a m i n i n r u r r r o 1 ' l0 t r a c k s a v a i l a b l e ( e v e n t h o u g h l 0 t r a c k s m a y n o t b e s u f t l c i e n t lb r a l a r g e p r o g r a m ) . l 1 ' t h e r n i n i m u r n s p a c e i s n o t a v a i l a b l e o n F l , s p a c e w i l l b e a s s i g n c d o n R l .

Y o u r n a y s a v e ti m e i f y o u s u p p l y F I L E s t a t e r n e n t s t o p l a c e

the fiies optimally(see Appendix C., Perlbrmance Improve-

n r e n t s \ ' . l b r th e M o d e l 1 5 , f i l e s s h o u l d b e p l a c e d o n a 5 4 4 5 d i s k d r i v e ( o r 3 3 4 0 r n a i n d a t a a r e a ) fo r b e s t p e r f o r - m a n c e . F I L E s t a t e n t e n t s c a n a l s o b e s u o p l i e d to e n s u r e that the Overlay Linkage E,ditor has adequate work space t o c o m p l e t e t h e l i n k - e d i t .

T l r e O C L s t a t e n r e n l s c a n b e e n t e r e c l I ' r o n t th e s y s t e m in p u t device r.rr called front the procedure librarv.

M o d e l 1 0 D i s k S y s t e m , M o d e l ' ! 2 ,

a n d M o d e l 1 5 / / L O A D $ O L l N K , u n i t ( u n i t c a n

I I F I L E N A M E $ S O U R C E

! I F I L E N A M E _ $ W O R K , i / R U N

M o d e l 6

O 1 O L O A D N A M E _

0 1 1 u N l r

O 2 O F I L E N A M E _

O 3 O F I L E N A M E _

M O D I F Y R U N

b e R 1 , F l , R 2 , o r F 2 ) . 1 ( I h e s e lw o F I L E s t i l t e -

t m e n t s a r e o p t i o n a l a n d , a r e s t a n d a r d F l L E s 1 : a t e ' , f - " n t , u s e d b y t h e

c o m p i l e r s . )

$ O L I N K ( R 1 ,F 1 ,R 2 , o r F 2 )

$ S O U R C E \

I

| { T h e s e t w o F l l _ E

\ s t a t e m e n t s a r e

$ W O R K { o p t i o n a t a n d a r e I s t a n d a r d F l L t I

t s t a t e m e n t s u s e , l b V ' t h e c o m p i l e r s . )

(9)

Control Statements

Overlay Linkage Editor control statemelts can be entered from the systcm input dcvice or from the procedure library.

The types of control starements arc:

1 . P H A S E s t a t e m e n t ( o p t i o n a l ) . 2. OPTIONS statement (optional).

3. iNCLUDE statements and/or object modules in card form (required). The first object module encountered (either in card form or indicated on an INCLUDE card) will be the mainline routine.

4. GROUP statemenr (optional).

5 . C A T E G O R Y s t a t e m e n t ( o p t i o n a l ) . 6. EQUATE statemenr (optional).

1 . E N D s t a t e m e n t ( r e c l u i r e d ) .

Control Statament Su mmary

Use Control Statements

D e f i n e Load M o d u l e * D e f i n e E n v i r o n m e n t

Def ine Ob.jecr M o d u l e s G r o u p O b j e c t M o d u l e s Together an Storage C h a n g e Category o f O b j e c t M o d u l e E q u a t e M o d u l e N a m e s E n d o f C o n t r o l S t a t e m e n t s

/ / p H A S E N A M E - n a m e . U N r r - c o d e . p U N C H { : l t } , R E r A r N -

l N o {' -

{ * f , . , r * o o o J * . * , " " r r , t , * , - o - { I E l }

i , | , ' " " ' . ^ " "

i ; , ; " " , " " i * o /

/ / O P T I O N S U P A C K - c o d e , C O R E - a n n K , L E V E L - n n n , E N T R y _ t a b e t ,

A r r R - x x x , M A t (::l i

< r ! u

t il,3:'J

i / I N C L U D E N A M E - n a m e ( o r ' n a m e , n a m e , . . . n a m e , ) , U N l T - c o d e

/ / G R O U P N A M E - n a m e ( o r ' n a m e , n a m e , . . . n a m e ' ) , A R E A - U S E R

/ / C A T E G O R Y N A M E - n a m e ( o r ' n a m e , n a m e , . . . n a m e ' ) , V A L U E - n n n

/ / E O U A T E O L D N A M E - n a m e ( o r ' n a m e , n a m e , . . . n a m e ' ) , N E W N A M E - n a m e ( o r , n a m e , n a m e , . . . n a m e , l

/ / E N D

. R L D -

{ l 5 t } " o o , ' " ,

o n r y r o M o d e r 1 5

Using the Overlay Linkage Editor 5

(10)

Parameter Summary

The lbllowing is u discussion of thc paranreters lirr each of t h e c o n t r o l s t a t e n l e n t s . W r e n th e r e ' i s a c l e f a u l t v a l u e f u r a p a r a m e t e r . t h e d e f a u l t v a l u e i s u n d e r l i n c d .

PHASE Statement

T h e P H A S E s t a t c r n e n t s p e c i t i e s t h e n a r n e a n d d e s t i n a t i o n o f t h c ' l o a d m o d u l e . 1 1 ' t l i e P H A S L , s t a t e r n e n t i s o n r i t t e d . t l i e lo a d m o c l u l e i s a s s i g n e d t h e s a n t c n a n l e a s th e n r a i n l i n e routine (see indcx cntr,"-: IIVCZ UDI') statr:tttt'll/ and is c a t a i o g e d a s a t e n l p o r a r . y e n t r y in t l i e o h j c c t li b r a r y t ; 1 ' t l i e p r o g r a n r p a c k .

N A M E - n a m e T h e n a m e t h a t t l r c l o a d m o d u l e h a s r n t h e r : b i e c t l i b r a r y d i r e c t o r y . l f t h e N A M E p a r a m e t e r i s n o t s u p p l i e d , t h e l o a d m o d u l e a s s u m e s th e N A M E o f t h e m a i n l i n e r o u t i n e . T h e n a n r e c a n b e f r o m o n e t o s i x c h a r a c t e r s i o n q a n d c a n c o n t a i n a n V / i P H A S E N A I \ i l E - n a m e , U N l T c o d e , P U N C H

) u ' ( , R E r A ' ! N t ' I

1 F ; f n l

' , L I N K A D D

{ s I

( s*x'u"uu') ( x ' " u " u ' )

; v r s I

i * ; i

c o m b i n a t i o n o f S V s t e m / 3 c h a r a c t e r s e x c e p t b l a ' r k s , c o m m a s , q u o t e s , o r p e r l o d s . T h e f i r s t c h a r a c t e r m u s t b e a l p h a b e t i c .

U N I T - c o d e D r s k w h e r e th e l o a d m o d u l e is p l a c e d . P o s s i b l e c o d e s a r e R 1 , F 1 , R 2 , a n d F 2 l f n e i t h e r th e U N I T o a r a m e t e r n o r t h e P U N C H p a r a m e t e r i s s p e c i f i e d , t h e l o a d m o d u l e is p u t o n t h e p r o g r a m p a c k .

P U N C H -

1 " " I

t N o ,

S p e c i f i e s w h e t h e r t o p u n c h t h e l o a d m o d u l e . l f n o t s u p p l i e d , t h e d e f a u l t i s N O . T h e l o a d m o d u l e c a n b e b o t h p u n c h e d i n t o c a r d s a n d p u t i n t h e o b j e c t l i [ r a r y b y s p e c i f y i n g b o t h U N I T a n d P U N C H p a r a m e t e r s .

{ r )

R E T A T N - i P

i S p e c i f i e s w h e t h e r t h e l o a d m o d u l e r s t o b e c a t a l o g e d a s a t e m p o r a r y o r p e r m a n e n t e n t r y i n t h e o b j e c t l i b r a r y d i r e c t o r v . R E T A I N R m e a n s r e p l a c e a n e x i s t a n g e n t r y w i t h t h e s a m e n a m e . T h e R E T A I N t y p e o f t h e n e w m o d u l e i s P . l f n o e n t r y e x i s t s w i t h t h e s a m e n a m e , t h e n e w e n t r V i s a d d e d w i t h a p e r m a n e n t d e s i g n a t i o n { P ) . l f R E T A I N i s n o t s p e c i t r e d , T r s t h e d e f a u l t . l f R E T A I N P o r R i s s p e c i f i e d , a l l p r e v i o u s t e m p o r a r V m o d u l e s a r e d e l e t e d f r o m t h e l i b r a r y . l f t h i s p a r a m e t e r i s s p e c i f i e d w i t h P U N C H Y E S , t h e r e t a i n c o d e r s s p e c i f i e d o n t h e C O P Y c a r d t h a t i s p u n c h e c i w r t h t h e m o d u l e .

L I N K A D D - - < S + X ' a a a a 'l_:_

| . . .. A a a a a

S p e c i f i e s t h e i i n k - e d i t s t a r t a d d r e s s , w h i c h i s t h e a d d r e s s a s s i g n e d to t h e f i r s t b y t e o f t h e l i n k e d i t e d l o a d m o d u l e . O n t h e M o d e l 1 5 , i f S i s s p e c i f i e d , t h e s t a r t a d d r e s s i s X ' 4 O O 0 ' , A n a b s o l u t e a d d r e s s c a n b e s p e c i f i e i b y c o d i n g X ' a a a a ' , w h e r e a a a a i s a n a b s o l u t e a d d r e s s . S + X ' a a a a ' i s c o d e d t o s p e c i f y t h e e n d o f t h e s u p e r v i s o r p l u s a n a b s o l u t e a d d r e s s . l f t h i s p a r a m e t e r i s n o t c o d e d , S i s a s s u m e d . l f t h e s t a r t a d d r e s s p l u s t h e n u m b e r o f b y t e s i n t h e p r o g r a m e x c e e d s X ' F F F F ' , t h e p r o g r a m i s l i n k - e d i t e d t o s t a r t a t X ' O 0 O 0 ' . ( T h e S y s t e m C o n t r o l P r o g r a m I P r o g r a m N u m b e r 5 7 0 4 - S C 2 ] i s l i n k - e d i t e d t o t h e I a r g e s t p o s s i b l e m u l t i p l e o f 2 K . ) T h i s p a r a m e t e r d o e s n o t a t f e c t t h e l o a d i n g o f t h e l o a d m o d u l e ( s e e i n d e x e n t r v : l i n k - e d i t start addresses\.

R L D - { p }

S p e c i f i e s w h e t h e r a p r o g r a m w i l l b e p r o d u c e d w i t h T e x t ' R e l o c a t i o n D i r e c t o r y r e c o r d s ( R L D s ) . l f t h i s p a r a m e t e r i s n o t s u p p l i e d , Y E S i s t h e d e f a u l t . T h i s p a r a m e t e r a p p l i e s o n l v t o t h e M o d e l 1 5 .

(11)

OPTI ONS Statement

The OPTIONS statement describes the load module and specifies the location of user object rnodules and the type of linkage editor output. If the entire OPTIONS staterrrent or any of the pararneters are ornitted. the defaults given are used.

/ i O P T I O N S U P A C K - c o d e , C O R E - a n n K , L E V E L - n n n , E N T R y - t a b e t , A T T R - x x x , M A p -

Y E S

N O

I

f

X R E F U P A C K - c o d e D i s k w h e r e u s e r m o d u l e s to be link-edited can be found. lf UpACK is not

s p e c i f i e d , th e l i n k a g e e d i t o r l o o k s for the user modules on the pack that the O v e r l a y L i n k a g e E d i t o r i s on. This keyword is used when the Overlay Linkage E d i t o r b e r f o r m s A U T O L T N K .

C O R E - a n n K S t o r a g e s i z e t h e l o a d m o d u l e h a s a v a i l a b l e f o r e x e c u t i o n , l f s p e c i f i e d , t h e d r r e c t o r y e n t r y c o n t a i n s t h i s s i z e e v e n th o u g h th e a c t u a i s i z e re q u i r e d b y t h e l o a d m o d u l e is l e s s . lf n o t s p e c i f i e d , t h e c u r r e n t p a r t i t i o n s i z e is u s e d t o d e t e r n r n e w h e n o v e r l a y s are required and the directory entry contains t h e a c t u a l l o a d m o d u l e size. This pararneter i s n e e d e d o n l y i f t h e p a r t i t i o n s r z e a t e x e c u t i o n w i l l b e d i f f e r e n t fr o m w h a t i t i s a t l i n k - e d a t t i m e . a = i n c r e m e n t s o f 1 / 4 K

A - 1 1 4 o r 2 5 6 b y t e s H - 1 1 2 o r 5 1 2 b y t e s f - 3 1 4 o r 7 6 8 b y t e s 0 . , z e r o b v t e s n n - 1 K i n c r e m e n t s

E x a m p f e : Q O 4 K - 1 l 4 K + 4 K = 2 5 6 + 4 0 9 6 = 4 3 5 2 b v r e s

L E V E L n n n N u m b e r th a t i s p l a c e d in t h e l e v e l e n t r y i n t h e o b j e c t d i r e c t o r y e n t r y . D i f f e r - e n t m o d i f i c a t i o n l e v e l s o f l o a d m o d u l e s c a n be assigned d i f f e r e n t l e v e l v a l u e s . T h e m a x i m u m v a l u e f o r n n n i s 2 5 5 . D e f a u l t v a l u e i s 0 O 1 . e x c e p t f o r l o a d m o d u l e s g e n e r a t e d b V t h e f o l l o w i n g f M o d e l 1 5 D c o m p i l e r s :

5 7 0 4 - R G 2 , R P G i l - 2 5 3 r

5 7 0 4 - C B 2 , C O B O L 2 5 4 1

5 7 0 4 - F 0 2 , F O R T R A N . . 2 5 5 1

E N T R Y - l a b e l A n e n t r y p o i n t o r m o d u l e N A M E o f a n i n c l u d e d m o d u l e . D e f a u l t a s t h e e n t r v p o i n t o f t h e m a i n l i n e ro u t i n e .

I If a conrpilcr rctlue stcri Rtodule is link-cditcd usins the leve I p a r a { n r t e r o f another corrrpilcr. c r r o l l c ( ) u s t i n l r ' / d a t c in l i r r n t a t i o n r v i l l b c p r i n t c d i n t h c nrodulc dircctorl' listing.

I t a l c v c l v a l u e o 1 0 0 0 t h r o u g h 252 is used. thc tinre/datc inf'or- n t a t i o n w i l l n o t b c p r i n t c d i n thc rnodulc diri:ctor1, l i s t i n r .

L l s i n g th e O v e r l a y L i n k a g e E d i t o r

(12)

A T T R - x x x o r ' x x x , x x x , , . . x x x '

A t t r i b u t e s o f t h e m o d u l e b e i n g l i n k - e d i t e d . assr gnect.

x x x = I N O

l f A T T R i s n o t s o e c i f i e d , n o a t t r i b u t e s a r e - Inquiry. This program can be run in either program level and dedicates the use

o f t h e I n q u i r y k e y ( P A 1 k e y o n M o d e l i 5 ) t o i t s p r o g r a m l e v e l ( n o r m a l l y u s e d t o s t a r t p r o c e s s i n g ) .

I E V * l n q u i r y E v o k i n g . T h i s p r o g r a m c a n r u n o n a d e d i c a t e d s y s t e m o r i n l e v e l 1 o f a D P F s y s t e m . I n a D P F s y s t e m t h e I n q u i r y k e y ( o r t h e R O L L O U T c o m m a n d i n t h e S y s t e m C o n t r o l P r o g r a m IProgram Number 5704-SCl l ] is dedicated to t h e I E V p r o g r a m in l e v e r ' ! . T h e I n q u i r y k e y i s n o r m a l l y u s e d to c a u s e th e I E V p r o g r a m to be rolled out to allowanother program to run. Using the System C o n t r o l P r o g r a m {Program Number 5704-SC1 ) , t h e I E V p r o g r a m c a n r u n i n e i t h e r p a r t i t i o n , b u t c a n b e r o l l e d o u t o n l y w h e n r u n n i n g in p a r t i t i o n 1 . T h i s i s n o t s u p p o r t e d b y t h e S y s t e m C o n t r o l P r o g r a m ( P r o g r a m N u m b e r 5704-SC2).

D E D - D e d i c a t e d . I n a D P F s y s t e m , th i s p r o g r a m m u s t r u n w i t h t h e o t h e r p r o g r a m l e v e l in a c t i v e . T h i s i s n o t s u p p o r t e d b y t h e S y s t e m Control Program (Program N u m b e r 5 7 o 4 - S C 2 ) .

S R Q - S o u r c e R e q u i r e d . T h i s p r o g r a m r e q u i r e s th e a l l o c a t i o n o f t h e $WORK and

$ S O U R C E f i l e s . $ S O U R C E m u s t b e f i l l e d e i t h e r f r o m t h e s y s t e m i n p u t d e v i c e o r a s o u r c e li b r a r y . A n y p r o g r a m w i t h t h e S R O a t t r i b u t e w i l l b e l o a d e d , a n d r e l o c a t e d , t o t h e n o r m a l l o a d p o i n t p l u s 1 O b y t e s .

D F M - D e f e r r e d M o u n t . T h i s p r o g r a m a c c e p t s m o u n t i n g o f p a c k s d u r i n g i t s e x e c u t i o n . S I D - S Y S I N D e d i c a t i o n . T h e s y s t e m i n p u t d e v i c e m u s t b e d e d i c a t e d to t h i s p r o g r a m .

T h e d e v i c e is r e l e a s e d a t e n d o f j o b . C P R - C h e c k p o i n t R e s t a r t P r o g r a m .

D S R - D i r e c t S o u r c e R e a d . T h i s p r o g r a m c a n h a v e a // COMPILE statement and a n o - s o u r c e - r e q u i r e d a t t r i b u t e . S Y S I N d e d i c a t i o n c a n a l s o b e r e l e a s e d b y p r o g r a m a n d n o t h a v e th e s o u r c e - r e q u i r e d a t t r i b u t e . T h e p r o g r a m a c c e s s e s t h e s o u r c e l i b r a r v it s e l f "

M R O - M e m o r y R e s i d e n t O v e r l a y R E M A P P r o g r a m ( M o d e l 1 5 ) . W h e n s p e c i f i e d , th e p r o g r a m e x e c u t e s the segments i n t h e r e s i d e n t a r e a it s e l f .

M O V - M e m o r y R e s i d e n t O v e r l a y M O V E P r o g r a m ( M o d e l 1 5 ) . W h e n s p e c i f i e d , th e p r o g r a m r e t a i n s the segment in the resident area but executes the segment in t h e c o n v e n t i o n a l o v e r l a v f e t c h a r e a .

Notes:

1 . C P R a n d I E V a r e m u t u a l l v e x c l u s i v e o n a l l m o d e l s .

2 . I N O a n d I E V a r e m u t u a l l y e x c l u s i v e o n M o d e l s 6 , 8 , 1 0 , a n d 1 2 . 3 . M R O , M O V , l E V , a n d C P R a r e m u t u a l l y e x c l u s i v e o n M o d e l 1 5 . 4 . A c h e c k p o i n t / r e s t a r t p r o g r a m c a n n o t h a v e e x t e r n a l b u f f e r s ( 5 7 O 4 - S C 2 ) . l f A T T R i s n o t s p e c i f i e d , n o a t t r i b u t e s a r e a s s i g n e d .

J F I

r il::''

T y p e o f p r i n t e r o u t p u t d u r i n g l i n k - e d i t :

Y E S = A s t o r a g e m a p a n d m e s s a g e s a r e p r i n t e d . l f M A P i s n o t s p e c i f i e d , Y E S i s a s s u m e d , N O = N o s t o r a g e m a p o r m e s s a g e s a r e p r i n t e d .

x R E F = A s t o r a g e rr n p , cross-reference l i s t , a n d m e s s a g e s a r e p r i n t e d . M S G = O n l y m e s s a g e s a r e p r i n t e d .

(13)

INCLUDE Statement - f h e

I N C L U D E s t a t e m e n r s p e c i f i c s w h i c h o b j e c t m o c l u l c s a r e t o b e i n c l u d e d in t h c ' lo a d m o d u l e . M u l t i p l e nroclulc natrres r n a y b e s u b n t i t t e d o n ( ) l t c IN C L L I D I : s t a t e n t e n t . The tirsr o b j e c t m o d u l e n a m c d o n a n l N ( ' L U D E s t a t e r r r e r r l o r r e a d f ' r o r n t h e S Y S I N d e v i c e is t h e r n a i n l i n c ro u t i n c . I f a rnoclule n a m e is n o t l o u n d o n t h e U N I T s p e c i f i e c l . a l r a l t l l w i l l r e s u l t . B y t a k i n g a z e ro o p t i o n , r l r c p r o g r a l l will do I llnd o n t h e n e x l n t o d u l e n a r n e in t h e s t a t c n l e n t . E i t l t e r an I N C L U D E s t a t e r n e n t o r a n o b . j e c t r n o d u l e in c a r c l t' o n r r n r u s t b e s r r p p l t e d a s in p u t t o t l r c O v e r l a y L i n k a g e L , c l i t o r .

/ / I N C L U D E N A M E - n a m e , U N t T _ c o d e N A M E - n a m e

o r N A M E - ' n a m e , n a m e , . n a m e

N a m e { s ) o f t h e o b j e c r m o d u t e l s ) r o b e i n c l u d t : d i n t f r i s p r o q r a m .

U N I T - c o d e D i s k u n i t w h e r e o b J e c t m o d u l e l s l o c a t e d . I t o m i t t e d , w i l l d e f a u l t t o t h e p r o g r a m p a c k

GROUP Statement - f h e

G R O U P s t a t e m e n t c a n b e u s e d to s p e c i f y a n u r n b c r o f ' o b j e c t r n o d u l e s t h a t t i ) e u s e r w i s h e s to g r o u p t o e c t h c r in s t o r a g e . T h c u s c r n t a v d e s i g l r I t js o w n u v c r l l y s l r u c t u r c . b a s e c l o n h i s k n o w l e d g c o 1 ' t h c o b j c c t r n o c l u l e s b c i n g I i n k - e d i t e d , t o o b t a i n m o r c c f f i c i e n t l o a d i n g o l ' o v c r l a y s c g n t c l t r s T h e s e m o d u l c s a r e p u t i n t o t h c s a n r e o v e r i a y s c g l l l e n t o r p a r t l y i n a n i t v c r l a v s e g m e n t a n d p a r l l r , , i l r l l r c r o o r s c q l l e l t r . T h e t l r s t m o d u l e n a n r e d i n a G R O U P s t a t e m e n t s h o u l d b e r e t - e r e n c e d b y a m o d u l e t h a r i s n o t i n t h e g r o u p ( s e c in d e x entry : grouping m)dules).

tsy specifying AREA USER, you can also use thc GItOLjp s t a t e m e n t t o a s s i g n c o - r e s i d e n t o v c r l a y m o d u l c s to t h e u s c r overlay arca (see indcx entrV: ()verla)) dr{rd), thsreby possi_

b l y r e d u c i n g m a i n s l o r a g e s r z e .

CATEGORY Statement

T h c C A T E ( I O R Y s t a t e r n e n r i s u s c d 1 o r c r n p o r a r i l y c h a n g c t h e c t t c g ( ) r y v a l u c ( p r i < t r i t y ) o f o b i e ' c t n r o t l u l c s . B e c a u s e t h c p r i o r i t y o 1 ' a n r. r b j c c t r r r o d u l c i n t l u e r r c c s t h e p l a c e r n e n t o f t h e t r t o d u l c in l o a r r o v e r l a y . th c u s c r c a n d e l e g a t c t h e m o d u l e t o a d i l l ' c r , : n t s e q l l t e n l b y c h a r r g i n g l h c c a t e g o r y v a l u e . T h c c a t c g o r y v a l u c o f t h c n r o d u l c is c l r a n g e d o n l y l o r t h i s li n k - e d i t .

C A U T I O N

A p r o g r a r r f ' a i l u r c r r r a y re s u l t lr o n t c h a n g t n g l h c p r i o r i t y o f a s y s t c n t m o d u l c ( S l i x x x x l l o d u l c ) r r r a c o n t p i l c l o b j c c t r n o d u l c . C o n r p i l c r o b j c c t n l o d u l c s a r e r n o d u l c s ( u s L r a l l y S x x x x x ) l h a t a r e in c l u d c d i n t h c l o a c l rn o d u l e b u i l t f r o n r t l t c c o r n p i l c r . - g e n c r a t c c l o b . i e - c t t e x t . l \ l o d u l c s f b r t l r e . B i n a r v S y n c h r o n o u s C o m r n u n i c a i i o n s A d a p t e r ( S S B S x x r l t o d u l e s ) n l u s l r e m a i n a t c a t e q o r V 0 a r r d c u n n o t b c o v e r l a i d .

M o d u l e s c o n t a i n i n g D T F s c a n b e o v e r l a i d o n l y i f t h e associated file is closed prior to returning to the caller.

T h c G R O U P s t a t e m c n t i s o p t i o n a l ; O v e r l a y L i n k a g e E d i t o r d e s i g n s t h c index entry: overlays).

i f i t ' s n o t s u p p l i c d , t h c o v e r l a y s t r u c t u r e (s e c

/ / G R O U P N A M E - - r r a m e , A R E A U S E R

I t t h e m o d u l e s n a m e d i n t h t s s t a t e m e n t a r e a s s r q n e d t o a n J v e r l a y , t h e y w r l l b e a s s r g n e d t o t h e u s e r o v e r l a y a r e a . l t a l i s t o f n a r n e s ( ' n a m e , n a m e . . . . ' ) i s u s e d w i t h A R E A - U S E R , t h e n a m e d m o d u l e s a r e g r o u p e d r f r t h e u s e r o v e r l a y a r e a . T o f o r c e m u i t r p l e m o d u l e s t o t h e u s e r a r e a w r t h o u t g r o u p i n g t h e m t o g e l h e r . s p e c i f y e a c h m o d u l e n a m e o n a s g p a r a t e G R O U p s t a t e m e n t .

T h e n a m e o f a m o d u l e t h a t s h o u l d b e a s s i g n e d t o t h e u s e r a r e a o r t h e n a m e s o f t h e o b J e c t m o d u l e 5 t h a t m u s t a l l b e r n s t o r a g e a t t h e s a n t e t i r n e .

A R E A . , U S E R

[ ] s i n g th e O v t r l a y [ . r n k a g c [ . d i t o r

(14)

/ i C A T E G O R Y N A M E - n a m e . V A L U E - n n n

N A M E - n a m e o r N A M E - ' n a m e , n a m e , . . n a m e '

N a m e ( s ) o f m o d u l e ( s ) f o r w h i c h t h e c a t e g o r y v a l u e ( p r i o r r t V ) i s t o b e c h a n g e d f o r t h i s l i n k e d i t .

V A L U E - n n n T h e n e w c a t e g o r y v a l u e :

A m o d u l e w i t h t h i s c a t e g o r y v a l u e c a n n o t b e o v e r l a i d - l t a l w a y s p l a c e d i n t h e r o o t s e g m e n t .

1 - l = T h e s e c a t e g o r y v a l u e s a r e g e n e r a l l y re s e r v e d f o r s y s t e m m o d u l e s . T h e s e m o d u l e s c a n b e o v e r l a i c l i f n e c e s s a r y t o s a t i s f y m a i n s t o r a g e s i z e . M o d u l e s w i t h t h e s e c a t e g o r y v a l u e s m a y o n l y c a l l m o d u l e s w r t h t h e s a m e c a t e g o r y v a l u e o r c a t e g o r y O m o d u l e s . I B M s y s t e m m o d u l e s h a v e th e f o l l o w i n g g e n e r a l c a t e g o r y v a l u e s :

2 D i s k l/ O 3 T a p e t / O 4 A r i t h m e t i c 6 - U n i t R e c o r d l / O

C a t e g o r y v a l u e s 1 , 5 , a n d 7 h a v e n o s p e c i a l m e a n i n g b u t a r e a v a i l a b l e f o r u s e .

8 - 1 2 4 = T h e s e c a t e g o r y v a l u e s a s s i g n o v e r l a y p | o r i t i e s . T h e l o w e r t h e n u m b e r t h e l e s s li k e l v t h a t t h e m o d u l e w i l l b e o v e r l a i d .

F o r t h e M o d e l 1 5 , i f A T T R - M R O o r A T T R - M O V h a s b e e n s p e c i f i e d , c a t e g o r y v a l u e 1 2 5 a l l o w s th e m o d u l e to b e o v e r l a i d b u r d o e s n o t a l l o w t h a t o v e r l a y s e g m e n t to b e a c a n d i d s t e fo r m e m o r y r e s i d e n c e . F o r t h e M o d e l 1 5 , t h r s c s t e g o r y v a l u e assigns a s p e c i a l o v e r l a y p r i o n t y . l n a n y o v e r l a y p r o g r a m , r o u t r n e s o f c a t e q o r y 1 2 6 w r l l b e q i v e n f r r s t c o n s i d e r a t i o n f o r r e - i n c l u s i o n i n t h e r o o t a r e a { n o n - o v e r l a y c o r e ) . G e n e r a l l y , c a t e q o r V 1 2 6 r o u t i n e s s h o u l d b e R P G m a i n l i n e r o u t i n e s .

1 2 7 = T h i s v a l u e w i l l b e t r e a t e d t h e s a m e a s a c a t e g o r y v a l u e o f 0 ( z e r o ) . l t w i l l b e d i s p l a y e d o n t h e c o r e m a p a s c a t e g o r y 0 , n o t c a t e g o r y 1 2 7 , e x c e p t w h e n i t i s a s s i g n e d b y a C A T E G O R Y s t a t e m e n t .

1 2 8 = T h i s v a l u e s p e c i f i e s th a t t h e m o d u l e m u s t b e a l i g n e d o n a 2 5 6 - b y t e b o u n d a r y . V a l u e 1 2 8 c a n b e u s e d w i t h a n y I o w e r c a t e g o r y v a l u e . T h i s i s d o n e b y a d d i n g th e l o w e r v a l u e to 1 2 8 . F o r e x a m p l e , y o u c a n s p e c i f y t h a t a m o d u l e h a v e c a t e g o r y v a l u e o f 8 a n d b e a l i g n e d o n a 2 5 6 - b y t e b o u n d a r y b V s p e c i f V i n g a c a t e g o r y v a l u e o f 1 3 6 ( 8 + 1 2 8 ) o n t h e C A T E G O R Y s t a t e m e n t . C a t e g o r y 1 2 8 i n d i c a t e s a c a t e g o r y 0 m o d u l e a l i g n e d o n a 2 5 6 - b y t e b o u n d a r y .

l f a n i n p u t m o d u l e c o n t a i n s a c a t e g o r y v a l u e o f 1 2 8 , t h e m o d u l e w i l b e a l i g n e d o n a 2 5 6 - b y t e b o u n d a r y e v e n i f a C A T E G O R Y s t a t e m e n t a s s i g n s a c a t e g o r v v a l u e o f l e s s th a n 1 2 8 . T h e b o u n d a r y - a l i g n a t t r i b u t e c a n n o t b e c h a n g e d b y a C A T E G O R Y s t a t e m e n t , b u t t h e n o n - b o u n d a r y - a l i g n ( u n d e r 1 2 8 ) p o r t i o n c a n b e c h a n g e d f o r t h i s l i n k - e d i t .

t z a

126

'I 0

(15)

END Statement

A n E N D s t a t e l l e n l i n d i c a t e s t h e e n d o f ' lh c O v o r l a y L i n k a g e E d i t o r in p u t a n d n r u s t l i r l l o w th e c O t r t r o l s t a t c t n c n l s a n d / o r o b l e c t n r o d u l e s r e a d t ' r o r r r t h e S Y S I N d c v i c e .

/ / E N D

EOUATE Statement

T h c B Q L J A T E s t a t c n t c n t i s r r s c c l t o n t a k c a t c u t p o r a r v c l r a n q c I o a r g f g r a r r a a t o a n t t t d r r l c l l a l n e o r c . n t r v p o i n t . R c l c r c n c c s t o a r n o d u l e n a n t L . o r c n t r y p o i n t s p c c i t i e c l i n t h c O [ . D N A l \ , 1 F . p a r a m e t c r a r c r e s o l v c d t o t h c r - n o d r r l c n a n l e o r c n t r v p o i n t i n t h e N E W N A M E p a r a n r c l c r . I l - a l t s t o l ' n a r n e ' s i s c r r t e r c d , t h c O L D N A M I T e n t r i c s li a v c I o n e -t ( ) < r n c r e l u t i o n s h i p t o t l t e N E W N A M E . c n t r i e s . T h c f ir s t O L D N A M L i s r c s o l v c d to t h c t l r s t N E W N A M F . . , t l t c s c c o n d to t h e s c c o n c l , c r c . F - a c h l i s t r n u s t c o r r t a i n th c s u r l e n u r n b e r o t r r a r r r c s . I 1 ' a n a l n e ts u s c d a s a n O L D N A M E r n o r c t l r n t r oncc. it is rcsolvccl t o t l r e f ir s t N E W N A M F i t n t a l c l l c s . O n l y , o n e l e v c l o l ' c r l u a t _ i n s l s d o r r c . C o n s i d c l t h r . ti ) l l o w i n q s l a t c n l c n t s .

, E O U A T E O L D N A M E - A B L E , N E W N A M E - B A K E R / i E O U A T E O L D N A M E - B A K E R , N E W N A M E . S A M T h e ' s c ' s t i l t c m c r r t s w o u l d c a u s c rc t c r e n c c s to A B L [ : t o l r c r c s o l v c d t o B A K E R a n d r c 1 ' c r e n c c s to B A K H I I t o t r c r c s o l v e , d t o S A M . R c l ' e r c n c c s t o A B L I : w o u l c l rr o t b c r c s o l v c t l t o S A M .

I f t w o n r o d u l e s a r c e q u a t c c l l l r d t l r c i r e . n t r . v l t r l i r r l s r r c a l s o r e f e r e n c e d , t l i e e n t r y p o i n t s a l s o r . n u s t b e c q L r a t c d

/ / E o u A T E O L D N A M E J n " - "

t n a m e , n a m e . . n a m c

t

I N E W N A M E - n a m e' n a m e , n a m e , . . . n a m e

i

I

O L D N A M E - n a m e o r

O L D N A M E - ' n a m e , . . . n a m e

T h e m o d u l e n a m e o r e n t r y p o i n t n o w r e f e r e n c e d i n t h e p r o g r a m .

N E W N A M E - n a m e o r

N E W N A M E - ' n a m e . n a r n e

T h e m o d u l e n a m e o r e n t r V p o i n t t h a t w i l l r e p l a c e t h e r e f e r e n c e d n a m e o r e n t r y p o i n t i n t h e p r o g r a m .

L i s r n g t h e O v c r l a y L i n k a g e t. . d i t o r I I

(16)

S T O R A G E M A P

A s t o r a g e n r a p is p r i n t e d u n l e s s M A P - N O i s s p c c i f ' i e d o r r l h t ' O P T I O N S s l a t e n t c n t . T h e s y s t c n r d a t c i s p r i n t c d t i r l - l o w i n g th e t i l l e l i n e . T h c h e a d i n g s o n t h c n r a p a r e : S t a r l A d d r c s s . O v e r l a ' y N u r n b e r a n d C ) v e r l a y A r e a . ( ' a l c g o r v . N a r n e a n d F - n t 1 1 , ( l i t r n t o d u l c n a n t c a n d c n t r \ p ( ) n l t \ ) . C o d e L r n g t h H e x a d e c i m a l , C o d e [ , c n g t h D e c i r n a l . a n d R e f c r e n c e d B y ( o n l y i l ' a c r o s s - r e f c r c n c c l i s r i n c l u d c d ) . T h e O v c r l a y A r e a h e a d i n g l i s t s t h c a r e a c a c h o v c r l a v is

l o a d c d in t o : L r f o r u s e r a r e a . S 1 ' o r s v s t e n t a r e a . a n c i ( ' l b r c o - r e s i d e n t a r e a -

I l t h c c a l e g o r ! o f ' a n r o d u l c is c h a n g e d . b o t l r t h c o l d a n d n e w c a t c g o r y v l l u e s r l e p r i n t c d . - [ ' h e

l i r r r n a l i s : o l t l . n c w . l l r n r o t l u l e is i n c l u d c d in t w o o r n r o r e tt v e r l a y s . r l l p p c a r s o n t h c r n a p in t w o o r n r o r c p l a c c s . ll ' M A P - X R L : t ; i s s 1 ' r c c i l i c d o n t h e O [ ' } T I O N S s t a t e n r e n t . I c r r l s s - r e t c - r c n c e l i s t i s a l s o p r i n t c c l . T l r i s li s t c o n t a i n s n r o d u l e s t l r a t h a v c c x l c r r t a l r c l e r c r r c c E S L s to t h c r n o d u l c n a l n e s ( ) r c l t l r y p o i n ts .

A t t l r c r ' r r d o 1 ' t l r c s i o r a q e n r a p . tl i e t o t a l s t o r t g e r l s c d is g t v e n in d e c i n r a l . a n d t l ) c s t a r t c o l ) t r o l a d d r c s s i s g r v e n in l r c x a d c c i r n a l . I f ' 1 h e p r o g r a r n u s c s o v c r l a v s . t h c n o n - o v c r l a y s t o r a g , o s i z c ' i s a l s o p r i n t e d - T h c s l o r a g e s i z c o 1 ' a r r o v e r la y l ) f o g r J n r i s a l w ' a y s i n i n c r c r n c n t s o l l 5 ( r h y 1 c s . T h e n o n - o v c r l a y s t o r t g e s i z c is t h e e x a c t n u r n b c - r o l ' b v t e s ir r t l t e I o a c l n r o d u l c .

T h e s t o r a g e n t a p c a n b c o r t t i t t e d to s a v c li r l k - e d i t ti r l r e ( sce Appe ndi x C . Par.fi t r nw nL' t' I trt1tn t v a rn( tt I s l.

t 2

(17)

O V E R L A V A R E A S

Main storage for an object program with overlays may be d i v i d e d i n t o f o u r a r c a s ; r o o t , u s e r , s y s t e m , a n d c o - r e s i d e n t . (see Figure 3) Not all programs will ncecl all fbur areas.

The storage map indicates which overlay area each ovcrlay segment is loaded into and the start address ol'each clver- lay area. See the storage ntaps printed wrth the examples.

Overlays

A r e a

a y A r e a

/

( - C o - r e s i d e n r A r e a F i g u r e 3 . Overlay Areas (Non-DpF System)

Root Area

The root area ofan overlay program contains the parts of the program that are never overlaid (see F-igure 3). The root area always contains the mainline module. overlay fetch routine, fetch table, and transfer vectors. l.he re- maining parts of the root depend on the program being Iinke d.

User Overlay Area

The user overlay area contains user modules that call sys- tem l/O m<tdules. Each overlay segnlent loaded into the user overlay area can contain ntoclules of diff'erenr category values.

S u p e r v i s o r

J

l r

R o o t A r e a

i \

I

I 1

- User Overlay

I

1-System Overl

_ G L O B A L - - COIVIMON - M a i n l i n e M o d u l e - Category O Modules (user) - - Other Modules Included (if space

a v a i l a b l e )

- Overlay Fetch Routine, Fetch Table, a n d T r a n s f e r V e c t o r s

U s e r l/ O D e p e n d e n t Modules (categories 8- I 26)

{ c a t e g o r f e s 1 , 2 , 3 , 5 , 6 , a n d 7 . E a c h c a t e g o r y in a s e p a r a t e o v e r l a y . )

S v s t e m M o d l e s ( c a t e g o r V 4 )

U s e r l/ O I n d { c a t e g o r i e s 8

e p e n d e n t M o d u l e s . 1 2 6 1

O v e r l a y s l 3

(18)

li the COBOL segmentation feature has been used, the COBOL segments appear as overlays in the user overlay a r e a . T h e p r e s e n c c o i C O B O L s e g m e n t s f o r c e s a n v n o n - C O B O L m o d u l e s t h a t n o r r n a l l y w o u l d h a v c b e e n a s s i g n e d i o t h e u s e r a r e a t o t h e r o o t a r e a ( c a t e g o r y 0 ) .

System Overlay Area

A s y s t e n r o v c r l a l ' s e g m e n t c o n t a i n s s y s t c m n r o d u l e s w i t h t h c s a n r e c a t e ' g o r y v a l r r e . E a c h s y s t e n l o v e r l a y s e g r n e n t i s i n c l e - p c n d e r r t o 1 ' o t l i e r s y s t c n t o v e r l a y s e g l n e n t s . S y s t e r r r m o d u l e s a r c a s s i g n c d t o o v e r l a y s e g m e n t s s o l e l v b y c a t e g o r y v a l u e . A s v s t e n l m o d u l e c a n o n l y c a l l a r t o t h e r n l o d u l e w i t h t h e s a m e c a t e g o r y o r a c a t c g o r y 0 r n o d u l c .

Co-resident Area

T h e c o - r c s i d e n t a r e a i s a c t u a l l y a p a r t o f t l i e s y s t e r n o v e r l a y a r c a ( s e c F i g u r e - j ) . T l i c s y s t e m a r i t h n r c t i c o v e r l a y s e g m e n t ( c a t e g o r y 4 ) i s s o r n c t i r n e s s m a l l e r t l t a t r t l i e s y s t c l n o v e r l a y a r e a . It - it i s s r n a l l e r . t h e r e m a i n i n g s p a c e i s t h c c o - r e s i d e n t a r e a a n d c a n b e u s e d t o l o a d u s e r m o d u l e s t h a t a r e I/ O - i n d e p e n d e n t ( d o n o t c a l l s y s t e m l / O r n o d u l e s ) . I f t h e c o l e r c c l L r i r e r n c n t s o f c a t e g o r v 4 p l u s th e c o - r e s i d e n t a r e a r s greater than tlre siz.e of the systenr overlay area. category 4 rnodules will be re-included in the root area until all c a t e g o r y 4 r o u t i n e s a r e in n o n - o v e r l a y c o r e , o r u n t i l t h e category 4 plus co-resident area will fit into the system overlay arca. A nroclule can be moved f rom this area to

lhe user area by grouping it with an l/O-dependent user module or by specifying AREA-USER on the GROUP s t a t e m e n t .

On the Model 15. routines of category 126 will be given tlrst consideration for re-inclusion in the root area (non- ovcrlay core). Generally, category 126 routines should be RPG mainline routines.

A S S I G N I N G O V E R L A Y S

The Overlay Linkage Editor attempts to flt all rnodules of an object program into the specified storage sizc without overlays. lf this cannot be done, the Overlay Unkage Edi- tor assigns some modules to overlay segments. Figure 4 shows the Overlay Unkage Editor rnethod of assigning modules to overlay segntents. The maximum numbe'r of overlay segnlents in a progratn is 154. The first rnodule e n c o u n t e r e d ( e i t h e r o n a n I N C L U D E s t a t e m e n t o r a s a n object nrodule read 1'rom the input device) is the rnainline r o u t i n e a n d lh u s p a r t o f t h c r o o t . T h e e x t e n d e d r o o t n r a i n l i n e i n c l u d e s t h e r n a i n l i n e a n d a l l it s d e s c e n d a n t s w i t h e a c h s t r i n g o f d e s c e n d a n t s b e i n q t e r m i n a t e c l w h e n a n o n - c a t e g o r y 0 r n o d u l e i s e n c o u n t e r e d . A d e s c e n d a n t i s a module calle d by lnothcr rnodulc. The root is in rnain storage at all tinres ancl is never overlaid. Tlte amor"rnt of m a i n s t o r a g c a v a i l a b l e d c t e r r n i n c s t h c a m o u n t o l ' c o d e placed into ovcrlay segrnents. Il the load rnodulc does not llt in the main storage size specified and generating over- lay segrnents would not enable it to fit better in storage, overlay segments are not generated.

T h r o u g h t h e u s e r e n t r y v o u c a n u s e t h e G R O U P s t a t e m e n t to specify module groupings (see index cntry'. grutuping modules) and use the CATEGORY statcmenl to change the category of a module. You originally established the category of a rnodule by specifying options to the compiler or asscmbler.

The Overlay Linkage Editor generates an overlay fetch routine. fetch table, and transfer vectors for progratns with overlay segments and includes them in the root seg- m e n t . T h e g e n e r a t e d c o d e is I 1 6 b y t e s ( l 2 7 b y t e s i f ATTR-MRO is specified) plus 7 bytes tbr each overlay se$nent and I I bytes for each overlay segment entry point that has a transf'er vector. During execution of the object program, the overlay fetch routine is called when an overiay segment is needed. The overlay fetch routine checks to see if the segment is already in main storage. If it is, the seef,nent is not reloaded. This saves the time needed to load the segment.

(19)

Control Statements and Object Modules

Figure 4. Overview of ths Overlay Linkagre Editor Method of Assigning Overlaye l f p r o g r a m f i t s i n available storage without overlavs

A s s i g n c a t e g o r y 0 t o m o d u l e s th a t cannot be overlaid.

(see index entry: determining overlay modutes) A s s i g n ro o t a r e a a s f o l l o w s :

(see index eniry: root area) - M a i n l i n e m o d u l e - C a t e g o r y 0 m o d u l e s - O v e r l a y f e t c h r o u t i n e

F e t c h t a b l e e n t r i e s fo r o v e r l a y s T r a n s f e r v e c t o r s fo r o v e r l a y m o d u l e s

A s s i g n s y s t e m m o d u l e s to o v e r l a y s . ( s e e index entry:

svstem overlav area and co-resident areal

B u i l d p r o g r a m w i t h o u t o v e r l a V s e g m e n t s

E n d - o f - L i n k - e d i t

O A s s r g n u s e r m o d u l e s thal are called bv the extended r o o t m a i n l i n e t o o v e r l a y s e g m e n t s a s f o l l o w s :

l f t h e u s e r m o d u l e , i t s d e s c e n d a n t , o r a m o d u l e i t i s g r o u p e d w i t h ( s e e in d e x e n t r y : G R O U P s t a t e - m e n t ) c a l l s a s y s t e m l / O m o d u l e , assign t h e u s e r m o d u l e t o a u s e r o v e r l a y s e g m e n t and assign e a c h d e s c e n d a n t t h a t c a l l s a s y s t e m l / O m o d u l e or has a d e s c e n d a n t t h a t c a l l s a s y s t e m l / O m o d u l e to the s a m e u s e r o v e r l a y s e g m e n t . A s s i g n descendants o f m o d u l e s in t h e u s e r o v e r l a y s e g m e n t that do not c a l l s y s t e m l / O m o d u l e s to a c o - r e s i d e n t o v e r l a y s e g m e n t a l o n g w i t h t h e i r d e s c e n d a n t s .

l f t h e u s e r m o d u l e d o e s n o t c a l l a system l/O m o d u l e , a s s i g n t h e m o d u l e a n d i t s d e s c e n d a n t s t o a c o - r e s i d e n t a r e a .

C o m p u t e m i n i m u m s i z e o f e a c h o v e r l a v a r e a . I n c l u d e o v e r l a y m o d u l e s in t h e r o o t i f t h e y f i t a n d can be included (see index en:rv: including mod- u l e s in r o o t l . M o d u l e s a r e i n c l u d e d b y c a t e g o r y v a l u e s . l

t h r o u g h 1 2 6 i n o r d e r . F o r t h e M o c j e l 1 5 , m o d u l e s a r e i n c l u d e d b V c a t e g o r V v a l u e s 1 2 6 . t h e n 1 t h r o u g h 1 2 5 i n o r d e r . l f a m o d u l e i s i n c l u d e d i n t h e r o o t , t h e t r a n s f e r v e c t o r fo r i t i s e l i m i n a t e d a n d t h e f e t c h t a b l e e n t r v i s e l i m i n a t e d j f t h e m o d u l e w a s t h e l a s t e n t r y i n t h e o v e r l a y s e g m e n t . l f a n y m o d u l e s w e r e i n c l u d e d , r e p e a t th e l a s t two steps.

a P8d non-system overlays to equal lengths by combin.

i n g s m a l l e r o v e r l a y s to c r e a t e la r g e r o n e s .

B u i l d o v e r l a y p r o g r 8 m

E n d - o f - L i n k - e d i t

Overlay s l 5

(20)

Determining Which Modules Can Be Overlaid

llhe Overlay l-rnkage Editor considcrs a module capable of treing overlaid if the category of the module is non-zero and if the module is a direct descendant ol (called by) tlte main-

!ine routine (the first rnodule named on the INCLUDE statement or rcad from the system input device) or descends irorn the ntainline routine through only category 0 modules.

r\, C, G, and H in Figure -5 meet these requirements and c:an be overlaid.

t\ module that calls a module of an extended mainline routine (B and E are examples of extended mainline in the shacled portion ot'Figure 5) can be overlaid only if the rnodule calleC has no direct or indirect call to an over- layable module. C in Figure 5 is overlayable since it calls Il. and E does not call an overiayable module. If E called an overlayable module. C would have to be included in root.

r\ module called by an overlay module can itself be over- l a i d ( m o d u l e F i n F i g u r e 5 ) .

N,lodules that do not qualify for overlay segments are as- signed to the root segment. Module C in Figure 6 is as- signed to the root segment because it appears twice in the program. Modules C and F in Figure 7 are assigned to overlay segments because each appears only once in the program. even though they do not meet the normal cri- leria for overlay modules.

Link-Edit Start Addresses

lf LINKADD is not coded on the PHASE statement. the program is link-eclited to start at the end of the supervisor (or at a fixed address for the Model I 5).

If the start address plus the length of the program exceeds 64K, the program is link-edited to start at X'0000'. Using the System Control Program @rogram Number 5704-SC2), the object program is linked-edited to the largest multiple of 2K, which allows the end address to be less than 64K.

The link-edit start address does not affect the load address.

A prograrn run on other than a Model l0 or Model l2 DPF system is always loaded at the end of the supervisor, no matter what address it is link-edited to. A PARTITION statement can be used in the OCL jobstream on a Model 10 or Model l2 DPF system to define the load address for programs run in level 2 (see the PARTITION statement in the IBM Systeml3 Model 10 Disk System Contol Pro- gramming Reference Manual, GC2l-7512, or in the IBM Systeml3 Model 12 System Contol Programming Refer- enceManual, C'C21-5 130). If aPARTITION statement is not used, a program run in level 2 js loaded at the end of main storage.

Severe throughput degradation results if relocation is neces- sary for overlay programs. They should be link-edited to start at the load address. To determine the load address for overlay programs which are to run in level 2 of a Model l0 or Model 12 DPF system when a PARTITION statement is not used, subtract the prograrn size from the main storage size. For example, you can calculate the link+dit start address of a9728-byte program ona24K system as follows:

3A00

- 24K converted to hexadecimal.

- Program size in hexadecimal. (All overlay program sDes are stated in sector (256-byte) increments on the Overlay Linkage Editor storage map. Non-overlay progams must be rounded up to the next even sector.) The sample program just mentioned should be link-edited to start at X'3A00'by specifying LINKADD-X'3A00'on the PHASE staternent.

6000 -2600

(21)

H

Category 8

I

Category 8

u

Category 8

E Category O

L Category 0

M Category O

* M o d u l e s a s s i g n e d t o r o o t

Figure 5, Treo-structure of an Overlay program

' M o d u l e s a s s i g n e d t o r o o t

Figure 6. User Modules Assigned to tho Root Because they Cannot be Overlaid

* M o d u l e s assigned to root

* * M o d u l e s in first user overlay

* * * M o d u l e s in second user overlav

Figure 7, Normal Root Modules Assigned to Overlays D

Category 1 0

Category 50 Category 50

A

Category 10

D

Category 10

c

Category 50

F

Category 60

Overlays l 7

Referenzen

ÄHNLICHE DOKUMENTE

Coronary revascularization, either by CABG or PTCA, has been proven unequivocally to improve survival in selected patients, especially in those with triple vessel disease and

– Shared tree created according to reverse path forwarding. – Nodes hold children tables

– Shared tree created according to reverse path forwarding. – Nodes hold children tables

India may lack a Pacific coastline, but there is no disputing its status as an Asian nation: eight of India’s 20 largest trading partners are members of APEC and over the

The seventh character of the instruction (last character of the B-address) enters the units position of the B-address register and the A-register through the

The skip immediate commands are executed any time the form is not at the specified channel. If the form is already at the specified channel, the forms operation is suppressed

TRT -address specifies the symbolic address of the leftmost byte of the translate control area. If the $TRTB macroinstruction is used to generate the translate

The QUIT command might be used when it is discovered that there are object modules required that have not been assembled yet or when the linkage is merely a