DIRECTORY VM USING [Interval, PageNumber]; VMRemotePaging: DEFINITIONS = BEGIN LaundryWriteProc: TYPE = PROC[interval: VM.Interval] RETURNS [success: BOOL]; PageInProc: TYPE = PROC[faultedPage: VM.PageNumber, writePointer: LONG POINTER] RETURNS [success: BOOL]; RemotePageState: TYPE = {valid, stickyInvalid, invalid}; ValidPageSeq: TYPE = RECORD[ PACKED SEQUENCE COMPUTED NAT OF RemotePageState]; MaxRemotePage: INT; RemotePageValid: LONG POINTER TO ValidPageSeq; EstablishLaundryWriteProc: PROC[proc: LaundryWriteProc]; EstablishPageInProc: PROC[proc: PageInProc]; END. ˜VMRemotePaging.mesa Copyright c 1986 by Xerox Corporation. All rights reserved. Bob Hagmann, April 29, 1986 1:48:19 pm PDT This interface registers procedures to be used by VM for paging over the net. Types valid - the remote page is valid if it is on the server stickyInvalid - the page was a dirty victim: concurrent laundry request cannot make it valid invalid - the remote page is not valid even if there is a copy on the server Variables Establish/Disestablish paging procs To establish, call EstablishLaundryWriteProc then EstablishPageInProc. To Disestablish, call in reverse order with NIL. Bob Hagmann April 18, 1986 3:58:03 pm PST created Κ‰– "Cedar" style˜codešœ™Kšœ Οmœ1™