|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: C T
Length: 6805 (0x1a95) Types: TextFile Names: »Changes«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦this⟧ »EUUGD11/euug-87hel/sec8/top/Changes«
Thu Sep 4 1986 - wnl (2.0, at last) This is the version that will (hopefully) get released to the world as top 2.0. Added the "r" and "k" commands for renice and kill, respectively. This required adding a way to handle system call errors, and the addition of the "e" command. Help screen and manual page were changed to reflect this change. Changed all "#ifdef SUN" directives to "#ifdef sun", and changed all "#ifdef PYRAMID" directives to "#ifdef pyr". As much as I hate those choices of preprocessor names (they too easily conflict with real variable names), it does make automatic compilation possible---people don't have to change the Makefile anymore for specific machines. The manual page was changed to automatically incorporate the defaults as set in the Makefile (including an infinite value for TOPN) and the way the manual page is generated by the Makefile was changed to make maintenance of this information automatic. Mon Jul 28 1986 - wnl (still pre 2.0) Real close now. I put in a new definition for the macro "pagetok" that does an explicit shift of a constant expression involving PGSHIFT. Appropriate checks are made if PGSHIFT is to small. "pagetok" is now used exclusively everywhere to convert kernel clicks to kilobytes. I added a full blown interactive mode with the ability to change some of the runtime parameters (how many to display, time delay, etc.) while top is running. I also incorporated a few ideas from the net: control characters in the command name are replaced with '?'; the '-S' option makes the swapper and pager visible; options have been added to control the number of displays produced (this makes it easier to make performance snapshots with top). I have also added the notion of "infinite" values for number of processes and number of displays. I fixed a long-standing bug in the uid to username mapping code that was only aggravated on the pyramids: it was an ill-defined expression (akin to i = i++). I tweaked the proc_compar routine for qsort slightly so that stopped processes were more likely to show up. Manual page was updated to reflect all changes noticeable to the user. Tue Jul 1 1986 - wnl (pre 2.0 -- 1.9999?) In the process of major revamping on the way to version 2.0. I have completely done away with curses by adding my own screen management routines in a separate file (screen.c). The rationale for this is that top knows a whole lot more about what is and is not redundant on the screen and can compare simple integer values where curses would have to compare strings. This has turned out to be a very big win speed-wise. The proc_compar routine for sorting has been rewritten to include several more keys. I decided this was necessary when I noticed that the "top" process itself kept disappearing off the top 10 list on a Sun-3. All the processes had the same percentage (0%) and the sort wasn't really doing anything worthwhile. I changed the expression that computes memory usage to use the ctob macro instead of just assuming that pages were 512 bytes. More work still needs to be done before this version is usable. I changed options-processing to use getopt and added appropriate incantations to the Makefile. Wed Feb 20 1985 - wnl (still 1.8) Put in the ifdef FOUR_ONE statements to make top still compilable on a 4.1 system. Apparently, there are some users out there that need this functionality. Oh well. I don't guarantee any of it, since I can't test it. Made appropriate changes to README and final installation related changes to Makefile. Sat Feb 2 1985 - wnl (1.8) Removed all the ifdef FOUR_TWO statements and made "top" into a 4.2 only program. If someone really wants to still run it on 4.1, then they can do all the work. We don't have a 4.1 machine anymore, so I don't even know if the thing still works under 4.1. Cleaned up the Makefile and the README. Added installation rules to the Makefile, as requested by several sites. Fixed a very obscure divide-by-zero bug. Added a second "key" to the qsort comparison function (proc_compar) so that comparisons are based on cpu ticks if the percentages are equal (provided by Jonathon Feiber at Sun). Tue Dec 11 1984 - wnl (1.7) Added the virtual and real memory status line to the header area (provided by Jonathon Feiber at Sun) Tue Nov 20 1984 - wnl (1.6) Added an "exit" if sbrk's fail. Added changes from Jonathon Feiber at Sun: ifdef SUN to make top work on Suns (they don't use doubles in the proc structure), register declarations, check for getting a user structure that has disappeared since the proc array was read (it used to die, now it just shows the process as swapped). Tue Nov 13 1984 - wnl (1.5) If the number of displayable processes ("active_procs") was less than the number of requested processes ("topn"), top would segmentation fault. This bug has been fixed. Thanks to Prentiss Riddle at ut-sally for pointing out the existence of this bug. Tue Oct 23 1984 - wnl (1.4) Finally fixed the hash table bug that caused processes owned by root to sometimes appear with either no name or a different name that had UID 0 (such as "operator"). Removed all the ifdef DEBUG blocks to make top ready for distribution to the real world. Sun Apr 8 1984 - wnl (still 1.3) Made some slight changes to the display format. It now looks more aesthetically pleasing. Added some preprocessor constants so that the two defaults (number of processes and seconds of delay) easier to change. Thu Apr 5 1984 - wnl (1.3) Changed the order in which things are done at initialization time. This way, if an error occurs before starting the main loop, curses will never get started. Also changed other error handlers so that endwin() is called before any flavor of exit. Specifying a number of processes that is more than the screen can handle is no longer fatal. It displays a warning message and pretends the user specified the maximum for the screen. Finally cured all the TSTP blues (well, almost all). I removed my TSTP handler and convinced the system to always use the one that curses sets up. Turns out that "sleep" was stepping all over it during a pause. So, I don't use sleep anymore. The only problem that remains with it now is redrawing the old display before updating it after a pause. Tue Apr 3 1984 - wnl (from 1.0 to 1.2) I changed the format of the TIME column from just "seconds" to "minutes:seconds". I also made pausing work correctly. Screen redraws with an up to date display. For compatibility with 4.2, I changed the name of the "zero" function to "bzero". The makefile has been altered to handle versions for 4.1 and 4.2, and README has been updated to reflect these recent changes.