Welcome, Guest. Please login or register.

Author Topic: www.anubis-os.org finally open  (Read 36217 times)

Description:

0 Members and 2 Guests are viewing this topic.

Offline Speelgoedmannetje

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 9656
    • Show all replies
Re: www.anubis-os.org finally open
« on: March 19, 2009, 02:40:56 PM »
Quote

Piru wrote:
@Khephren
Quote
Excelent Multi tasking.

AmigaOS scheduler is rather lame. Any busy higher priority task will block lower priority ones forever. Having tons of tasks results in exponential slowdown inside the scheduler (it uses linear list walking). There is no guaranteed fairness in the scheduler. Anything has a better scheduler these days.
Ehm, IIRC AmigaOS uses a Round Robin scheduler (the most basic pre-emptive scheduler), with which scheduling starvation does not exist.
And the canary said: \'chirp\'
 

Offline Speelgoedmannetje

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 9656
    • Show all replies
Re: www.anubis-os.org finally open
« Reply #1 on: March 19, 2009, 06:53:58 PM »
Quote

Trev wrote:
Quote

Ehm, IIRC AmigaOS uses a Round Robin scheduler (the most basic pre-emptive scheduler), with which scheduling starvation does not exist.


Yes, but when a task's time slice expires, it's Enqueue()'d on the task ready list based on priority. If that task has the highest priority in the list, the scheduler will continue to schedule the task until it switches to a different state.

So, there's no guarantee that every task will make progress regardless of its priority. That's part of the reason why modern schedulers have some form of priority boosting. "Fairness" in a scheduler is really about making sure that all tasks get at least some CPU time. Completely fair schedulers sacrifice some aspects of prioritization to improve the user experience. ("User" doesn't necessarily mean a person. It could be anything that consumes foo produced by a task.) At least, that's my take on it. I'm not a computer scientist.
That article is rather interesting. Considering that article, it should be possible to make Anubis-OS as responsive as AmigaOS!  :idea:
And the canary said: \'chirp\'
 

Offline Speelgoedmannetje

  • Hero Member
  • *****
  • Join Date: Oct 2002
  • Posts: 9656
    • Show all replies
Re: www.anubis-os.org finally open
« Reply #2 on: March 20, 2009, 12:15:07 PM »
Quote

Einstein wrote:
Quote

Speelgoedmannetje wrote:

Ehm, IIRC AmigaOS uses a Round Robin scheduler (the most basic pre-emptive scheduler), with which scheduling starvation does not exist.


It *does*.
Try:

SetTaskPri (FindTask (NULL), 127);
while (1){
// My task is evil ruler..
}
O.k. I didn't knew that AOS was prioritised RR when I wrote that.
And the canary said: \'chirp\'