Article 158725 of comp.os.vms:
Martin Pensak <pensakmj@ESVX23.ES.DUPONT.COM> writes:
>[...]
> We have a little command procedure which displays size and usage of
> global pages, global sections, and global page file.
> [...]
> On a VAX, we simply examine the magic location:
> $   MMG$GL_GBLPAGFIL = %x80004153
> $   free_global_page_file = f$cvui(0,32,f$fao("!AD",4,MMG$GL_GBLPAGFIL))
> 
> On Alpha, things are not that clear.
>[...]

The F$FAO "trick" works as well on ALPHA, however it seems that you'd better
run an executable to at least figure out the address within the VMS executive.

For a "quick & dirty" solution, the following piece of DCL 
will assign the proper value to the symbol MMG$GL_GBLPAGFIL:

$ if f$sear("SYS$LOGIN:MMG$GL_GBLPAGFIL_ADDR.EXE").nes."" then goto run_addr_exe
$ macro	SYS$INPUT:/nolist/object=SYS$SCRATCH:MMG$GL_GBLPAGFIL_ADDR
.psect data
dsc: .ascid "%xFFFF8888"
fmt: .ascid "%x!XL"
sym: .ascid "MMG$GL_GBLPAGFIL"
.psect code,shr,nowrt
.entry begin,^m<>
 pushaq g^MMG$GL_GBLPAGFIL
 pushaw dsc
 pushaq dsc
 pushaq fmt
 calls #4,g^SYS$FAO
 blbc r0,99$
 pushaq dsc
 pushaq sym
 calls #2,g^LIB$SET_SYMBOL
99$: ret
.end begin
$ link/nomap/sysexe SYS$SCRATCH:MMG$GL_GBLPAGFIL_ADDR/exe=SYS$LOGIN:
$ delete SYS$SCRATCH:MMG$GL_GBLPAGFIL_ADDR.OBJ;
$run_addr_exe:
$ run SYS$LOGIN:MMG$GL_GBLPAGFIL_ADDR

Wolfgang J. Moeller, Tel. +49 551 2011516 or -510, moeller@gwdvms.dnet.gwdg.de
GWDG, D-37077 Goettingen, F.R.Germany   |       Disclaimer: No claim intended!
<moeller@decus.decus.de>  ----- <moeller@gwdg.de>  -----  <w.moeller@ieee.org>


