2.5. Informações Específicas do Red Hat Enterprise Linux

O Red Hat Enterprise Linux traz diversas ferramentas de monitoramento dos recursos. Apesar de existir mais ferramentas que as listadas aqui, essas são as mais representativas em termos de funcionalidade:

Vamos examinar cada um mais detalhadamente.

2.5.1. free

O comando free apresenta a utilização da memória do sistema. Aqui está um exemplo de seu output:

             total       used       free     shared    buffers     cached
Mem:        255508     240268      15240          0       7592      86188
-/+ buffers/cache:     146488     109020
Swap:       530136      26268     503868

A linha Mem: apresenta a utilização da memória física, enquanto a linha Swap: apresenta a utilização do espaço swap do sistema, e a linha -/+ buffers/cache: traz a quantidade de memória física corrente dedicada aos buffers do sistema.

Como o free apresenta as informações de utilização da memória uma só vez por default, é útil somente para monitoramento de curto prazo, ou para determinar rapidamente se um problema relativo à memória está ocorrendo no momento. Apesar do free ter a habilidade de apresentar a utilização da memória repetidamente através de sua opção -s, seu output se estende ao longo da tela, dificultando detectar as alterações na utilização da memória.

DicaDica
 

Uma solução melhor que o uso do free -s seria executar o free usando o comando watch. Por exemplo: para trazer a utilização da memória a cada dois segundos (o intervalo default de display do watch), use esse comando:

watch free

O comando watch submete o comando free a cada dois segundos, limpando a tela e exibindo o novo output na mesma localidade. Isso facilita determinar as alterações na utilização da memória ao longo do tempo, já que o watch cria uma única visualização atualizada sem scrolling. Você pode controlar o intervalo entre as atualizações usando a opção -n e fazer com que quaisquer alterações entre as atualizações sejam destacadas, usando a opção -d, conforme o comando seguinte:

watch -n 1 -d free

Para mais informações , consulte a página man watch.

O comando watch roda continuamente até ser interrompido por [Ctrl]-[C]. O comando watch é algo para ter em mente, pois pode ser útil em diversas situações.

2.5.2. top

Enquanto o free apresenta somente informações relativas à memória, o comando top faz um pouco de tudo. A utilização da CPU, as estatísticas de processo, a utilização da memória — o top monitora tudo. Além disso, ao contrário do comando free, o comportamento defalut do top é rodar continuamente; não há necessidade de usar o comando watch. Aqui está uma amostra:

 14:06:32  up 4 days, 21:20,  4 users,  load average: 0.00, 0.00, 0.00
77 processes: 76 sleeping, 1 running, 0 zombie, 0 stopped
CPU states:  cpu    user    nice  system    irq  softirq  iowait    idle
           total   19.6%    0.0%    0.0%   0.0%     0.0%    0.0%  180.2%
           cpu00    0.0%    0.0%    0.0%   0.0%     0.0%    0.0%  100.0%
           cpu01   19.6%    0.0%    0.0%   0.0%     0.0%    0.0%   80.3%
Mem:  1028548k av,  716604k used,  311944k free,       0k shrd,  131056k buff
                    324996k actv,  108692k in_d,   13988k in_c
Swap: 1020116k av,    5276k used, 1014840k free                  382228k cached
                                                                                
  PID USER     PRI  NI  SIZE  RSS SHARE STAT %CPU %MEM   TIME CPU COMMAND
17578 root      15   0 13456  13M  9020 S    18.5  1.3  26:35   1 rhn-applet-gu
19154 root      20   0  1176 1176   892 R     0.9  0.1   0:00   1 top
    1 root      15   0   168  160   108 S     0.0  0.0   0:09   0 init
    2 root      RT   0     0    0     0 SW    0.0  0.0   0:00   0 migration/0
    3 root      RT   0     0    0     0 SW    0.0  0.0   0:00   1 migration/1
    4 root      15   0     0    0     0 SW    0.0  0.0   0:00   0 keventd
    5 root      34  19     0    0     0 SWN   0.0  0.0   0:00   0 ksoftirqd/0
    6 root      35  19     0    0     0 SWN   0.0  0.0   0:00   1 ksoftirqd/1
    9 root      15   0     0    0     0 SW    0.0  0.0   0:07   1 bdflush
    7 root      15   0     0    0     0 SW    0.0  0.0   1:19   0 kswapd
    8 root      15   0     0    0     0 SW    0.0  0.0   0:14   1 kscand
   10 root      15   0     0    0     0 SW    0.0  0.0   0:03   1 kupdated
   11 root      25   0     0    0     0 SW    0.0  0.0   0:00   0 mdrecoveryd

