Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!seismo!gatech!bloom-beacon!oberon!cit-vax!ucla-cs!zen!ucbvax!CITHEX.CALTECH.EDU!carl From: carl@CITHEX.CALTECH.EDU (Carl J Lydick) Newsgroups: comp.os.vms Subject: Re: Help Request Message-ID: <870709152109.03f@CitHex.Caltech.Edu> Date: Thu, 9-Jul-87 18:30:40 EDT Article-I.D.: CitHex.870709152109.03f Posted: Thu Jul 9 18:30:40 1987 Date-Received: Sun, 12-Jul-87 14:11:58 EDT References: <870708145813.000014A32C1@cuchem.chem.columbia.edu> Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 18 > PROBLEM: I HAVE A FORTRAN PROGRAM WHICH NEEDS TO HANDLE AN AST. I WOULD > LIKE TO LOCK IN MEMORY THE PAGES OF EITHER THE WHOLE PROGRAM OR MINIMALLY > THOSE PARTS REQUIRED TO HANDLE THE AST (COMMON BLOCKS AND THE AST ROUTINE > ITSELF) SO THAT THE RESPONSE TIME WILL BE QUICK. TO USE THE SYSTEM > SERVICES LOCK PAGES IN MEMORY ROUTINE SYS$LCKPAG OR SYS$LKWSET I NEED TO > KNOW THE ADDRESSES OF THE PAGES TO BE LOCKED. I DO NOT KNOW HOW TO USE > SYSTEM ROUTINES (SYS$GETJPI??) TO FIND THESE ADDRESSES. Warning: I've never used SYS$LCKPAG or SYS$LKWSET. My recommendations may well be useless. However, I suspect your best bet will be to use the DCL ANALYZE/IMAGE utility to find out where the pages you want to lock reside (or you may be able to use the compilation listing and link map to do it), after having put in your call to the system service using an arbitrary address (so that the code doesn't move around when you put in the call). Then edit the source to use the addresses you find that way.