11.07.2015 Views

Program Logic Manual - All about the IBM 1130 Computing System

Program Logic Manual - All about the IBM 1130 Computing System

Program Logic Manual - All about the IBM 1130 Computing System

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

0 U) ®COMMA,SkeletonSupervisorCOMMA,SkeletonSupervisorCOMMA,SkeletonSupervisorDISKZ DISKZ DISKZPhase0Phase1Phase0Phase2DiskI/0BuffersLoadTab leThatPortionofCore LoadAbove5056Phase0Phase2Phases3,4,5,6,12,13Phase7,8,9,10,11LoadTableThatPortionofCore LoadAbove5056Figure 9. Core Layout During Core Load Builder Operationlast so that <strong>the</strong>y may be overlaid by phase 3. Phase 3includes <strong>the</strong> subroutines required to choose a subroutine(as opposed to a mainline) from <strong>the</strong> Load'Table and relocate it. Phases 4 and 6 round out <strong>the</strong>one-pass core load building process. Phase 4determines whe<strong>the</strong>r or not SOCALs are required,and, if so, whe<strong>the</strong>r or not <strong>the</strong>y can be employed tomake <strong>the</strong> core load fit into core storage. It alsoprocesses ILSs. Phase 6 performs <strong>the</strong> miscellaneousjobs, such as creating <strong>the</strong> transfer vector, that canbe done only at <strong>the</strong> end of <strong>the</strong> process of building acore load. Phase 5 is executed only during pass 2in a two•pass building process. It organizes <strong>the</strong>LOCALs and SOCALs for relocation, including <strong>the</strong>irspecial linkages.DISK BUFFERSThere are three buffers used by <strong>the</strong> Core LoadBuilder. Each is 320 words long, not counting <strong>the</strong>word count and sector address, and each has aprimary use, although it may be used temporarilyfor something else. For example, <strong>the</strong> LET searchbuffer is used primarily to hold a sector of LET/FLET when searching that table. However, it containsone of <strong>the</strong> message phases (phases 7-10)whenever a message is printed.The data buffer is a buffer for <strong>the</strong> User Area.The program currently being incorporated into <strong>the</strong>core load is read into this buffer, one sector at atime. For example, after a sector of <strong>the</strong> mainlineis read into this buffer from <strong>the</strong> User Area orWorking Storage, <strong>the</strong> relocation of <strong>the</strong> mainline canbegin. When this sector of <strong>the</strong> mainline has beenrelocated, ano<strong>the</strong>r sector (if any) is fetched, andso on until <strong>the</strong> entire mainline is relocated.The main use of <strong>the</strong> CIB buffer is to contain <strong>the</strong>CIB, one sector at a time. For example, if a coreload is to occupy locations 1000 - 1639, <strong>the</strong>n <strong>the</strong> firstsector of <strong>the</strong> CIB contains <strong>the</strong> part of <strong>the</strong> core loadthat is to occupy 1000 - 1319 and <strong>the</strong> second sector1320 - 1639. As <strong>the</strong> core load is built, <strong>the</strong> LocationAssignment Counter (LAC) reflects <strong>the</strong> ultimate coreaddress of <strong>the</strong> data word currently being relocated.In this example, <strong>the</strong> LAC would start at 1000, thuscausing sector 1 of <strong>the</strong> CIB to be read into <strong>the</strong> CIBbuffer. This first word of <strong>the</strong> core load would beplaced in <strong>the</strong> first word of <strong>the</strong> CIB buffer and <strong>the</strong>LAC advanced by 1. Assuming no data breaks, <strong>the</strong>LAC will eventually be incremented to 1320. Then<strong>the</strong> contents of <strong>the</strong> CIB buffer will be written outon sector 1 of <strong>the</strong> CIB, and sector 2 will replacesector 1 in <strong>the</strong> CIB buffer. In short, each word ora core load is always transferred to <strong>the</strong> CIB via <strong>the</strong>CIB buffer.The data and CIB buffers are combined into asingle 640-word buffer for <strong>the</strong> purpose of fetching<strong>the</strong> LOCAL, NOCAL, FILES, and G2250 informationfrom <strong>the</strong> SCRA.CORE IMAGE BUFFER (CIB)The Core Image Buffer is used by <strong>the</strong> Core LoadBuilder, <strong>the</strong> Core Image Loader, and <strong>the</strong> SkeletonSupervisor. The Core Load Builder uses it to storeany part of <strong>the</strong> core load that is to reside (when <strong>the</strong>34

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!