O resultado é dividido em duas seções. A seção superior contém informações relativas ao estado geral do sistema — tempo ligado (uptime), carga média, contagens de processos, estado da CPU e estatísticas de utilização da memória e do espaço swap. A seção inferior apresenta estatísticas no nível do processo. É possível alterar a exibição enquanto o top está rodando. Por exemplo: o top apresenta processos inativos e ativos por default. Para exibir somente os processos ativos, pressione [i]; pressionar novamente retorna ao modo de exibição default.

AtençãoAviso
 

Apesar do top aparecer como um simples programa de apresentação, este não é o caso. Isso ocorre porque o top usa comandos de caractere simples para executar várias operações. Por exemplo: se você está autenticado como root, é possível alterar a prioridade e até mesmo terminar quaisquer processos de seu sistema. Consequentemente, até que você reveja a tela de ajuda do top (digite [?] para apresentá-la), é mais seguro digitar somente [q] (que sai do comando top).

2.5.2.1. O Monitor GNOME do Sistema — Um top gráfico

Se você prefere utilizar interfaces gráficas de usuário, o Monitor GNOME do Sistema pode ser a sua escolha. Como o top, o Monitor GNOME do Sistema apresenta as informações relacionadas ao estado geral do sistema, contagens de processos, utilização da memória e swap e também estatísticas a nível de processo.

No entanto, o Monitor GNOME do Sistema vai um passo além, incluindo também representações gráficas da utilização da CPU, da memória e de swap, juntamente a uma listagem da utilização do espaço em disco em forma de tabela. Veja um exemplo da Listagem de Processos do Monitor GNOME do Sistema na Figura 2-1.

Figura 2-1. A Apresentação da Listagem de Processos do Monitor GNOME do Sistema

É possível apresentar informações adicionais para processos específicos; primeiro clique no processo desejado e então clique no botão Mais Informações (More Info).

Para apresentar as estatísticas da CPU, memória e uso do disco, clique na aba Monitor do Sistema (System Monitor).

2.5.3. vmstat

Para um entendimento mais conciso do desempenho do sistema, tente o vmstat. Com o vmstat, é possível obter uma visão geral dos processos, memória, swap, I/O, sistema e das atividades da CPU numa linha de números:

procs                      memory      swap          io     system         cpu
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0  0   5276 315000 130744 380184    1    1     2    24   14    50  1  1 47  0
        

A primeira linha divide os campos em seis categorias, incluindo estatísticas do processo, da memória, swap, I/O, do sistema e da CPU. A segunda linha identifica o conteúdo de cada campo, facilitando a busca de dados para estatísticas específicas.

Os campos relativos ao processo são:

Os campos relativos à memória são:

Os campos relativos à swap são:

Os campos relativos a I/O são:

Os campos relativos ao sistema são:

Os campos relativos à CPU são:

Quando o vmstat é executado sem nenhuma opção, apresenta somente uma linha. Essa linha contém médias, calculadas desde a hora em que o sistema foi inicializado pela última vez.

Entretanto, a maioria dos administradores de sistema não confia nas informações dessa linha, já que varia o tempo ao longo do qual foram coletadas. Ao invés disso, a maioria dos administradores aproveita a habilidade do vmstat em apresentar repetidamente os dados de utilização dos recursos em intervalos determinados. Por exemplo: o comando vmstat 1 apresenta uma nova linha com informações de utilização a cada segundo, enquanto o comando vmstat 1 10 apresenta uma nova linha por segundo, mas apenas nos próximos dez segundos.

Nas mãos de um administrador experiente, o vmstat pode ser usado para determinar rapidamente as questões de desempenho e utilização de recursos. Mas, para ter mais conhecimento destas questões, é necessário usar um tipo diferente de ferramenta — uma ferramenta capaz de coletar e analisar dados mais profundos.

2.5.4. O Pacote Sysstat de Ferramentas de Monitoramento dos Recursos

Enquanto as ferramentas anteriores são úteis para obter mais conhecimento sobre o desempenho do sistema ao longo de períodos de tempo curtos, têm pouco uso além de prover uma rápida visualização da utilização dos recursos. Além disso, há aspectos do desempenho do sistema que não podem ser facilmente monintorados com ferramentas simplistas como estas.

