SASOS Distributed shared memory

SASOS DSM supports the interconnection of homogeneous machines using a LAN. Nodes communicate by transmitting messages on the network which implement the up/down protocol, ARP, shared-memory protocol and the data coherence protocol.
The DSM is formed by extending the paged VM addressed by each node to a single network-wide paged VM. The pre-determined fixed page sizes form the unit of transfer between nodes. The address translation unit (ATU) supports the mapping of pages as read-only or read-write, and maintains a modify bit which indicates whether any byte in the page has been modified.

  • A unique node number is allocated to each system at the time of manufacture
  • The node number forms the high order bits of addresses

Address format

Node no. Volume no. Within volume AS number Within AS page Offset
  • When a new address space is created it is allocated an address space number with the unique node number of the creator embedded in it. Every AS number (and therefore module number) is unique network-wide.
  • If the module is not moved, the AS number defines the node and within-node volume on which the AS is stored.
  • The node at which a module is stored is called the owner node. These act as page-servers for their pages.
  • When a page fault occurs on a DSM machine the kernel checks the node number field of the virtual address to see whether the fault may be resolved from the local disk. If not, the page fault is considered to be a remote page fault.
  • Remote page faults are resolved by transmission of a page request message to the appropriate owner node. The ID of the owner node is determined from the address itself.
  • No shared memory page table is necessary to determine page ownership.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License