O Threading é uma abstração de programa para execução paralela nos SO modernos. Com a execução de programas multithread, acontece o seguinte: o espaço de endereço da RAM e os ficheiros abertos são partilhados entre os threads para minimizar as despesas gerais e utilizar o tempo de CPU de forma mais eficiente. Tudo isso torna a execução multithread um mecanismo eficiente e útil. É possível visualizar as threads usando as ferramentas de linha de comando ps
e top
. A seguir, vamos ver como fazer isso no sistema operativo Linux.
O Linux fornece duas maneiras de depurar processos multithread para executar uma determinada ação. Uma é quando um processo cria suas próprias cópias usando o mecanismo de fork e, em seguida, esses processos se comunicam por meio de soquetes ou IPC. Т. O utilizador obtém processos que ocupam recursos e uma certa quantidade de memória. A próxima maneira é alocar threads dentro de um único processo. Desta forma, todas as threads de um único processo terão um identificador de grupo de threads, bem como um identificador único. Ou seja, elas terão acesso a todos os recursos do processo pai e ocuparão menos memória.
Neste programa, os threads do processo são activados por um comando - T.
Da seguinte forma, pode ver todas as threads de processos com PID para o Chromium:
$ ps -T -p
A coluna SPID mostra o ID da thread e a CMD mostra o nome da thread.
Com a ajuda do utilitário top, é fácil ver as threads em tempo real. Para isso, deve-se executar o top com a opção -H
. É possível ativar ou desativar a visualização das threads em tempo de execução utilizando a tecla H:
$ top -H
Se for necessário visualizar apenas as threads do processo desejado use:
$ top -H -p pid
Como se pode ver, usar o top é bastante simples.
No entanto, o utilitário mais conveniente para visualizar as threads é o HTOP. É o principal visualizador interativo de processos no ncurces. Com a sua ajuda pode observar as threads em tempo real sob a forma de uma árvore.
Para tal, é necessário ativar a visualização de threads no htop: em primeiro lugar, abra o programa, entre no menu premindo F2, depois selecione Opções de visualização, em Configuração. Agora, selecione Três vistas e Mostrar nomes de linhas personalizados. É isso, pode premir F10 para guardar as definições:
É isso. Desta forma, pode ver os tópicos numa vista de árvore separadamente para cada processo. Aqui, mais uma vez, pode ver os tópicos para o navegador Chromium: