[cs63201] QUESTIONS ABOUT ADVANCED OPERATION SYSTEM

Mikhail Nesterenko mikhail at cs.kent.edu
Thu Sep 1 18:33:52 EDT 2011


> 
> 1.  In codes of* Proc g* of *message passing* in 7th page of
> *l01intro.theory.ppt,
> *unlike other processes, *Proc g *doesn?t contains a *Boolean** pr**edicate,
> *and it is said in the lecture that it will be executed only when the
> channel is not empty. But I can?t see any restriction can make the codes
> achieve the function of being guarded, and I assume that the *Proc g *would
> be excused even the channel is empty.

Well, the "receive" statement in the guard is a convenient
shorthand. Specifically

	   receive message(data) -->  
	   	   command

is a shorthand for:

     	   if channel is not empty -->
	           receive message(data),
		   command

That is, this guarded command is only enabled when there is
a message in the channel.


> 2.  The second question is about the concept of *atomic operation*
> in the 8 th page of *l01intro.theory.ppt*, does ?*cannot
> interleave*? means that only in the condition of no other atomic
> operations are able to be executed could one atomic operation be
> executed?

Atomic action execution cannot interleave (i.e. overlap). Atomic
actions can be executed jointly under powerset execution semantics or
in synchronous execution.  Under interleaving semantics, only one
atomic action can be executed at a time.

> 
> 3.  In the 10th page of *l01intro.theory.ppt*, it is said that* ?**a
> computation is weakly fair if no action is enabled in infinitely many
> consequent states without being executed (no process can **?**get
> stuck**?**forever)
> **?*, does it means that if a computation are able to meets its fixpoint
> then we could say the computation is *weakly fair**?*

That is something I asked you folks to think about. That is, can a
finite computation not be weakly fair? If yes, give an example; if
not, explain why not.

Also, the definition of weak fairness in the slides may be a bit
misleading. A more precise definition of weak fairness,
even if it takes a bit to think about it, is this:

      if an action (guarded command) is enabled in all but finitely
      many states, it is executed infinitely often.

Also, you folks asked about strong fairness definition. Here it
is:
      if an action (guarded command) is enabled in infinitely 
      many states, it is executed infinitely often.

Here is a question for you for our next meeting.  One of the programs
that we discussed in class can generate computations that are weakly
fair but not strongly fair. Come up with an example of such
computation.

Thanks,
-- 
Mikhail


More information about the cs63201 mailing list