-- SpecialSystem.mesa (last edited by: McJones on: May 30, 1980 4:43 PM) SpecialSystem: DEFINITIONS = BEGIN -- Network addresses NetworkAddress: TYPE = MACHINE DEPENDENT RECORD [ net: NetworkNumber, host: HostNumber, socket: SocketNumber]; nullNetworkAddress: NetworkAddress = [net: nullNetworkNumber, host: nullHostNumber, socket: [0]]; NetworkNumber: TYPE = MACHINE DEPENDENT RECORD [a, b: UNSPECIFIED]; nullNetworkNumber: NetworkNumber = [0, 0]; HostNumber: TYPE = MACHINE DEPENDENT RECORD [ SELECT type: * FROM physical => [a: CARDINAL [0..32768), b: CARDINAL, c: CARDINAL], multicast => [a: CARDINAL [0..32768), b: CARDINAL, c: CARDINAL], ENDCASE]; -- A physical host number is assigned to an actual system element. A multicast host number names a logical group all wishing to receive a particular class of multicast packets. nullHostNumber: physical HostNumber = [physical[0, 0, 0]]; -- The number of no host; must be kept consistent with the communication interfaces! MulticastID: TYPE = multicast HostNumber; broadcastHostNumber: HostNumber = [multicast[LAST[CARDINAL [0..32768)], LAST[CARDINAL], LAST[CARDINAL]]]; -- A special host number used for broadcasting messages; must be kept consistent with the communication interfaces! SocketNumber: TYPE = MACHINE DEPENDENT RECORD [UNSPECIFIED]; nullSocketNumber: SocketNumber = [0]; -- Processor identifiers ProcessorID: TYPE = physical HostNumber; nullProcessorID: ProcessorID = nullHostNumber; GetProcessorID: PROCEDURE RETURNS [p: ProcessorID]; -- Return the ProcessorID by which this system element is known to software, Ethernet, etc. END. LOG Time: January 25, 1980 3:12 PM By: Dalal Action: Created file Time: January 27, 1980 7:12 PM By: Forrest Action: Corrected file creation date Time: May 9, 1980 1:36 PM By: McJones Action: Changed to 48-bit processor id, added network address types