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)

4,353 Comments

  1. The pacing of the post was just right, never rushed and never dragged out unnecessarily, and a look at qivlumo maintained the same rhythm, you can tell the writer has experience because the difficult skill of pacing is something only practiced writers manage to handle well in long form content over time and across formats.

  2. Bookmarking this for later, the kind of resource I want to keep nearby, and a quick look at nylonplain confirmed the rest of the site is worth the same treatment, definitely going into my reference folder for the next time the topic comes up at work or in conversation with someone who asks.

  3. Now realising the post has been quietly doing important work in my mind for the past hour, and a stop at nationmagma extended that quiet processing, content that continues to do work after I close the tab is content with afterlife in the mind and this site is producing those long lived effects at a meaningful rate.

Leave a Reply

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