<> <> DIRECTORY Disk USING [Channel, PageNumber, Label], PrincOps USING [InterimPageState]; VMBacking: DEFINITIONS = BEGIN <<>> <> <<>> RunTablePageNumber: TYPE = --File.PageNumber-- INT; FilePageCount: TYPE = --File.PageCount-- INT; RunTable: TYPE = REF RunTableObject; RunTableIndex: TYPE = CARDINAL; RunTableObject: TYPE = RECORD [ nDataPages: FilePageCount, nRuns: CARDINAL, runs: SEQUENCE length: RunTableIndex OF Run]; Run: TYPE = RECORD [ filePage: RunTablePageNumber, diskPage: Disk.PageNumber, channel: Disk.Channel]; AttachBackingStorage: PROC [ label: Disk.Label, firstDataPage: RunTablePageNumber, runTable: RunTable]; <> <<>> <<>> <> <<>> BriefPageState: TYPE = {free, killed, active}; StateFromMapEntry: SAFE PROC [map: PrincOps.InterimPageState] RETURNS [BriefPageState]; <> RecoverRealMemory: PROC; <> END.