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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

LOCK [CALLI 60]<br />

22.83 LOCK [CALLI 60]<br />

FUNCTION<br />

Locks the current job into user memory. Note that there are two<br />

calling sequences for LOCK. The standard calling sequence is<br />

described under Calling Sequence I and the extended calling sequence<br />

is described under Calling Sequence 2. The extended calling sequence<br />

locks a segment starting at a specified page in physical memory.<br />

The default function of this call locks the segments of the program as<br />

set by bits 17 and 35 in the accumulator. Bit 17 must be set to lock<br />

the high segment; bit 35 must be set to lock the low segment. The<br />

specified segment(s) is locked into physically contiguous memory in<br />

contiguous executive virtual memory space, unless you set flags in the<br />

accumulator to specify otherwise.<br />

NOTE<br />

Programs using user mode extended addressing cannot<br />

use the LOCK monitor call.<br />

For more informat{on about locking jobs, refer to Chapter 9.<br />

CALLING SEQUENCE 1<br />

MOVE ac, [flags]<br />

LOCK ac,<br />

error return<br />

skip return<br />

In the calling sequence, the program supplies the flags, which include<br />

one or more of the following bits:<br />

Bit<br />

13<br />

15<br />

16<br />

Symbol<br />

LK.HHP<br />

LK.HNP<br />

LK.HNE<br />

Function<br />

Allows locking the high segment in core above the<br />

first 256K of physical core, if LK.HNP is not set.<br />

Without this provision, the UUO will fail if the<br />

high segment cannot be fit entirely within the<br />

first 256K of core. 14 LK.HLC Locks the high<br />

segment in user core and sets its cache bit. If<br />

this bit is off, the high segment is locked with<br />

its cache bit off. KL<strong>10</strong> processors will run your<br />

program faster ~f you use ~K.HLC; however, for a<br />

real-time program that has direct access to<br />

memory, you should not set LK.HLC.<br />

Locks the high segment without forcing the job to<br />

be locked into physically contiguous locations.<br />

If this bit is not set, physical contiguity for<br />

the locked high segment is required. To expand<br />

the physically contiguous high segment segment<br />

beyond 256K, set the LK.HLP bit (Bit 13) instead<br />

of LK.HNP.<br />

Locks the high segment without forcing it to<br />

reside in executive virtual memory. If this bit<br />

is not set, the locked high segment must reside in<br />

executive virtual memory.<br />

22-226

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

Saved successfully!

Ooh no, something went wrong!