-- AlpineControl.mesa
-- Starting Alpine.
-- Last edited by
-- MBrown on January 31, 1984 8:34:42 pm PST
-- Kolling on January 31, 1983 5:32 pm
DIRECTORY
AlpineEnvironment,
Rope;
AlpineControl: DEFINITIONS =
BEGIN
FileID: TYPE = AlpineEnvironment.FileID;
VolumeID: TYPE = AlpineEnvironment.VolumeID;
FileStore: TYPE = AlpineEnvironment.FileStore;
PageCount: TYPE = AlpineEnvironment.PageCount;
ROPE: TYPE = Rope.ROPE;
Initialize: PROC [
filePageMgrNormalChunks: NAT,
filePageMgrLogChunks: NAT,
filePageMgrLeaderChunks: NAT,
coordinatorMapHashArraySlots: NAT, -- prefers a power of two
transactionMapHashArraySlots: NAT, -- prefers a power of two
fileMapHashArraySlots: NAT, -- prefers a prime
openFileMapHashArraySlots: NAT, -- prefers a power of two
lockHashArraySlots: NAT,
fileMapFinalizationQueueLength: NAT,
nAccessCacheEntries: NAT,
alpineWheels: ROPE -- e.g. "AlpineImplementors↑.pa"
];
-- Must be called before calling Start. If called several times, all calls but the first
--are no-ops.
Start: PROC [
fileStore: FileStore,
-- "Local.alpine" means use system volume, otherwise look for named volume
typeOfRestart: TypeOfRestart,
-- $warmStart means read log, $coldStart means erase log,
-- $createServer means erase everything
nLogPages, nOwners: INT
-- used only if typeOfRestart = $createServer
];
TypeOfRestart: TYPE = {warmStart, coldStart, createServer};
IsStarted: PROC [] RETURNS [BOOL];
ExportInterfaces: PROC [];
-- Exports public interfaces for remote use.
END.
CHANGE LOG
Changed by MBrown on April 1, 1983 1:25 pm
-- Added some parms to Initialize.
Changed by MBrown on January 31, 1984 8:33:18 pm PST
-- Cedar 5.0. Eliminated AlpineStarterImpl.