Consider the following multi-threaded C code. 1: void send_m…

Consider the following multi-threaded C code. 1: void send_money ( acct * src , acct * dst , int amount ) { 2: lock (& src -> mutex ); 3: if (src -> value >= amount ) { 4: src -> value -= amount ; 5: lock (& dst -> mutex ); 6: dst -> value += amount ; 7: unlock (& dst -> mutex ); 8: } 9: unlock (& src -> mutex ); 10: } (a) Describe any bug(s) you see along with the line number. You need to justify your answer (b) Now revise the code to fix the bug. (you need to write the entire code (whatever lines given) with the change)

In the Producer code, the counter++ is implemented as     re…

In the Producer code, the counter++ is implemented as     register1 = counter     register1 = register1 + 1     counter = register1 In the consumer code, the counter– is implemented as     register2 = counter     register2 = register2 – 1     counter = register2 Assume the producer produces one item and does counter++, and the consumer consumes it and runs counter– Consider this execution interleaving with “counter = 3” initially: S0: producer execute register1 = counter        S1: producer execute register1 = register1 + 1   S2: consumer execute register2 = counter     S3: consumer execute register2 = register2 – 1  S4: producer execute counter = register1         S5: consumer execute counter = register2     Hence, the final value of the counter for the producer will be [Ans1], and the consumer will be [Ans2] where the correct value of the counter will be [Ans3]

Bram does not ever want to get married. The idea of a lifeti…

Bram does not ever want to get married. The idea of a lifetime commitment makes him anxious and uncomfortable, and any time a girlfriend brings up the subject of marriage, he breaks up with her. According to Erikson, Bram will not successfully resolve the ____________ crisis.