Welcome, Guest. Please login or register.

Author Topic: A-EON Interview about Amiga's future - Distrita  (Read 11912 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline Hans_

Re: A-EON Interview about Amiga's future - Distrita
« on: June 07, 2015, 10:45:45 PM »
Quote from: Iggy;790761
No, it doesn't.
And we've discussed this before on this site.
It has just the type of task switching scheme I mentioned.
Doubt me?

Yes, I do doubt you. I have no idea where you get the idea from that AmigaOS has a "cooperative" multitasking system rather than preemptive. The original MacOS was a cooperative multitasking system where you had to sprinkle your code with calls to yield the CPU. AmigaOS has no such function, because the OS will preemptively switch between tasks on a prioritized round-robin basis. I've never heard anyone claim that it's not preemptive... until now.

Sure, it has no "fairness" algorithm** (unless you have Executive installed) and setting the task priority to max almost kills multitasking. However, try setting a CPU intensive task to REALTIME_PRIORITY_CLASS, THREAD_PRIORITY_TIME_CRITICAL in Windows and see what happens. It's not pretty... Neither of these aspects demote AmigaOS from preemptive to cooperative, though.

Quote from: Iggy;790761
Find a module in Amiga OS that sets the priority level.

exec.library->SetTaskPri() sets a task's priority. Or are you asking something else?

Hans


** NOTE: AmigaOS 4.x has a "pluggable" scheduler, so it could be updated with different scheduling algorithms in future.
http://hdrlab.org.nz/ - Amiga OS 4 projects, programming articles and more. Home of the RadeonHD driver for Amiga OS 4.x project.