From https://web.archive.org/web/20061013172449/http://www.voltar.org/dockapps/wmjiface-1.7cb.tgz
		
			
				
	
	
		
			61 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			61 lines
		
	
	
	
		
			3.1 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
Wed Sep 15 00:29:10 EDT 1999
 | 
						|
  I tuned ifacechk to be able to handle _huge_ numbers of packets.  Perl was
 | 
						|
  maxin' out at some point ... who cares.  I fixed it with line #113:
 | 
						|
  s/([0-9]+)([0-9]{9})/$2/g := just gimme the last 9 digits... work on that.
 | 
						|
  This forces a rollover on 9 digits, simultaneously causing correct operation
 | 
						|
  999999999 out of 10000000000 times (assuming a 1 byte per second xfer rate and
 | 
						|
  an update delay of 1 second).  It also causes an error on the rollover (fixed 
 | 
						|
  after the next update.  This is not an elegant solution, but, it is
 | 
						|
  satisfactory for now.
 | 
						|
 | 
						|
Tue Aug 24 12:14:38 EDT 1999
 | 
						|
  I just noticed a bug in ifacechk.  The code that reverses the logical/physical
 | 
						|
  devices doesn't work quite right.  Apparently if /var/run/ppp-ppp0.dev
 | 
						|
  contains 'ppp1', then it means that the physical device 'ppp0' is acting as
 | 
						|
  the logical device 'ppp1'.  That's news to me.  The reversal was working
 | 
						|
  before, because if both devices are up, the reversal is correct even counting
 | 
						|
  my error.  Did you know that Keppler made two glaring errors in his calculus,
 | 
						|
  and the second cancled out the first?  I guess I'm up there with greatness. ;)
 | 
						|
 | 
						|
Tue Aug 24 12:07:07 EDT 1999
 | 
						|
  I added some better error checking.  When one of my devices would go down,
 | 
						|
  wmjiface would start showing me non-sense while the device is coming back
 | 
						|
  up.  If an error is detected, the exponential averaging get's cleared out.
 | 
						|
  That helps to keep it from holding on to negative speeds for long periods.
 | 
						|
 | 
						|
Wed Aug 18 02:22:43 EDT 1999
 | 
						|
  I finnally installed the weighted averaging I was talking about!  exp_avg =
 | 
						|
  (alpha*current_bps) + ((1-alpha)*last_average).  This method is called
 | 
						|
  exponetial averaging.  I had to install a "beta pulldown," where alpha is
 | 
						|
  equals beta iff the xfer_rate exactly equals 0.  It gives a more realistic
 | 
						|
  feel to the end of the xfer, rather than a drawn out approach to 0.  That
 | 
						|
  limit could go on for tens of minutes, since I used doubles (so the history
 | 
						|
  will contain a more accurate approximation).
 | 
						|
 | 
						|
Tue Aug 17 22:48:18 EDT 1999
 | 
						|
  Made a minor change that reverses my ppp devices when needed.  The ppp devices
 | 
						|
  are fcfs btw, I don't want the imaginary device, I want the real device.
 | 
						|
 | 
						|
Tue Aug 17 03:47:06 EDT 1999
 | 
						|
  Somewhat drunkenly completed a change to ifacechk to remove the old tmp files.
 | 
						|
  Ended up using a system() if ... /proc/dir exists check ... how ugly.
 | 
						|
  but hey... I was already using /proc  *smirk*
 | 
						|
 | 
						|
Mon Aug 16 22:07:05 EDT 1999
 | 
						|
  noticed an ugly flaw in ifacechk.  Every instance of ifacechk was overwriting
 | 
						|
  every other's data ...  I used perl's '$$' variable to seperate it out.  The
 | 
						|
  only trouble is that there will now be a huge buildup of the stat files after
 | 
						|
  a while.  How to resolve that?
 | 
						|
 | 
						|
Mon Aug 16 22:06:15 EDT 1999
 | 
						|
  added a new switch (and the support for it).  -D: now lists in/out at the
 | 
						|
  same time.
 | 
						|
 | 
						|
Mon Aug 16 20:06:18 EDT 1999
 | 
						|
  huge changes to the update loop in the form of more modularization.
 | 
						|
 | 
						|
Tue Jul 20 11:08:38 EDT 1999
 | 
						|
  installed new date and version stuff in the makefile, and the print_help()
 | 
						|
 | 
						|
Wed Jul 14 19:08:20 EDT 1999
 | 
						|
  It's new... There's no changes... besides it's existance.
 |