Consider the following main function in a Go program which c…

Consider the following main function in a Go program which crashes (panic) eventually: func main(){    fmt.Println(“Start”)   defer fmt.Println(“Deferred call”)   panic(“Crashed”)} The deferred call in the main function will still be executed when this program is run.

For each of the following, select True or False: 1. Deadlock…

For each of the following, select True or False: 1. Deadlocks cannot occur with the flagging interest approach to busy waiting because each process indicates its interest in entering the critical region by setting a flag. [flag] 2. By combining the ideas of alternating turns and flagging interest, the Peterson Solution to busy waiting avoids deadlocks. [peterson] 3. When using a mutex, the process will block and yield the CPU if it cannot acquire the lock, rather than spinning. [mutex] 4. Mutual exclusion via message passing is limited to processes on the same machine. [message]

For each of the following statements regarding procedure cal…

For each of the following statements regarding procedure calls, mark true or false: 1. Parameters can be passed by name, using a variable’s name directly. [varName] 2. Procedure calls are named code. [nameCode] 3. A pointer to entry/return is typically found in a procedure call. [Pointer] 4. Procedure calls never contain local variables. [local]