Safe Semantics

In computing and computer networking, safe semantics describes the guarantees provided by a data register shared by several processors in a parallel machine or in a network of computers working together.

Safe semantics are defined formally in Lamport's "On Interprocess Communication", published in Distributed Computing 1, 2 (1986), 77–101. (This also appeared as SRC Research Report 8.)

Safe semantics are defined for a variable with a single writer but multiple readers. These semantics are weak: they only guarantee that there is a total ordering of the writes and that a read which is not concurrent with any write will return the latest value. If a write is concurrent with the read then any value can be returned (for example, if a variable had value 5 and was being changed to 6 during the read, the read function could return 8). The only exception is that values which could not be held by the variable must not be returned; for example, if the variable can hold values between 0 and 255 then the read function must never return 257.

Famous quotes containing the word safe:

    Children also need opportunities to practice being less than perfect. They can afford to be ill tempered with us because it is our love that is most constant. This is the essence of unconditional love.... Our steadfast love provides a safe haven.
    Cathy Rindner Tempelsman (20th century)