vmstat não retorna o valor correto na primeira vez que executar

0

Estou usando o vmstat no Ubuntu Linux para obter o uso da CPU. Meu cpu atual está muito ocupado em quase 100%. Se eu executar vmstat como abaixo:

$ vmstat     
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 8  1      0 6383924 1287224 18123836    0    0     2    53    2   16  1  1 98  0  0

mostra que o cpu ocioso é 98%. Mas se eu correr com um atraso e contar como abaixo:

$ vmstat 2 2
procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
 5  1      0 6491296 1287268 18128956    0    0     2    53    3   17  1  1 98  0  0
 4  1      0 6491992 1287268 18129080    0    0     0  2264 11142 17980 98  2  0  0  0

mostra o uso correto da cpu a partir da segunda vez. Minha pergunta é por que não é possível gerar o valor correto pela primeira vez.

    
por Zhao Yi 24.01.2018 / 01:46

1 resposta

1

De man vmstat (ênfase em negrito adicionada por mim):

SYNOPSIS

vmstat [options] [delay [count]]

DESCRIPTION

vmstat reports information about processes, memory, paging, block IO, traps, disks and cpu activity.

The first report produced gives averages since the last reboot.

Additional reports give information on a sampling period of length delay. The process and memory reports are instantaneous in either case.

OPTIONS

delay The delay between updates in seconds. If no delay is specified, only one report is printed with the average values since boot.

count Number of updates. In absence of count, when delay is defined, default is infinite.

[...]

    
por 24.01.2018 / 02:02