Answer
a.
The CPU that is trying to add 1 to the cell can first read the value in the cell. Following this the other CPU reads the cell’s value. (Note that at this point both CPUs have retrieved the same value.) If the first CPU now finishes its addition and writes its result back in the cell before the second finishes its subtraction and writes its result, the final value in the cell reflects only the activity of the second CPU.
b.
The CPUs might read the data from the cell as before, but this time the second CPU might write its result before the first. Thus only the activity of the first CPU is reflected in the cell’s final value.
Work Step by Step
a.
The CPU that is trying to add 1 to the cell can first read the value in the cell. Following this the other CPU reads the cell’s value. (Note that at this point both CPUs have retrieved the same value.) If the first CPU now finishes its addition and writes its result back in the cell before the second finishes its subtraction and writes its result, the final value in the cell reflects only the activity of the second CPU.
b.
The CPUs might read the data from the cell as before, but this time the second CPU might write its result before the first. Thus only the activity of the first CPU is reflected in the cell’s final value.