SparcSoftcardMap.Mesa
Copyright Ó 1988 by Xerox Corporation. All rights reserved.
Bill Jackson (bj) April 19, 1988 1:56:49 am PDT
Christophe Cuenod October 18, 1988 11:22:36 am PDT
Christian Le Cocq October 31, 1988 10:41:49 am PST
SparcSoftcardMap: DEFINITIONS ~ {
MapEntry: TYPE = RECORD [
flags: Flags,
vMSpace: VMSpace,
virtualAddressByte: CARD32,
realAddressByte: CARD32
];
Flags: TYPE = RECORD [
dirty: BOOLEANFALSE,
referenced: BOOLEANFALSE,
readOnly: BOOLEANFALSE,
nonCachable: BOOLEANFALSE,
interrupt: BOOLEANFALSE
];
VMSpace: TYPE = RECORD [
name: VMSpaceName,
task: CARD32 ← 0
];
VMSpaceName: TYPE =
{dMA, iOP, cP, sparcUserData, sparcUserProgram, sparcSuperData, sparcSuperProgram};
WriteMapEntry: PROC [mapEntry: MapEntry];
ReadMapEntry: PROC [ mapEntry: MapEntry ] RETURNS [ oldMapEntry: MapEntry ];
The map is a in fact a cache. The space can be occupied by another entry.
}.