YggDummyProcess.mesa
Copyright Ó 1985, 1986, 1988 by Xerox Corporation. All rights reserved.
Levin on June 14, 1983 4:04 pm
Russ Atkinson (RRA) February 27, 1985 8:07:06 pm PST
Willie-Sue, October 16, 1986 5:24:59 pm PDT
Doug Wyatt, December 12, 1986 8:20:07 pm PST
Bob Hagmann March 23, 1988 9:48:01 am PST
Dummy for Yggdrasil!
YggDummyProcess:
DEFINITIONS
= BEGIN
Time
Ticks: TYPE = CARDINAL;
Milliseconds: TYPE = INT;
Seconds: TYPE = CARDINAL;
MsecToTicks:
SAFE
PROC [Milliseconds]
RETURNS [Ticks];
SecondsToTicks:
SAFE
PROC [Seconds]
RETURNS [Ticks];
TicksToMsec:
SAFE
PROC [Ticks]
RETURNS [Milliseconds];
Timeouts
ConditionPointer: TYPE = POINTER TO CONDITION;
SetTimeout:
PROC [condition: ConditionPointer, ticks: Ticks]
;
DisableTimeout:
PROC [condition:
ConditionPointer]
;
Identity of the currently executing process
GetCurrent: SAFE PROC RETURNS [PROCESS];
Priorities of processes
Priority: TYPE = [0..7];
The reserved priority levels (0, 5, 7) should not be used except by wizards.
priorityIdleProcess: Priority = 0;
priorityBackground, priorityClient0: Priority = 1;
priorityNormal, priorityClient1: Priority = 2;
priorityForeground, priorityClient2: Priority = 3;
priorityClient3: Priority = 4;
priorityFaultHandlers: Priority = 5;
priorityRealTime: Priority = 6;
prioritySwatWatcher: Priority = 7;
SetPriority:
SAFE
PROC [p: Priority];
GetPriority: SAFE PROC RETURNS [Priority];
Aborting a process
Abort:
PROC [
PROCESS];
Requests that the indicated process be aborted.
CheckForAbort:
SAFE
PROC;
Checks for the current process being asked to abort by Abort. Raises ABORTED if such a request has been made. Otherwise CheckForAbort is a null operation.
DisableAborts:
PROC [pCondition: ConditionPointer];
EnableAborts:
PROC [pCondition: ConditionPointer];
Control of Scheduling
Pause:
SAFE
PROC [ticks: Ticks];
PauseMsec:
SAFE
PROC [ms: Milliseconds];
SetTimeSlice:
SAFE
PROC [ticks: Ticks];
Process validation
ValidateProcess: PROC [PROCESS];
InvalidProcess: ERROR [process: PROCESS];
END.