From: mph@plasma.apana.org.au (Martin Peter Howell) Subject: Re: I can malloc more memory than I have. Date: Thu, 29 Oct 1992 23:17:05 GMT
johnhm@vaxc.cc.monash.edu.au writes:
>In article <1992Oct27.105511.17819@klaava.Helsinki.FI>, torvalds@klaava.Helsinki.FI (Linus Torvalds) writes:
>>
>> While it's true that a kernel process won't be rescheduled while it
>> still runs, this should be no problem: all the system calls, traps and
>> interrupt handlers are designed to cope with that (although there may
>> actually be some busy waiting in the SCSI-driver). The reason x11perf
>> seems to bring the machine to it's knees is not that the kernel hogs all
>> the time, but because X11 itself is busy calculating things - while the
>> X server does it's calculations, it won't do other screen updating...
>>
>...
>> Linus
> So much for my attempt at generalising, sorry Linus.
>Still it seems like a bit of a misfeature in X11, it would be nice if X11
>could be more adaptive in how it spends its time. Lets hope that someone
>from the MIT X11 group is getting frustrated trying to use X11 on a notebook
>PC :-).
This sort of problem is also the cause of the rather jumpy mouse on even an
unloaded system. The X server can only do one thing at a time and if it has
to do something that takes ages (such as scrolling a large screen area) then
things like the pointer update stop. I find this one of the biggest down
sides of X at the moment. A better design may may be to have the pointer
plotting as a seperate process which can then run whilst the server is doing
something else however I suspect there would be technical problems with
this approach (due to screen getting updated without the pointer process
knowing). This, however, would not occur if we could use a hardware pointer
such as provided by S3 graphics boards. Does anyone know if such a thing
has been looked into?
-Martin.
mph@plasma.apana.org.au