Sendo assim, é necessário uma ferramenta mais sofisticada. Sysstat é essa ferramenta.

Sysstat contém as seguintes ferramentas relacionadas à obtenção de estatísticas de I/O e CPU:

iostat

Apresenta uma visão geral da utilização da CPU, junto às estatísticas de I/O de um ou mais drives de disco.

mpstat

Apresenta estatísticas mais profundas da CPU.

Sysstat também contém ferramentas que coletam dados de utilização dos recursos do sistema e criam relatórios diários baseados nestes dados. Estas ferramentas são:

sadc

Conhecido como o coletor de dados de atividade do sistema, o sadc coleta informações da utilização dos recursos do sistema e as grava num arquivo.

sar

Os relatórios do sar são criados a partir de arquivos do sadc, e podem ser gerados interativamente ou gravados num arquivo para uma análise mais intensa.

As seções seguintes exploram cada uma destas ferramentas mais detalhadamente.

2.5.4.1. O comando iostat

O comando iostat, em sua forma mais básica, oferece uma visão geral das estatísticas da CPU e operações I/O do disco:

Linux 2.4.20-1.1931.2.231.2.10.ent (pigdog.example.com)      07/11/2003

avg-cpu:  %user   %nice    %sys   %idle
           6.11    2.56    2.15   89.18

Device:            tps   Blk_read/s   Blk_wrtn/s   Blk_read   Blk_wrtn
dev3-0            1.68        15.69        22.42   31175836   44543290
          

Abaixo da primeira linha (que contém a versão do kernel do sistema e o nome da máquina, junto à data corrente), o iostat apresenta uma visão geral da utilização média da CPU do sistema desde a última inicialização. O relatório de utilização da CPU inclui as seguintes porcentagens:

  • Porcentagem do tempo gasto no modo usuário (rodando aplicações, etc)

  • Porcentagem do tempo gasto no modo usuário (para processos que alteraram suas prioridades de agendamento usando o nice(2))

  • Porcentagem do tempo gasto no modo kernel

  • Porcentagem do tempo inativo

O relatório de utilização do dispositivo está abaixo do relatório de utilização da CPU. Este relatório contém uma linha para cada dispositivo de disco ativo no sistema e inclui as seguintes informações:

  • A especificação do dispositivo é apresentada como dev<maior-número>-número-sequencial, onde <maior-número> é o maior número do dispositivo[1] e <número-sequencial> é um número sequencial começando por zero.

  • O número de transferências (ou operações I/O) por segundo.

  • O número de blocos de 512 bytes acessados por segundo.

  • O número de blocos de 512 bytes gravados por segundo.

  • O número total de blocos de 512 bytes acessados.

  • O número total de blocos de 512 bytes gravados.

Esta é apneas uma amostra das informações que podem ser obtidas usando o iostat. Para mais informações, consulte a página man iostat(1).

2.5.4.2. O comando mpstat

À primeira vista, o comando mpstat não parece ser diferente do relatório de utilização da CPU produzido pelo iostat:

Linux 2.4.20-1.1931.2.231.2.10.ent (pigdog.example.com)      07/11/2003

07:09:26 PM  CPU   %user   %nice %system   %idle    intr/s
07:09:26 PM  all    6.40    5.84    3.29   84.47    542.47
          

Além da coluna adicional com as interrupções por segundo resolvidas pela CPU, não há diferença real. No entanto, a situação muda se a opção -P ALL do mpstat for usada:

Linux 2.4.20-1.1931.2.231.2.10.ent (pigdog.example.com)      07/11/2003

07:13:03 PM  CPU   %user   %nice %system   %idle    intr/s
07:13:03 PM  all    6.40    5.84    3.29   84.47    542.47
07:13:03 PM    0    6.36    5.80    3.29   84.54    542.47
07:13:03 PM    1    6.43    5.87    3.29   84.40    542.47
          

Em sistemas com multi-processadores, o mpstat permite exibir a utilização de cada CPU separadamente, possibilitando determinar o quão efetivamente cada CPU é usada.

2.5.4.3. O comando sadc

Conforme mencionado anteriormente, o comando sadc coleta dados de utilização do sistema e os grava num arquivo para análise posterior. Por default, os dados são gravados em arquivos no diretório /var/log/sa/. Os arquivos são nomeados como sa<dd>, onde <dd> é a data do dia corrente em dois dígitos.

