[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: "Real" Multitasking (Re: GNO questions...)



Sorry for the second post in a row, but I just reread my post and I think I
failed to emphasize what was in fact the point of my original post, and the
point of the paragraph where I correct the individual who mistakenly thought I
was saying you MUST use a certain approach for a certain application.  Let me
explain what I've been trying to say all along by anology:

Someone asks, "Which is the best computer: a Mac, an IBM compatible, an Amiga,
an Apple IIgs, or a Unix box?"  An ignorant individual would reply to this
question with, "The [insert your favorite here] is the best."  A more
knowledgable individual would reply with the question, "What are you going to
use it for?"  Each of the above systems is better than all of the others for
some purposes.  The question is unanswerable without further information.

Likewise, if someone asks, "Which is better, cooperative or preemptive
multitasking?" an ignorant individual would reply "[one or the other] is
better."  A more knowledgable programmer knows that each has its advantages and
disadvantages.  Only the ignorant believe one is better than the other, period.

Someone actually sent me mail saying they were glad I posted what I originally
did, because everytime they mention [their favorite multitasker], people jump
on them and berate them because it isn't preemptive.  This is ludicrous
behavior.  I rose to the defense of cooperative multitasking because everyone
seems to be putting it down.  I do not myself believe cooperative multitasking
is better than preemptive multitasking.  But neither do I believe that
preemptive is better than cooperative.  It's situational.  In general, I prefer
preemptive for OS's, and cooperative for threads withing a single program, but
I can think of counter-examples for each!

So, what I'm really saying is this: stop ragging on one or the other.  It's
pointless.  If you believe [type1] multitasking is better than [type2]
multitasking in all situations, you're an idiot, and you only display your
ignorance whenever you rag on one type or the other because you believe [type1]
is always better in all situations.  Neither approach is the best, nor can you
know which is the best for a situation until you've fully explored the pros and
cons of that situation.  I gave my rules of thumb that I use in my original
post, but I never meant them to be taken as anything more than that.  They were
only rules of thumb, and weak ones at that.  There is no one answer to the
question, so let's stop stomping on [such and such a system] just because it
uses [such and such an approach].

-GTR