Mail Archives: djgpp/1998/07/02/07:30:32
Eli Zaretskii wrote:
> > Running bash under NT the system becomes considerable slower.
> Everything is slower on NT ;-).
In know. But this is slower than the NT slowliness. :)
> Please use the system monitor tool to see whether Bash indeed places any
> significant CPU load on the system when it idles. Please report what did
> you see.
It's NTVDM.EXE that takes all the time. I noticed that it start soon after
activating the window where my bash is running after calling a few
programs. When I activate other windows the idle behaviour is better. Also
when I minimize the dos box with bash the behaviour is ok. But it is rather
annoying when I have two dos boxes running and switching between them.
> Bash calls the __dpmi_yield function in its idle loop, which is supposed
When is the idle loop? Is it triggerd by minimizing or losing the focus? It
seems that way, because this it the time when the load is quite heavy.
> to yield the rest of its time slice, so Bash at least tries to be a good
> citizen in the multi-programming environment (I don't know about NC, and
> it should be obvious that any analogy between those two is null and void,
> at least theoretically).
Yes, I know. :) I just mentioned it anyaway. :)
> In particular, if you do see significant load during Bash idle time, you
The signifikant load is not in the idle time. It is when the dos box is
active. Let's assume that I start the compiler and it runs through. After
this is finished I switch to another dos box and start the command. As long
as the dos box is on screen the load is significant. I have to minimize the
box and then everything is back to normal but keeping the window visible is
a pain.
> I attach the new version of __dpmi_yield below.
Uff! This means I have to recompile bash. :) Thanks anyway, but I don't
know when I have the time to try it.
> #include <errno.h>
> #include <dpmi.h>
>
> void
> __dpmi_yield(void)
> {
> __dpmi_regs r;
>
> r.x.ax = 0x1680;
> r.x.ss = r.x.sp = r.x.flags = 0;
> __dpmi_simulate_real_mode_interrupt (0x2f, &r);
> if (r.h.al == 0x80)
> errno = ENOSYS;
> }
--
Bye,
Gerhard
email: sparhawk AT eunet DOT at
g DOT gruber AT sis DOT co DOT at
Harrison's postulate:
For every action, there is an equal and opposite criticism.
- Raw text -