Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Apr 2003 19:10:35 +0400
From:      "Nickolay A. Kritsky" <nkritsky@star.spb.ru>
To:        Igor Pokrovsky <igor.pokrovsky@cnrm.meteo.fr>
Cc:        freebsd-hackers@freebsd.org
Subject:   Re[2]: Kernel variables - where is TFM?
Message-ID:  <10695996045.20030416191035@star.spb.ru>
In-Reply-To: <20030416121406.GA229@exmatis1.cnrm.meteo.fr>
References:  <1222010669.20030415223730@star.spb.ru> <20030416073329.GB298@exmatis1.cnrm.meteo.fr> <2377892423.20030416140852@star.spb.ru> <20030416121406.GA229@exmatis1.cnrm.meteo.fr>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello Igor,

Wednesday, April 16, 2003, 4:14:06 PM, you wrote:

<skipped>
>> IP> sysctl -a | grep hz
>> On my 4.6 system it gives me:
>> kern.clockrate: { hz = 100, tick = 10000, tickadj = 5, profhz = 1024, stathz = 128 }
>> What does that mean? hz is the IRQ0 frequency? Then, what is tick? and
>> what is ticks (note the trailing `s') ?

IP> Where did you find 'ticks'?

in /usr/src/sys/netinet/tcp_syncache.c it is mentioned quite often.
As I understood it is some sort of counter incremented tickly. From
Epoch or from uptime, I don't know.

>>From /usr/include/sys/time.h :

IP> -- snip --
IP> /*
IP>  * Getkerninfo clock information structure
IP>  */
IP> struct clockinfo {
IP>         int     hz;             /* clock frequency */
IP>         int     tick;           /* micro-seconds per hz tick */
IP>         int     tickadj;        /* clock skew rate for adjtime() */
IP>         int     stathz;         /* statistics clock frequency */
IP>         int     profhz;         /* profiling clock frequency */
IP> };
IP> -- snip --

Hmm. Looks funny. Why keep both hz and tick if tick=(10^6)/hz ? Or am i
missing something?

>> IP> sysctl(8)
>> sysctl. Well, this is great, but here comes another question:
>> in /usr/src/sys/netinet/tcp_syncache_c one can see:
>> ;-----------------Begin clipboard--------------------------
>> SYSCTL_INT(_net_inet_tcp, OID_AUTO, syncookies, CTLFLAG_RW,
>>     &tcp_syncookies, 0, 
>>     "Use TCP SYN cookies if the syncache overflows");
>> ;-------------------End clipboard--------------------------
>> Is it the place where sysctl is added to kernel state MIB? If yes, I
>> assume that every sysctl can have a `description' (the last parameter
>> in SYSCTL_INT macro). Is there an interface to read such descriptions?

IP> The only place where you can see all descriptions AFAIK is
IP> sysctl(3) (note '3', not '8')
Still cant find it.
sysctl() - get or set value of state.
sysctlbyname() - find variable by name.
sysctlnametomib() - find array of variables by name.

Looks like the only interface to look up sysctl description is grep(1)
:-\

-- 
Best regards,
;  Nickolay A. Kritsky
; SysAdmin STAR SPb
; mailto:nkritsky@star.spb.ru




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?10695996045.20030416191035>