This section considers the implementation of an intra-domain scheduler to provide a familiar threaded environment. The intra-domain scheduler is the code which sits above the virtual processor interface. The code is not privileged and can differ from domain to domain. It may be very simple (in the case of a single threaded domain), or more complex.
The base technique for synchronization that was adopted within domains was to extend the use of the core Nemesis events already present for interdomain communication, and provide event counts and sequencers . These event counts and sequencers can be purely local within the domain or attached to either outbound events (those which can be propagated to another domain using send()) or inbound events (those which change asynchronously as a result of some other domain issuing a send()).