[Tutorial Linux] Terminal: Visualizando processos
Tags: linux, terminal, top, htop
Published: 2020-11-07 14:28:29

Para visualizar os processos do sistema, digite:

```
$ top
```

- **$** indica que você deve usar o **usuário comum** para fazer essa operação.

![comando top](https://dev-to-uploads.s3.amazonaws.com/i/0mbzqd7ym38yamgjih3w.gif)

Esses processos são mostrados em tempo real.

> Os processos são todos os programas que estão rodando no sistema, inclusive aqueles que fazem o S.O. funcionar.

Para ordenar por CPU, pressione **Shift + p**. Para ordenar por memória, pressione **Shift + m**. **Shift + t** ordena pelo tempo. Com **shift + f** é possível selecionar quais campos gostaria de ver no top.

Para voltar ao shell, pressione **q**.

As informações que o comando **top** traz, são:

## 1. Linha top:

**1.1.** O **horário atual** do sistema no formato **horas:minutos:segundos**:

![hora atual](https://dev-to-uploads.s3.amazonaws.com/i/mlkocd4n4s43fx2422mo.png)

**1.2.** O **tempo** que o sistema está **ligado**:

![tempo ligado](https://dev-to-uploads.s3.amazonaws.com/i/anuo6uh99ss1el60aai2.png)

**1.3. Quantidade** de **usuários** conectados ao sistema:

![quantidade usuários](https://dev-to-uploads.s3.amazonaws.com/i/704sf0qidgpbijoukshy.png)

**1.4.** A **média de carga de trabalho**:

![média de carga de trabalho](https://dev-to-uploads.s3.amazonaws.com/i/dp47oti5zu5whubvpq8y.png)

Esse número são obtidos tomando como base o número de núcleos do processador da sua máquina.

No exemplo mostrado acima, temos que, em média, no **último minuto** existiam **0,94 processos** rodando ou esperando por recursos do sistema, ou seja, 0,94 de 4 (que no caso é o número de núcleos da máquina utilizada no exemplo). Enquanto nos últimos **5 minutos** existiam **0,74**. E nos últimos **15**, existiam **0,72**. 

## 2. Linha tarefas:

**2.1. Total de tarefas** no sistema:

![total tarefas](https://dev-to-uploads.s3.amazonaws.com/i/cd85j7bun5odn7nt2wmu.png)

**2.2.** Total de **tarefas em processamento**:

![tarefas em execução](https://dev-to-uploads.s3.amazonaws.com/i/u0s4sylbe80pzealrchp.png)

**2.3. Processos modo de espera**: 

![modo espera](https://dev-to-uploads.s3.amazonaws.com/i/zctzamqssmdvrwtj0p7o.png)

São os processos que estão em uso pelo sistema, mas que não estão em processamento no momento atual.

**2.4.** Total de **tarefas paradas**:

![tarefas paradas](https://dev-to-uploads.s3.amazonaws.com/i/44maa0a8p82kmou2ynxq.png)

**2.5.** Total de **tarefas em modo zumbi**:

![tarefas zumbi](https://dev-to-uploads.s3.amazonaws.com/i/kgnfet0dr3ngjt7qj3da.png)

São processos que não existem mais no sistema, mas que por algum motivo ainda permanecem na listados (geralmente por erros no software, processos finalizados de maneira abrupta, entre outros).

## 3. Linha CPU(s):

**3.1. Porcentagem de uso de CPU** por processos do **usuários**:

![uso cpu por usuário](https://dev-to-uploads.s3.amazonaws.com/i/2ajbxij5ss64t5w01vgm.png)

**3.2. Porcentagem de uso de CPU** por processos do **Kernel(núcleo do sistema)**:

![uso cpu kernel](https://dev-to-uploads.s3.amazonaws.com/i/a0eqoc8yttahtltafa3b.png)

**3.3. Porcentagem de uso de CPU** de processos que tiveram sua **prioridade modificada** pelos comandos **nice ou renice**:

![prioridade modificada](https://dev-to-uploads.s3.amazonaws.com/i/9hq9d9c2mi1zthd5hauv.png)

O comando **nice** serve para redefinir a prioridade de um determinado processo. O comando **renice** altera a prioridade de um processo que já está em execução.

**3.4.** Porcentagem da **CPU livre para uso**:

![cpu livre](https://dev-to-uploads.s3.amazonaws.com/i/s88n39oqozu9boynx3v8.png)

**3.5.** Porcentagem de **uso da CPU em operações de entrada e saída**:

![in out](https://dev-to-uploads.s3.amazonaws.com/i/ojx8tnple1gscxqj1bi2.png)

**3.6.** Porcentagem de **uso da CPU por interrupções do hardware**:

![cpu hardware](https://dev-to-uploads.s3.amazonaws.com/i/sm9wtim98el2cvfbiwwg.png)

**3.7.** Porcentagem de **uso da CPU utilizada por interrupções de software**:

![interrupção software](https://dev-to-uploads.s3.amazonaws.com/i/o6fhakcjbjo5wis4u9u1.png)

**3.8.** Porcentagem de **uso da CPU para máquinas virtuais**:

![cpu máquina virtual](https://dev-to-uploads.s3.amazonaws.com/i/l0i2mmreegiidxupkvji.png)

## 4. Linha KB mem:

**4.1. Memória RAM total** da máquina:

![mem total](https://dev-to-uploads.s3.amazonaws.com/i/d3esdvgqy1bj6t294lr7.png)

**4.2. Memória RAM livre**:

![mem livre](https://dev-to-uploads.s3.amazonaws.com/i/pvxwcal953yahno73ruf.png)

É o total de espaço que **ainda não foi utilizado de maneira alguma** pela máquina.

**4.3. Memória RAM usada**:

![mem usada](https://dev-to-uploads.s3.amazonaws.com/i/wmhrikhd59mun189yzx8.png)

**4.4. Memória cache** utilizada:

![mem cache](https://dev-to-uploads.s3.amazonaws.com/i/0w437dqb7hduko4wc2h7.png)

A memória cache tem por função armazenar dados e instruções que a CPU pode precisar em breve.

## 5. Linha KB swap:

A **memória swap** é aquela **área do HD** que pode ser usada de **maneira complementar** à **memória RAM**.

![mem swap](https://dev-to-uploads.s3.amazonaws.com/i/6doaso7o0n6himgawizd.png)

**5.1. Memória disponível**:

![mem disponível](https://dev-to-uploads.s3.amazonaws.com/i/qd5dzenjdu5ttz1e19m9.png)

É a memória livre para inicialização dos programas, sem utilizar a swap.

## 6. PID:

![pid](https://dev-to-uploads.s3.amazonaws.com/i/ayol7uqe6ewp9i5y4ngh.png)

É a identificação única de um determinado processo.

## 7. USUARIO:

A quem pertence um determinado processo.

## 8. PR:

A prioridade de uma determinada tarefa.

## 9. NI:

Um valor **nice negativo** implica **maior prioridade**, enquanto um valor **nice positivo** significa **menor prioridade** do processo.

## 10. VIRT:

São todas as memórias que estão sendo utilizadas para um determinado processo e suas dependências, bibliotecas, etc.

## 11. RES:

É a memória residente; memória RAM utilizada por um determinado processo.

## 12. SHR:

Quanto da memória usada por um determinado processo é compartilhável.

## 13. S:

É o estado de um processo. S dormindo. R rodando. Z zumbi. I ocioso.

## 14. CPU:

Porcentagem da CPU utilizada de um determinado processo.

## 15. MEM:

Memória residente dividida pela memória total.

![mem](https://dev-to-uploads.s3.amazonaws.com/i/uv1mpdm8uilgqdr60rll.png)

## 16. TEMPO:

Quanto tempo de uso desde da última inicialização do sistema.

## Utilizando o HTOP

Primeiro é preciso instalá-lo:

```
$ sudo apt install htop
```

> para ver mais informações sobre as [instalações de programas no linux, clique aqui](https://dev.to/womakerscode/tutorial-linux-terminal-instalando-programas-no-linux-2017).

Em seguida chame o programa

```
$ htop
```

Serão mostradas as mesmas informações, porém com outro formato.

![usando htop](https://dev-to-uploads.s3.amazonaws.com/i/oc35js5rpr7y5qvpcbjm.gif)