X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f Message-ID: <0BA32251E589D2118EA60008C70DDCAB025F9193@JNJFRISEXS1.eu.jnj.com> From: "Baribaud, Christophe [JNJFR]" To: "'Eli Zaretskii'" Cc: "'djgpp AT delorie DOT com'" Subject: RE: TR: LWP and Windows 2000 Date: Fri, 1 Feb 2002 09:31:39 +0100 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: multipart/alternative; boundary="----_=_NextPart_001_01C1AAFA.DECFF0C0" Reply-To: djgpp AT delorie DOT com This message is in MIME format. Since your mail reader does not understand this format, some or all of this message may not be legible. ------_=_NextPart_001_01C1AAFA.DECFF0C0 Content-Type: text/plain You are right, I am wrong ;-( Irq8 handler calls __djgpp_hw_exception, which nukes DJGPP's DS and returns, so real multi-threading operations occurs when the processor accesses this DS. This occurs when it is in the good time slice... So, I am very pessimistic... We may consider at this point that LWP can't work under Windows NT, in its preemptive form, and that signals can't work. Positive points : LWP works in non-preemptive mode (without irq8 handler), and I don't have any problem with serial communications, using DZCOMM. Allegro works fine too. Of course, it is not a good idea to use DJGPP under Windows 2000 to develop Windows 2000 applications, but it is quite useful to cross-develop and test DOS applications (that is my need). Regards CB -----Message d'origine----- De : Eli Zaretskii [mailto:eliz AT is DOT elta DOT co DOT il] Envoye : jeudi 31 janvier 2002 17:18 A : Baribaud, Christophe [JNJFR] Cc : 'florian DOT proff DOT schulze AT gmx DOT net'; 'djgpp AT delorie DOT com' Objet : Re: TR: LWP and Windows 2000 On Thu, 31 Jan 2002, Baribaud, Christophe [JNJFR] wrote: > I have just done tests and tried patches to LWP, and I have an idea why it > doesn't work under Windows 2000. > LWP and Windows are both multi-threading preemptive environments, and they > do preempt each other mutually. I don't know why do you say this. LWP cannot by definition preempt Windows because the DJGPP program using LWP is just one of the programs running on the system, and it is fully under the Windows control: it only runs whenever Windows gives it the CPU. I think the problems on Windows 2000 are related to the general issue with DJGPP signal handling on the NT family of Windows. For more details about these problems, see section 3.3 of the DJGPP FAQ list. ------_=_NextPart_001_01C1AAFA.DECFF0C0 Content-Type: text/html Content-Transfer-Encoding: quoted-printable RE: TR: LWP and Windows 2000

You are right, I am wrong ;-(

Irq8 handler calls __djgpp_hw_exception, which nukes = DJGPP's DS and returns, so real multi-threading operations occurs when = the processor accesses this DS. This occurs when it is in the good time = slice...

So, I am very pessimistic...

We may consider at this point that LWP can't work = under Windows NT, in its preemptive form, and that signals can't = work.

Positive points : LWP works in non-preemptive mode = (without irq8 handler), and I don't have any problem with serial = communications, using DZCOMM. Allegro works fine too.

Of course, it is not a good idea to use DJGPP under = Windows 2000 to develop Windows 2000 applications, but it is quite = useful to cross-develop and test DOS applications (that is my = need).

Regards
CB



-----Message d'origine-----
De : Eli Zaretskii [mailto:eliz AT is DOT elta DOT co DOT il]=
Envoye : jeudi 31 janvier 2002 17:18
A : Baribaud, Christophe [JNJFR]
Cc : 'florian DOT proff DOT schulze AT gmx DOT net'; = 'djgpp AT delorie DOT com'
Objet : Re: TR: LWP and Windows 2000



On Thu, 31 Jan 2002, Baribaud, Christophe [JNJFR] = wrote:

> I have just done tests and tried patches to LWP, = and I have an idea why it
> doesn't work under Windows 2000.
> LWP and Windows are both multi-threading = preemptive environments, and they
> do preempt each other mutually.

I don't know why do you say this.  LWP cannot by = definition preempt
Windows because the DJGPP program using LWP is just = one of the programs
running on the system, and it is fully under the = Windows control: it only
runs whenever Windows gives it the CPU.

I think the problems on Windows 2000 are related to = the general issue
with DJGPP signal handling on the NT family of = Windows.  For more details
about these problems, see section 3.3 of the DJGPP = FAQ list.

------_=_NextPart_001_01C1AAFA.DECFF0C0--