Return to BSD News archive
Path: euryale.cc.adfa.oz.au!newshost.anu.edu.au!harbinger.cc.monash.edu.au!news.bhp.com.au!mel.dit.csiro.au!munnari.OZ.AU!news.ecn.uoknor.edu!news.cis.okstate.edu!col.hp.com!sdd.hp.com!usc!howland.reston.ans.net!blackbush.xlink.net!rz.uni-karlsruhe.de!news.uni-stuttgart.de!schweikh From: schweikh@itosun.ito.uni-stuttgart.de (Jens Schweikhardt) Newsgroups: comp.os.linux.advocacy,alt.os.linux,comp.unix.bsd.freebsd.misc,comp.unix.bsd.netbsd.misc Subject: Re: a monthly FreeBSD magazine (and other *BSD's too) Date: 4 Jan 1996 13:28:11 GMT Organization: Comp.Center (RUS), U of Stuttgart, FRG Lines: 53 Message-ID: <4cgklb$22ss@info4.rus.uni-stuttgart.de> References: <4ajc07$sb7@unix2.glink.net.hk> <4cesep$pb1@agate.berkeley.edu> <4cf40b$9ri@bell.maths.tcd.ie> <4cg8es$1ih@knobel.gun.de> NNTP-Posting-Host: itosun.ito.uni-stuttgart.de Xref: euryale.cc.adfa.oz.au comp.os.linux.advocacy:32290 alt.os.linux:6939 comp.unix.bsd.freebsd.misc:11606 comp.unix.bsd.netbsd.misc:1739 In article <4cg8es$1ih@knobel.gun.de>, Andreas Klemm <andreas@knobel.gun.de> wrote: >Ok, there are really some benchmarks, where Linux has higher values >(I think it were fork or exec calls). But on the whole I made the >experience (it's about a year ago) that FreeBSD is the more balanced >system. that has much better response times when the system has lot's >of things to do. > >Benchmarks are benchmarks, real life is real life. Amen. [No, I don't assume you are a Linux enthusiast, Andreas, the following is just an observation I made] I think one reason Linux _may_ be faster in some circumstance is that it is sloppy when it comes to resource usage accounting. Last time I checked (1.2.13 if my memory does not fail me), getrusage() would report 0 on many fields, notably int ru_inblock; /* block input operations */ int ru_oublock; /* block output operations */ int ru_msgsnd; /* messages sent */ int ru_msgrcv; /* messages received */ int ru_nsignals; /* signals received */ int ru_nvcsw; /* voluntary context switches */ int ru_nivcsw; /* involuntary context switches */ int ru_nswap; /* swaps */ The nonzero being struct timeval ru_utime;/* user time used */ struct timeval ru_stime;/* system time used */ int ru_maxrss; /* maximum resident set size */ int ru_idrss; /* integral resident set size */ int ru_minflt; /* page faults not requiring physical I/O */ int ru_majflt; /* page faults requiring physical I/O */ (snipped from Solaris man page -- sorry) Reading the Linux kernel source I recall having found a comment along /* Adding the other fields to the proc structure would make it real big */ I'm disappointed with linux in this respect. Originally I found this getrusage() sloppyness when I compiled GNU time and it always gave me 0 values for most fields. I suspected a bug in GNU time, but upon investigation I found it was the linux kernel who would not record the values. Bye, Jens -- SIGSIG -- signature too long (core dumped)