On Tue, 2003-06-03 at 09:06, Muli Ben-Yehuda wrote:
> On Tue, Jun 03, 2003 at 08:46:09AM +0300, Gilboa Davara wrote:
> 
> > Argh.
> > I never said that it had anything to do with A. Scheduling or B.
> > Security. 
> 
> That's what your sentence above implied, but it may or may not be my
> lack of reading comprehension.
> 

My mistake then.
I was just stating that though very blessed work has been done to
improve the arcane (sp?) posix threads, there's still a long way to go.

> > I did say that NT still has a lead on that front.
> 
> And I'm asking: why? what makes it better? this is not idle bantering
> - I'm actively looking for areas of Linux that can be improved, and MS
> has been known to have good ideas once in a while ;-) 

Posix thread library is problematic.
Here's a couple of examples.
A. Threads: 
Lack of true, low level, thread control.
For instance, in Win32 I can save a thread's context, suspend it
remotely (from another thread or even a controlling process) implant the
saved context into it, and it'll continue running from the were I
stopped it. (Kind'a like hardware interrupt)
Under Win32 the thread scheduling is more robust, I've got more levels
of control between low, normal, and real time. (Without messing with the
scheduling type, FIFO, RR, etc) 
Oh, and the lack of true smart wait function is problematic. (I usually
create a mutex that goes with a thread to emulate a true thread wait
function.)

B. Events (posix conditions).
Wait it doesn't work right (PulseEvent never did... MS, like MS, just
refuses to fix it), NT events are much easier to use, and have much
better control. The posix conditions are a just pain in the back side.

C. Process.
fork + exec, is far less effective and feature rich then CreateProcess
(Or, CreateProcessAsUser, etc)

D. Process, Thread control.
Lack of Affinity mask (Ability to divert a single process / thread to be
used on CPUn,y,z outside the OS's discretions)

E. Wait functions.
WaitForSingleObject (WaitForMulitpleObjects) is by far better then
anything posix. The ability to create a single wait that will work on
threads, processes, files, events, mutexes, etc, is a true blessing.
I'm currently looking into ways to emulate the WaitFor* on posix
machines. 

> 
> > Oh. Here's something I don't get. Why can't one say a single word in
> > favor of Windows without it being considered a flamebait?
> 
> You can say anything you want, including statements in favor of
> Windows, provided you back them up. "$OS is better" is a
> troll. "$OS is better because of the scheduling algorithm,
> described in [REF] and implemented in the file sched.c" is a welcome
> piece of information. 

Sadly I'm no guru.
Though I've contributes in the past several fixes and the Linux
community, I fear that I can contribute little to the kernel development
level. (Not from a lack of will... just lack of knowledge).

Having said all that, If'll find a way to implement a single wait
function, I'll be happy to share it.
(Actually I do have a open source linux project of my own, but I
digress)

Make no mistake, I rather work harder with less features at my hand
under an stable and open environment (Linux) then to work with feature
rich APIs, that run under a close, unstable environment from hell.
(Windows, from MS...)

-- 
Take care,
Gilboa Davara
XML - Systems Israel.
mailto:[EMAIL PROTECTED]




=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to