1 and 2 -> The algo says the marker is processed before any other messages are sent or received. In other words -- when tha marker is detected (by the runtime system or library) the process is frozen, a checkpoint taken (if needed) the marker is propagated (if needed) channel state is recorded -- and then the process is restarted.
2. Yes they can change simultaneously. Which happens for unrelated or concurrent events. Which means they can be assumed to have happened in any order. So we assume P1 changes first or P2 changes first.