Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • This writing this is interesting. I've yet to feel like I've managed to make my point while doing it. Perhaps my points are so frail as to break down under the scruntiny of explanation. Perhaps I need to learn to be concise rather than try so hard to "prove" my point.

    Novices often suspect Unix priorities don't really do anything - setting an interactive session to the lowest (maximum) priority doesn't actually make it more responsive. While such novices eventually learn why this happens and come to accept it, I suggest this behavior is wrong and should not be accepted.

    Virtually all systems have excellent interactive performance when running only interactive applications out of RAM, but fewer maintain good interactive performance while running both batch applications and interactive applications. Unix performs extremely poorly in this scenario. Running Mozilla for a week and running an xterm at the same time tickles just as well as traditional batch applications along side interactive sessions.

    The schedular favors processes that don't attempt to use the maximum amount of CPU available to them - however, these processes are almost never runnable because the virtual memory system recgonizes them as not recently having used their pages if they idle for even a fraction of a second, and the VM system swaps them out to make room for processes actually running at a lower priority. Worse, when an interactive application does attempt to use some CPU, its pages are swapped out almost as fast as they are swapped in - pages are litteraly go cold and are swapped back out while it waits for other pages to be swapped in. This manifests itself as applications taking an excessively long time for their size to page back in to memory.

    In summary, the algorithms employed in Unix are not only excessively simplistic but actually clash with each other and perform pathologically badly.

    -scott