Design a new op-code for the 9s12 and use it to rewrite


Consider the following implementation of a spinlock semaphore used with a round-robin preemptive scheduler

1253_60f72f50-787c-4d98-8e42-88a639d85204.png

a) The compiler generated this code for OS_Signal

2134_66a65980-0b19-4598-b0ad-14c6ea7a37ef.png

Are there any critical sections in OS_Signal? That is, can two threads both call OS_ Signal? Justify your answer.

b) Design a new op-code for the 9S12, and use it to rewrite OS_Wait so the spin lock semaphore can be executed without critical sections and without disabling interrupts. Be VERY specific about what the new instruction does (e.g., addressing modes, condition code bits). The 16-bit pointer, semaPt, will be in Register D when OS_Wait is called.

Request for Solution File

Ask an Expert for Answer!!
Mechanical Engineering: Design a new op-code for the 9s12 and use it to rewrite
Reference No:- TGS01468268

Expected delivery within 24 Hours