Skip to content

Ex 1 – Dedicated Operating Systems – INE5424 – UFSC

Exercise 1
Idle-waiting Thread Joining
– It have as an objective to change the method “join” of a Thread. It was implemented like this:

[code lang=”c”] while(_state != FINISHING)
yield();
[/code]

This method consist in verify the state of the Thread that is joined, if the state is different from FINISHING, it calls yield(). This solution cause an overhead, because it do this verification all the time that the process is Phased. We should implement a new function, that don`t cause this overhead.

Modified files:
thread.cc
Thread.h

EPOS with our solution.
Steps, and explanation about other solutions (PORTUGUESE)

8,205 Comments

  1. Wow that was strange. I just wrote an incredibly long comment but after I clicked submit my comment didn’t show up. Grrrr… well I’m not writing all that over again. Anyway, just wanted to say superb blog!

Leave a Reply

Your email address will not be published. Required fields are marked *