funny "top" feature

Azt vettem észre, hogy a top parancs nálam mindig 87.1% idle kezdő értéket mutat, aztán a következő frissítéskor már -- valószínűleg -- a valós értéket.

Gyorsan kipróbáltam 3 másik gépen is és mindegyiken azt tapasztaltam, hogy az adott gépnek van egy "kezdőértéke", amit a top az első alkalommal mutat és csak a következő frissítéskor látszik valós helyzet.

A vizsgált gépek:
- Debian squeeze OpenVZ alatt
- Centos 5.x fizikai gépen
- Linux Mint Debian Edition fizikai gépen
- Debian lenny fizikai gépen

Hozzászólások

Hm, nálam is...
És ez mit jelent? ;)

hehe, valóban... Fedora 16, CentOs 6.2 fizikai gépeken is tapasztalható. A CentOS 2 gép és ugyanaz az induló érték. A forrást kellene megnézni, nem lepődnék meg ha lenne default érték.

Az indításkor pontosan mindig ugyanaz az stimmel, de OS-enként és gépenként nekem más:

Ubuntu 6.10 - 96,8%
Ubuntu 11.10 desktop - 88,9%
Ubuntu 11.10 server - 99,5%
...

--
trey @ gépház

A top által megjelenített információ begyűjtése és masszírozása CPU-igényes. Normális esetben magából a top-ból fakadó terhelés szét van "kenve" a top frissítési intervallumán (pl. 5 másodperc). Amikor azonban indul, akkor akkor nincs megelőző sleep, vagyis a legelső megjelenítés közvetlenül azután történik, hogy a top 100%-ban hajtott (nagyon rövid ideig) egy db magot.

Tipp...

Most már csak az érdekesség kedvéért: 11.31-es HPUX host-on és guest-en nem mutat ilyen "default"-ot.

Az én tippem: az adatok forrása valószínűlegh a /proc/stats és ott boottól számolt értékek vannak. Minden frissítéskor az előző frissítés értékétől mért különbségekkel dolgozik, de indításkor azok nullák és nem egy kis időszeletre (pl másodperc) hanem a gép elindulásától mostanáig összegzett idők alapján számolja a statisztikát -- az pedig pár óra uptime után nem nagyon fog egy perc alatt megváltozni.