| ... | ||||
| ... | ||||
At the cell [
,
] the
actions the process must do when its state is
and
it is affected by
are filled in. The actions should
be written in pseudo-code. After filling the table up, the algorithm
becomes more clear to implement: each cell in the table is a procedure
in the protocol source code. Of course, if two cells have the same
content, only one procedure is enough. From the table, we can also
identify how many local variables are necessary for each process.
For instance, from the Broadcast with ACK algorithm description in Section 3.2.1, we realize that there are at least two events: receiving a broadcast message and receiving a ACK message and two states: sleeping at the beginning and waiting for ACK messages. Therefore, we have the following table
Now, the design step where the algorithm is changed into clearer form is completed. However, to implement a protocol, the we needs to know which information he can get from system and which system variables we can use to implement our own protocol. Therefore, the next subsection will introduce available system information in LYDIAN, which is useful for users.