utkarsh wrote:Is there any OS in which the window manager is always responsive? In which I can always click on the cross button to close the window and the corresponding program. I have used Ubuntu and Windows but in both of them the GUI, including the mouse, freezes on running any high-memory-consuming program.
Sorry for late reply, I have a bit of experience with this: I have seen the mouse remain responsive in Linux, and it was good. The window manager didn't, but just the mouse helped, and in any case, a powerful window manager can be a remarkably small program. I remember (vaguely) there was a specific extension to Xorg to make this possible. (I think it was XFree86 at the time, it was a long time ago.) This behaviour seemed to go away after some years; perhaps it only worked with the old standard X cursors or something.
Anyway, the trick is to prevent certain code and data from being paged out. It's that simple. The down-side is now you have some things which can't be paged out, and probably want to minimize the size of them. (Fancy cursors aren't that large, are they?) I also guess Linux devs thought it doesn't help to be able to click the close button if the application then has to be paged back in to run its close-window call-back
just in case it wants to decide if it wants to pop up a confirmation dialog. (Repettitive language intentional.) I'm not convinced that's good reason to let pointer control be paged out. For one thing, it was much nicer to see where you're pointing so you can queue up clicks to be executed when the computer's ready. For another, in X with a decent window manager, there's always the option of force-killing windows, which is fine when you know the callback isn't going to do anything useful anyway.
Now I think about it, this is a notable part of why I feel Linux has been going downhill. It's a loss of control, tying the user down to watch the computer chug away for minutes so they can do something about it, where formerly you could just queue up clicks and walk away. The alternative is to go to another computer and use text over ssh, which, as it involves waiting for the ssh process to be paged back in and other things, is not nearly as good as just being able to click with a responsive mouse.