O sadc é normalmente executado pelo script do sa1. Esse script é periodicamente invocado pelo cron através do arquivo sysstat, localizado em /etc/cron.d/. O script sa1 invoca o sadc para um único intervalo de medição de um segundo. Por default, o cron roda o sa1 a cada 10 minutos, adicionando os dados coletados durante cada intervalo ao arquivo /var/log/sa/sa<dd> corrente.

2.5.4.4. O comando sar

O comando sar produz relatórios de utilização do sistema baseados nos dados coletados pelo sadc. Conforme configurado no Red Hat Enterprise Linux, o sar é automaticamente executado para processar os arquivos automaticamente coletados pelo sadc. Os arquivos de relatórios são gravados em /var/log/sa/ e são nomeados como sar<dd>, onde <dd> é a representação de dois dígitos da data do dia anterior.

O sar é normalmente executado pelo script do sa2. Esse script é periodicamente invocado pelo cron através do arquivo sysstat, localizado em /etc/cron.d/. Por default, o cron roda o sa2 uma vez por dia, às 23:53, permitindo que produza um relatório com os dados do dia todo.

2.5.4.4.1. Acessando Relatórios do sar

O formato de um relatório do sar produzido pela configuração default do Red Hat Enterprise Linux consiste de seções múltiplas, e cada seção contém um tipo de dado específico, ordenado pela hora do dia em que o dado foi coletado. Como o sadc é configurado para efetuar um intervalo de medição de um segundo a cada dez minutos, o relatório default do sar contém dados em blocos de dez minutos, de 00:00 a 23:50[2].

Cada seção do relatório inicia com um cabeçalho descrevendo os dados contidos na seção. O cabeçalho é repetido em intervalos regulares ao longo da seção, facilitando interpretar os dados enquanto navegamos no relatório. Cada seção termina com uma linha contendo a média dos dados reportados na seção.

Veja um exemplo de seção do relatório do sar, com os dados de 00:30 a 23:40 removidos para economizar espaço:

00:00:01          CPU     %user     %nice   %system     %idle
00:10:00          all      6.39      1.96      0.66     90.98
00:20:01          all      1.61      3.16      1.09     94.14
…
23:50:01          all     44.07      0.02      0.77     55.14
Average:          all      5.80      4.99      2.87     86.34
            

Nesta seção são apresentadas as informações de utilização da CPU. Estas são bem similares às informações apresentadas pelo iostat.

Outras seções talvez tenham mais de uma linha de dados por vez, conforme exibido nesta seção gerada a partir dos dados de utilização da CPU, coletados num sistema de processador duplo:

00:00:01          CPU     %user     %nice   %system     %idle
00:10:00            0      4.19      1.75      0.70     93.37
00:10:00            1      8.59      2.18      0.63     88.60
00:20:01            0      1.87      3.21      1.14     93.78
00:20:01            1      1.35      3.12      1.04     94.49
…
23:50:01            0     42.84      0.03      0.80     56.33
23:50:01            1     45.29      0.01      0.74     53.95
Average:            0      6.00      5.01      2.74     86.25
Average:            1      5.61      4.97      2.99     86.43
            

Há um total de dezessete seções diferentes presentes nos relatórios gerados pela configuração default do sar no Red Hat Enterprise Linux. Algumas destas seções são abordadas nos próximos capítulos. Para mais informações sobre os dados contidos em cada seção, consulte a página man sar(1).

2.5.5. OProfile

O perfilador do sistema OProfile é uma ferramenta de monitoramento de baixa sobrecarga. O OProfile utiliza o hardware de monitoramento do desempenho do processador[3] para determinar a natureza de problemas relativos ao desempenho.

O hardware de monitoramento do desempenho é parte do próprio processador. Tem a forma de um contador especial, aumentando cada vez que um determinado evento (como o processador estar ativo ou os dados desejados não serem enviados ao cache) ocorre. Alguns processadores tem mais de um contador como esse, e permitem a seleção de tipos de eventos diferentes para cada contador.

Os contadores podem ser carregados com um valor inicial e produzir uma interrupção sempre que o contador ultrapassar o limite. Ao carregar um contador com valores iniciais diferentes, é possível variar a taxa de produção de interrupções. Dessa maneira, é possível controlar a taxa de controle e, consequentemente, o nível de detalhe obtido através dos dados coletados.

