Question |
Raised by |
Status |
Solution |
Take
the example in the slides: Thread
1 Thread 2 Thread 3 Thread 4 P2.send(a) x=p2.recv(); u=p3.recv() p2.send(b) y=p2.recv(); v=p3.recv() p3.send(d); p3.send(c); How
many distinct execution traces does this produce? |
Alford, Ronald Wayne |
Need
Solution |
|
In
prefix based testing, the first few runs are deterministic. What heuristics
can be used so that once a few deterministic runs have completed, the later (non-deterministic)
phase can be carried out effectively and efficiently. |
Bahety, Anand Baldeodas |
Need
Solution |
|
During
the execution of a program, several threads may be spawned and destroyed in
the middle of the execution. How does Reachability Testing
deal with threads being spawned and destroyed in the middle of the execution
of the program? Give an example? |
Bucatanschi, Dan George |
Need
Solution |
|
|
Chandra, Deepti Jagdish |
Need
Question |
|
|
Huynh, Thuan Quang |
Need
Question |
|
|
Nguyen, Bao Ngoc |
Need
Question |
|
How is
the reachability testing algorithm able to execute
every partially ordered SYN-sequence exactly once (remember that the test
history is not being saved)? |
Konda, Shravya Reddy |
Need
Solution |
|
Two
timestamp assignment schemes are described in the paper: Thread-centric,
where a logic clock is kept for each thread and Object centric where there is
a version number for each synchronization object. Why does the author mention
two separate schemes? |
Lee, Joonghoon |
Need
Solution |
|
The aim
of the optimization is to visit a SYN-sequence once. How is this guaranteed?
How does the proposed technique determine the order of events that occur
simultaneously? |
Liu, Liping |
Need
Solution |
|
In section
4.1.1, the authors describe a new thread-centric timestamp scheme for
semaphores, locks, and monitors. What is the difference between the new
timestamp and original thread-centric timestamp? Why do they need to define
this new timestamp? |
Wongsuphasawat, Krist |
Need
Solution |
|
What
assumptions do the authors make that causes them to conclude that each
SYN-sequence should be executed only once? |
Reisner, Elnatan
Benjamin |
Need
Solution |
|
Why are
lead races the only type of race conditions that need to be identified to do reachability testing? |
Schulman, Aaron David |
Need
Solution |
|
The
authors define event equality based on the “control-structure” of an event.
Explain what is meant by the control structure of an event, and how does it
differ between the sending and the receiving events. |
Sharara, Hossam Samy Elsai |
Need
Solution |
|
It
appears that this technique will not work on preexisting software because it
requires the use of their special synchronization classes during development.
How could this technique be adapted so it can be used on existing software? |
Stuckman, Jeff |
Need
Solution |
|
A race
condition exists between two sending events if they can be synchronized with
the same receiving event in different executions. What is a race set? |
Teoh, Alison Lui Koon |
Need
Solution |
|
|
Thakor, Shashvat Advait |
Need
Question |
|
|
Vador, Sachin Shashikant |
Need
Question |
|
What
are the goals of reachability testing, and how does
it compare to deterministic and non-deterministic testing? |
Donlon, Eileen Merle |
Need
Solution |
|
What is
the state explosion problem and where does it occur? For which systems is it
still useful to do this kind of verification? |
Zazworka, Nico |
Need
Solution |
|