If this is true, please explain how Lamport Logical Time maintains this
invariant. If it is not true, please explain why this isn't necessarily
the case and please draw a figure depicting one such example.
This approach, on its face, is unfair. Some hosts are more likely to win than others. Why don't we just assign random numbers to these events to break the tie, or, more precisely, order concurrent events randomly? Would this approach provide for a total ordering? Why or why not?
Hint: Although the answer isn't dependent on the type of
communication, it might help to consider multicast.
Please adapt Maekawa's voting district scheme to solve the "at most n users" mutual exclusion problem. In other words, please adapt it so that it allows not more than "n" users to access the shared resource at a time. Your new design should be as loyal to the original design as is practical.
If it does not make sense to use an adaptation of Maekawa's
protocol for this purpose, please explain the reason.
Please select one among the mutual exclusion protocols from our in class discussion and adapt it to enforce reader-writer locks, instead of mutual exclusion. Needless to say, you should select a protocol which cna be usefully adapted for this purpose. Your new protocol should be as loyal to the original as is practical.
A read-writer lock allows readers to share an object with other
readers, but ensures that a writer excludes both other writers and
also readers. Sometimes this protocol is described as "Shared reads,
exclusive writes". Readers should starve writers.