Em um extremo, ajustar o contador para gerar uma interrupção de sobrecarga com todos os eventos, oferece dados de desempenho extremamente detalhados (mas com sobrecarga massiva). No outro extremo, ajustar o contador para gerar o menor número de interrupções possível, oferece apenas uma visão genérica do desempenho do sistema (com praticamente nenhuma sobrecarga). O segredo do monitoramento efetivo é a seleção de uma taxa limite suficientemente alta para capturar os dados necessários, mas não tão alta a ponto de sobrecarregar o sistema com a sobrecarga de monitoramento do desempenho.

AtençãoAviso
 

Você poode configurar o OProfile para produzir sobrecarga suficiente a fim de tornar o sistema inutilizável. Consequentemente, você deve tomar cuidado ao selecionar os valores limite. Por este motivo, o comando opcontrol suporta a opção --list-events, que apresenta os tipos de evento disponíveis para o processador instalado, junto a valores limite mínimos sugeridos para cada evento.

É importante ter em mente a dificuldade de equilíbrio entre a taxa limite e a sobrecarga ao usar o OProfile.

2.5.5.1. Componentes do OProfile

O Oprofile consiste dos seguintes componentes:

  • Software de coleta de dados

  • Software de análise de dados

  • Software de interface administrativa

O software de coleta de dados consiste do módulo oprofile.o do kernel e do daemon oprofiled.

O software de análise de dados inclui os seguintes programas:

op_time

Exibe o número e porcentagens relativas de amostras obtidas para cada arquivo executável

oprofpp

Exibe o número e porcentagem relativa obtida pela instrução individual ou pelo output no estilo do gprof.

op_to_source

Exibe o código fonte comentado e/ou as listagens de código do assembly

op_visualise

Exibe graficamente os dados coletados

Estes programas possibilitam exibir os dados coletados de diversas formas.

O software de interface administrativa controla todos os aspectos da coleta de dados, da especificação dos eventos a serem monitorados ao início e parada da própria coleta. Isso é feito usando o comando opcontrol.

2.5.5.2. Uma Amostra de Sessão do OProfile

Esta amostra exibe uma sessão de monitoramento e análise de dados da configuração inicial à análise de dados final. É apenas uma visão geral introdutória; para mais informações, consulte o Guia de Administração de Sistemas Red Hat Enterprise Linux.

Use o opcontrol para configurar o tipo de dados a serem coletados com o seguinte comando:

opcontrol \
    --vmlinux=/boot/vmlinux-`uname -r` \
    --ctr0-event=CPU_CLK_UNHALTED \
    --ctr0-count=6000

As opções usadas aqui direcionam o opcontrol para:

  • Direcionar o OProfile para uma cópia do kernel rodando no momento (--vmlinux=/boot/vmlinux-`uname -r`)

  • Especificar que o contador 0 do processador deve ser usado e que o evento a ser monitorado é o tempo em que a CPU está executando instruções (--ctr0-event=CPU_CLK_UNHALTED)

  • Especificar que o OProfile deve coletar amostras a cada 6000 vezes que o evento especificado ocorrer (--ctr0-count=6000)

Em seguida, verifique se o módulo oprofile do kernel está carregado usando o comando lsmod:

Module                  Size  Used by    Not tainted
oprofile               75616   1
…

Confirme se o sistema de arquivo do OProfile (localizado em /dev/oprofile/) está montado com o comando ls /dev/oprofile/:

0  buffer       buffer_watershed  cpu_type  enable       stats
1  buffer_size  cpu_buffer_size   dump      kernel_only

(O número exato de arquivos varia de acordo com o tipo de processador.)

Neste ponto, o arquivo /root/.oprofile/daemonrc contém os ajustes necessários para o software de coleta de dados:

CTR_EVENT[0]=CPU_CLK_UNHALTED
CTR_COUNT[0]=6000
CTR_KERNEL[0]=1
CTR_USER[0]=1
CTR_UM[0]=0
CTR_EVENT_VAL[0]=121
CTR_EVENT[1]=
CTR_COUNT[1]=
CTR_KERNEL[1]=1
CTR_USER[1]=1
CTR_UM[1]=0
CTR_EVENT_VAL[1]=
one_enabled=1
SEPARATE_LIB_SAMPLES=0
SEPARATE_KERNEL_SAMPLES=0
VMLINUX=/boot/vmlinux-2.4.21-1.1931.2.349.2.2.entsmp

