On Tue, 2007-06-12 at 22:47 -0700, Chuck Esterbrook wrote:

> 
> Windows doesn't support preemptive multitasking? It's kernel designer
> didn't design threads into it?

Don't confuse preemptive multitasking with threads. Just because it
supports threading does not mean it supports the other. Though it was
stated that NT supported preemptive multitasking, it really never did.
As for W2K and XP, I don't recall if the statement was ever made, but I
seriously doubt they do.

BTW, OS/2 Warp does (just some trivia there, sparked by comments
elsewhere in this thread.)

> 
> If you were talking about Windows 3.1, 95, 98, Me, sure. But NT, 2000,
> XP and Vista do in fact have preemptive multi tasking and threading at
> a kernel level by design. This is fairly well known and easy to
> observe.

NT dose not support true preemptive multi-tasking. I can even give you a
prime example which proved it to us at DIGITAL. Note, DIGITAL was a
development partner of M$.

We had a graphics workstation that used several boards (9 of them) and
several PPC 200MHz for parallel processing power. The system had to
update the frame buffer during the vertical blanking (VB) interval,
which is interrupt driven. The VB interrupt should be very important and
a high priority, and should preempt most anything else in the system.

Well, it turns out that NT (and 2000, XP, and probably Vista), will
handle interrupts - and anything else - as they damn well please. We had
written a VB ISR that would update the frame buffer and a couple other
buffers. We constantly got "tearing" in the video.

After some time playing with code, a logic analyzer, and scope, I
finally discovered the reason. NT was servicing the interrupt at
more-or-less random times. Often the interrupt would come near the end
of the end of the VB interval, leaving almost no time (in computer
terms) to complete the ISR. At other times it would happen right away.
This was the case even when nothing else was happening in the system
(e.g. - no disk IO, no mouse/keyboard input, etc.)

M$ was no help and would not assist us with the problem, which was a big
one. These systems were used by Toyota and other car makers for
designing cars. The system never did work on NT (but the UNIX version
was nearly flawless).

To this day I have problems with Windows multi-tasking and threading
whereas the same applications on Linux work fine.

> 
> I'm sorry you've had so many problems with Windows, but with a message
> like this you cross the boundary from "Microsoft detractor" to
> "Microsoft FUD generator".

I already printed a retraction stating that I was thinking of W2K not
working on Alpha. Again, silly stupid me. :)

> 
> Btw the first search for "Windows interrupts" yields "Microsoft
> Windows Vista includes enhancements to the Windows interrupt
> architecture. These enhancements include support for new and extended
> features." at http://www.microsoft.com/whdc/system/bus/PCI/MSI.mspx

I hope it's far better that all other versions (I'll look at the link
later), but I wouldn't trust anything M$ says without testing it (we
couldn't trust them as partners at DIGITAL).

PGA
-- 
Paul G. Allen BSIT/SE
Owner/Sr. Engineer
Random Logic Consulting
www.randomlogic.com

-- 
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to