Figure is a listing of code intended for use on the eCos kernel.
a. Explain the operation of the code. Assume thread B begins execution first and thread A begins to execute after some event occurs.
b. What would happen if the mutex unlock and wait code execution in the call to cyg_cond_wait, on line 30, were not atomic?
c. Why is the while loop on line 26 needed?