24.12.2013 Views

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

TOPS-10 Monitor Calls Manual Volume 2 AA-K039D ... - Trailing-Edge

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.

CORE [CALLI 11]<br />

22.16 CORE [CALLI 11]<br />

FUNCTION<br />

Allows your program to dynamically expand<br />

allocat~on in either or both segments.<br />

segments may be locked in core.<br />

or contract its core<br />

Note that neither of the<br />

The program with JACCT privileges expands the<br />

memory. A program without JACCT privileges<br />

indicate physical addressing.<br />

CALLING SEQUENCE<br />

MOVE ac, [XWD hiseg,lowseg]<br />

CORE ac,flag<br />

error return<br />

skip return<br />

segment<br />

must<br />

in<br />

use<br />

physical<br />

UU.PHY to<br />

In the calling sequence, you can supply the following variables:<br />

o hiseg is the highest relative address to be used in the<br />

program's high segment. If hiseg = 0, the core assignment<br />

for the high segment is left unchanged.<br />

o lowseg is the highest relative address to be used in the<br />

program's low segment. If lowseg = 0, the core assignment<br />

for the low segment is left unchanged.<br />

o<br />

flag is the physical flag bit (UU.PHY) to indicate that the<br />

core assignment applies to physical memory. Refer to the<br />

CALLI UUO for more information.<br />

Note that if the CORE UUO is executed in a non-zero section, all core<br />

address arguments will be interpreted as section-relative values.<br />

That is, all references are assumed to be relative to the current<br />

section.<br />

If you give a non-zero hiseg that is less than 400000 or the length of<br />

the low segment (whichever is greater), the high segment is<br />

eliminated. Doing this from the high segment causes an illegal memory<br />

reference.<br />

If your program has no high segment, or if you give a CORE call that<br />

eliminates the high segment, you can create a new, non-sharable high<br />

segment by giving hiseg greater than 400000. You can make the new<br />

high segment sharable by doing the following:<br />

o Giving it a .EXE extension.<br />

o<br />

o<br />

Writing it onto a storage device.<br />

Closing the file.<br />

o Using the SSAVE monitor command, or the SAVE. UUO with the<br />

SS%SSH flag, to save the entire core image.<br />

o Initializing the program with a GET, R, or RUN monitor<br />

command, or with a RUN, MERGE., or GETSEG monitor call.<br />

If you use the CORE monitor call giving a value for lowseg that is<br />

less than or equal to .JBREL, the monitor removes any noncontiguous<br />

pages from your address space; these pages may include the page fault<br />

handler (PFH) or VMDDT. To avoid this, use the PAGE. monitor call to<br />

choose only the needed pages.<br />

22-35

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

Saved successfully!

Ooh no, something went wrong!