Em seguida, use opcontrol para iniciar a coleta de dados com o comando opcontrol --start:

Using log file /var/lib/oprofile/oprofiled.log
Daemon started.
Profiler running.

Verifque se o daemon oprofiled está rodando com o comando ps x | grep -i oprofiled:

32019 ?        S      0:00 /usr/bin/oprofiled --separate-lib-samples=0 …
32021 pts/0    S      0:00 grep -i oprofiled

(A linha de comando oprofiled apresentada pelo ps é bem mais longa; no entanto, foi truncada aqui por motivos de formatação.)

Agora o sistema está sendo monitorado, com coleta de dados para todos os executáveis presentes no sistema. Os dados são armazenados no diretório /var/lib/oprofile/samples/. Os arquivos desse diretório seguem uma convenção de nomes fora do comum. Aqui está um exemplo:

}usr}bin}less#0

A convenção de nomes usa a localidade absoluta de cada arquivo contendo código executável, com os caracteres barra (/) substituídos por chaves finais (}), e terminando com um jogo da velha (#) seguido por um número (0, neste caso.) Consequentemente, o arquivo usado neste exemplo representa os dados coletados enquanto o /usr/bin/less estava rodando.

Após a coleta dos dados, use uma das ferramentas de análise para exibí-los. O OProfile tem a vantagem de não precisar parar a coleta de dados antes de executar a análise de dados. No entanto, você deve esperar que pelo menos um conjunto de amostras seja gravado no disco, ou use o comando opcontrol --dump para forçar as amostras no disco.

No exemplo a seguir, o op_time é usado para exibir (em ordem inversa — do maior número de amostras ao menor) as amostras que foram coletadas.

3321080   48.8021  0.0000 /boot/vmlinux-2.4.21-1.1931.2.349.2.2.entsmp
761776    11.1940  0.0000 /usr/bin/oprofiled
368933     5.4213  0.0000 /lib/tls/libc-2.3.2.so
293570     4.3139  0.0000 /usr/lib/libgobject-2.0.so.0.200.2
205231     3.0158  0.0000 /usr/lib/libgdk-x11-2.0.so.0.200.2
167575     2.4625  0.0000 /usr/lib/libglib-2.0.so.0.200.2
123095     1.8088  0.0000 /lib/libcrypto.so.0.9.7a
105677     1.5529  0.0000 /usr/X11R6/bin/XFree86
…

Usar less é uma boa idéia ao produzir um relatório interativamente, já que este pode ter centenas de linhas. O exemplo ilustrado aqui foi truncado por este motivo.

O formato desse relatório específico consiste na produção de uma linha para cada arquivo executável dos quais as amostras foram retiradas. Cada linha segue este formato:

<sample-count> <sample-percent> <unused-field> <executable-name> 

Onde:

  • <sample-count> representa o número de amostras coletadas

  • <sample-percent> representa a porcentagem de todas as amostras coletadas para esse executável específico

  • <campo-não-usado> é um campo que não está usado

  • <executable-name> representa o nome do arquivo contendo código executável para o qual as amostras foram coletadas.

Esse relatório (produzido num sistema inativo na maior parte do tempo) mostra que quase metade das amostras foram coletadas enquanto a CPU estava rodando código dentro do próprio kernel. Em seguida, na linha, está o dameon de coleta de dados do OProfile, seguido por diversas bibliotecas e do servidor do Sistema X Window, o XFree86. Vale notar que, para o sistema rodar essa seção de amostra, o valor de 6000 usado no contador representa o valor mínimo recomendado pelo opcontrol --list-events. Isso significa que — pelo menos para este sistema em particular — a sobrecarga do OProfile no seu ápice consome aproximadamente 11% da CPU.

Notas

[1]

Os números maiores do dispositivos podem ser obtidos usando ls -l para exibir o arquivo do dispositivo desejado em /dev/. O maior número aparece após a especificação do grupo do dispositivo.

[2]

Devido à dinâmica das cargas de sistema, a hora real na qual os dados foram coletados pode variar em um segundo ou dois.

[3]

O OProfile também pode usar um mecanismo de fallback (conhecido como TIMER_INT) para aquelas arquiteturas de sistema que não têm hardware de monitoramento do desempenho.