-- Copyright (C) 1980, 1981, 1984, 1985  by Xerox Corporation. All rights reserved. 
-- VMControl.mesa, HGM, 17-Sep-85  0:20:27

-- Last edited by Gobbel: 18-May-81 11:17:25
-- Last edited by Levin:  26-Nov-80 16:52:38
-- hankins	25-Jul-84 13:52:34	Klamath update (IsBound)

DIRECTORY
  VMStorage USING [InitializeStorage, FinalizeStorage],
  VMDefs USING [],
  VMPrivate USING [
    FinalizeVMCache, FinalizeVMFile, FinalizeVMIO, FinalizeVMPageMgr,
    InitializeVMCache, InitializeVMFile, InitializeVMIO, InitializeVMPageMgr];

VMControl: PROGRAM
  IMPORTS VMPrivate, VMStorage
  EXPORTS VMDefs
  SHARES VMStorage =

  BEGIN OPEN VMPrivate;


  -- Procedures and Variables Exported to VMPrivate --

  InitializeVM: PUBLIC PROCEDURE [min, max: CARDINAL] =
    BEGIN
    first: LONG POINTER ← VMStorage.InitializeStorage[];
    InitializeVMIO[];
    InitializeVMPageMgr[];
    InitializeVMCache[min, max, first];
    InitializeVMFile[max];
    END;

  FinalizeVM: PUBLIC PROCEDURE =
    BEGIN
    FinalizeVMFile[];
    FinalizeVMCache[];
    FinalizeVMPageMgr[];
    FinalizeVMIO[];
    VMStorage.FinalizeStorage[];
    END;

  END.