Promela model for process_poll()

|
1 |
proctype process_poll(chan process_poll_sync_chan;chan params_chan) // ---process.c\process_poll:370-380 |
2 |
{ |
3 |
int p; |
4 |
params_chan ? p; |
5 |
if |
6 |
::p != NULL -> |
7 |
if //process.c\process_poll:374-378 |
8 |
::(processes[p].state==PROCESS_STATE_RUNNING)||(processes[p].state== PROCESS_STATE_CALLED) -> |
9 |
processes[p].needspoll = 1; |
10 |
poll_requested = True; |
11 |
:: else -> skip; |
12 |
fi; //End of process.c\process_poll:374-378 |
13 |
:: else -> skip; |
14 |
fi; |
15 |
process_poll_sync_chan ! 0; |
16 |
} // ---End of process.c\process_poll:370-380 |
|
Control flow abstraction of process_poll()
|
Promela model of process_poll()
|