Text preview for : ProcessDefs.mesa_Oct77.pdf part of xerox ProcessDefs.mesa Oct77 xerox mesa 3.0_1977 listing ProcessDefs.mesa_Oct77.pdf



Back to : ProcessDefs.mesa_Oct77.pd | Home

processdefs.mESA 24-0CT-77 18:38:25 Page 1


-- File ProcessDefs.Mesa
-- Last edited by Johnsson: May 18, 1977 11:36 AM
DIRECTORY
ControlDefs: FROM "controldefs",
Mopcodes: FROM "mopcodes":
DEFINITIONS FROM ControlDefs;
ProcessDefs: DEFINITIONS =
BEGIN
-- Special op codes
BLOCK: MACHINE CODE = INLINE [Mopcodes.zBLOCK];
ProcessHandle: TYPE = POINTER TO ProcessObject;
ProcessNIL: ProcessHandle = LOOPHOLE[O]:
ProcessObject: TYPE = PRIVATE RECORD [
state: StateVector,
pn: ProcessPriority
];

ProcessRegister: PRIVATE TYPE = WORD;
AP: PRIVATE POINTER TO ProcessRegister = LOOPHOLE[20B];
RP: PRIVATE POINTER TO ProcessRegister = LOOPHOLE[21B];
CPN: PRIVATE POINTER TO ProcessPriority = LOOPHOLE[22B]:
WakeupsWaiting: PRIVATE POINTER TO WORD = LOOPHOLE[452B];
Act iveWord: PRIVATE POINTER TO WORD = LOOPllOLE[ 453B];
ProcessVector: PRIVATE TYPE = ARRAY ProcessPriority OF ProcessHandle;
PV: PRIVATE POINTER TO ProcessVector = LOOPIIOLE[40B];
_ ProcessPriority: TYPE = [0 .. 15];
HighestProcessPriority: ProcessPriority=O:
LowestProcessPriority: ProcessPriority=14:
Unscheduled: Proc0ssPriority=15:
PriorityNotAvailable: ERROR;
InvalidPriority: ERROR;
InvalidProcess: ERROR:
ProcessNotScheduled: ERROR;
CreateProcessFromrrame: PROCEDURE [FrameHandle. ProcessPriority] RETURNS [ProcessHandle];
CreateProcessFromProcedure: PROCEDURE [PROCEDURE. ProcessPriority] RETURNS [ProcessHandle];
SetProcessPriority: PROCEDURE [ProcessHandle, ProcessPriority];
GetProcessPriority: PROCEDURE [ProcessHandle] RETURNS [ProcessPriority];
GetCurrentProcess: PROCEDURE RETURNS [ProcessHandle];
GetCurrentPriority: PROCEDURE RETURNS [ProcessPriority];
EnumerateProcess: PROCEDURE
[PROCEDURE [ProcessHandle] RETURNS [BOOLFAN]] RETURNS [ProcessHandle];
DesLroyProcess, MakeProcessReady, ActivateProcess.
DeAct ivateProcess: PROCEDURE [ProcessHandl e];
Disablelnterrupts: MACHINE CODE = INLINE [Mopcodes.zIWDC];
[nablelnterrupLs: MACHINE CODE = INLINE [Mopcodes.lDWDC];
END.