D
D
Denis2012-01-10 00:03:48
Algorithms
Denis, 2012-01-10 00:03:48

What is the difference between safe, regular and atomic (safe, regular, atomic) registers?

I understand the basics of parallel programming. Came across the following concepts.
A register is a memory location that can be written/read. They are different, but registers of the types “writes a lot, reads a lot” (multi reader, multi writer - MRMW) and “one writes, reads a lot” (multi reader, single writer - MRSW) are especially interesting in the context. (Everything is clear here, but please correct me if it's wrong). They serve to create locks (locks), mutual exclusions (mutex), "resolving" other disputable situations (consensus, for example).
The register can be:

  • safe (safe register) - means that writing and reading by different streams do not overlap each other. This is more or less clear.
  • regular (regular register) - (starts here ...) is different in that it returns the old value when read and write operations do not overlap and new or old if they overlap.
    Approximate scheme:
    flow1. writes ( 0 )_________ to stream1. writes ( 1 )______________>
    ________________ stream2. reads ( 1 )__thread2. reads ( 0 )________ time _____>
    I don't quite understand how it is possible to stream2read 0 if write 1 has already passed (and it passed, because it confirms that regular registers are not linearizable ... sort of ...).
  • atomic (atomic register) - this means that the register can be brought through linearization to a sequential safe register.

Question on atomic and regular registers. In principle, you can use "literal" truths, because I am at the very beginning.
Thanks in advance!

Answer the question

In order to leave comments, you need to log in

2 answer(s)
D
Denis, 2017-07-15
@AbdulBcex

For those who know English language:
https://stackoverflow.com/questions/8871633/whats-...

R
rasa, 2012-01-10
@rasa

difference between a regular register and an atomic one

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question