[FreeBSD] CPU usage lekerdezes
Zahemszky Gábor
Gabor at Zahemszky.HU
2002. Ápr. 30., K, 01:31:05 CEST
On Mon, Apr 29, 2002 at 01:33:52AM +0200, Varga Gusztav wrote:
>
> Sziasztok!
>
> Programbol szeretnek CPU hasznaltsagrol adatokat lekerdezni,
> szukseg lenne adott processzek statisztikaira, valamint az idle time-ra.
Ha belenezel a ps forrasaba, latni fogod, hogy egyetlen olyan lehetoseg
van, ami elegge altalanosan hasznalhato: nlist(3). De hogy hasznalhato
legyen, elegge ismerni kell, hogy milyen kernel parametereket is akarsz
kibanyaszni, az viszont mar erosen UNIX-fuggo. (Nezd meg pl. az lsof-et,
ami eleg sokfele UNIX-on kotoraszik a kernel belso tablaiban, es eleg
rendesen kulonboznek az egyesz lekerdezesek.) Szoval nagy esellyel nem
fogsz talalni standard eszkozt. A Mauzi altal emlegetett SNMP valoban
szbvanyos, de miert is kene nekem SNMP-szervert is futtatnom a gepemen
azert, hogy a Te kis programod futhasson?
> Kerdesem, hogy ismertek-e olyan modszert, ami mukodik *BSD-n es Linux-on
> (es a UNIX rendszerek minel szelesebb skalajan) is valtoztatas nelkul,
> vagy pedig rendszerspecifikus megoldas az ajanlott es jarhato ut?
Ez leginkabb azon mulik:
1) ra tudod-e eroltetni az SNMP-szervert a felhasznalora
2) hany kulonbozo rendszeren kell majd a programnak hosszutavon futnia
?
ZGabor < Gabor at Zahemszky dot HU >
--
#!/bin/ksh
Z='21N16I25C25E30, 40M30E33E25T15U!' ;IFS=' ABCDEFGHIJKLMNOPQRSTUVWXYZ ';set $Z ;for i { [[ $i = ? ]]&&print $i&&break;[[ $i = ??? ]]&&j=$i&&i=${i%?};typeset -i40 i=8#$i;print -n ${i#???};[[ "$j" = ??? ]]&&print -n "${j#??} "&&j=;typeset +i i;};IFS=' 0123456789 ';set $Z;X=;for i { [[ $i = , ]]&&i=2;[[ $i = ?? ]]||typeset -l i;X="$X $i";typeset +l i;};print "$X"
További információk a(z) BSD levelezőlistáról