Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucbvax!decwrl!sgi!jmb@patton.sgi.com From: jmb@patton.sgi.com (Jim Barton) Newsgroups: comp.sys.sgi Subject: Re: Finding load average on Iris 4D Message-ID: <36541@sgi.SGI.COM> Date: 23 Jun 89 16:50:58 GMT References: <89Jun21.014037edt.11705@neat.ai.toronto.edu> <36313@sgi.SGI.COM> Sender: daemon@sgi.SGI.COM Organization: Silicon Graphics, Inc., Mountain View, CA Lines: 19 As a followup to my last message, I checked the actual code and the avenrun[] variable is actually kept as an array of longs, not doubles as in BSD4.3. The longs are kept as "fixed point" values with three decimal points of precision. We have a rule at SGI - NO FLOATING POINT IN THE KERNEL. Doing floating point in the kernel causes more problems that it solves. For instance, if the kernel did floating point, then the FP registers would have to be saved and restored on every trip in and out of the kernel - gag! On every interrupt too - double gag! So while you'll be able to get the same load average answer (I have a program which does it today), BSD code which depends on avenrun being a double will break. This is an incompatibility I don't mind at all. -- Jim Barton Silicon Graphics Computer Systems "UNIX: Live Free Or Die!" jmb@sgi.sgi.com, sgi!jmb@decwrl.dec.com, ...{decwrl,sun}!sgi!jmb --