Casa dos Resumos
Gerenciamento de processos
Gerenciamento de processos
Processo é a forma como algum programa se apresenta para o processador, ou seja, todas as tarefas em execução no computador. Todo sistema ou função do computar é realizada através de processos, no qual é quem utiliza os recursos do computador.
Composição e conceitos associados ao processo
A composição dos processos vem a ser os atributos que os diferenciam um de outro ajudando o sistema operacional a controla-los, suas características ou atributos são:
- Lifetime: Tempo de vida de um processo em execução.
- PID: Numero de identificação que o sistema da a um processo.
- PPID: É o PID do processo pai de um processo.
- UID: Associa um usuário a um processo.
- GID: Associa um grupo de usuários a um processo.
- Enviroment: Cada processo tem suporte a uma lista de variáveis associadas a valores.
- Curremt working Directory: Diretório default atribuído a cada processo.
Sinais de processos
Usados para que os processos possam se comunicar e para que o sistema possa interferir em seu funcionamento.
Sinais:
- STOP: Função de interromper a execução do processo reativando após o recebimento de CONT
- CONT: Instrui a execução de um processo após a interrupção.
- SEGV: Sinal que informa os erros de endereços de memoria.
- TERM: Termina completamente com o processo, eliminando-o
- ILL: Informa o erro de instruções ilegal.
- KILL: Sinal tem a função de "matar" um processo sendo usado em momentos críticos.
OBS: O sinal KILL sem parâmetro, por padrão executa o sinal TERM
ESTADOS DOS PROCESSOS
Os processos não necessariamente são executados no momento em que são criados. Alguns processos podem ser temporariamente paralisados liberando o processador a executar outro processo com maior prioridade. Há quatro tipos de situações, isto é, estados:
- Executável: O processo pode ser executado diretamente;
- Dormente: O processo precisa aguardar alguma ação para ser executado;
- Zumbi: O processo é considerado morto, mas por alguma razão ainda existe;
- Parado: O processo esta parado e não pode ser executado;
MONITORANDO PROCESSOS (PS, TOP e PSTREE)
PS
Comando extremamente importante para o gerenciamento de processos. Através desse comando é possível saber os processos que estão em execução. O comando PS sem parâmetro exibe apenas os processos do usuário, é preciso utilizar parâmetros para conseguir mais detalhes.
Parâmetros(opções):
- a - mostra todos os processos existente;
- e - exibe variáveis de ambiente relacionada ao processo;
- f - exibe a arvore de execução dos processos;
- l - exibe mais campos no resultado;
- m - mostra a quantidade de memoria utilizada por cada processo;
- u - exibe o nome e a hora do usuário que executo o processo;
- x - exibe os processos que não estão associados a terminais;
- w - se o resultado de processo não couber em uma linha, sera exibido na próxima;
Dentre as opções citadas, a combinação mais usada é o: ps aux como mostra a a figura.
Descrição:- User: nome do usuário dono do processo;
- UID: numero de identificação do dono do processo;
- PID: numero de identificação do processo;
- PPID: numero de identificação do processo pai;
- %CPU: porcentagem de processamento pelo processador;
- %MEM: porcentagem de memoria utilizada;
- VSZ: Indica o tamanho virtual do processo;
- RSS: sigla de Resiident Set Size, indica a quantidade de memória usada (kb);
- TTY: indica o identificador do terminal;
- STAT: hora em que o processo foi iniciado;
- TIME: tempo de processamento consumido pelo processador;
- COMMAND: Comando que executa o processo;
TOPO comando ps exibe os processos no momento em que foi executado, o comando top vai atualizando os processos num determinado tempo. Exemplo: o ps tira uma foto da situação dos processos e o top atualiza a situação regularmente.
Opções:
- -d: atualiza o top num determinando tempo em segundos. Ex: top -d 30 ;
- -c: exibe a linha de comando ao invés do nome do processo;
- -i: faz o top ignorar processos no estado zumbi;
- -s: executa o top em modo seguro.
- u: mostra processos de usuário especifico;
O comando top apos executado permite manipular os recursos através do teclado:
- espaço: atualiza imediatamente o resultado exibido;
- m: classifica os processos por uso de memoria;
- p: classifica os processos por uso de CPU;
- t: classifica processos por tempo;
- q: top é finalizado;
- h: exibe a lista completa de opções e teclas de atalho.
Descrição:- PR: prioridade do processo;
- NI: valor preciso da prioridade
PSTREEApresenta os processos em formato de arvore;
Opções:
- -u: mostra o proprietário do processo;
- -p: exibe o PID apos o nome do processo;
- -c: mostra as relação dos processos ativos;
- -G: usa determinados caracteres para exibir o resultado em formato gráfico;
TERMINANDO PROCESSOS COM KILL E KILLALKILLUsado para enviar sinais a determinados processos. Há diferentes sinais que o comando kill pode enviar ao processador, pode-se verificar através do comando:
# kill -l
Como a lista apresenta o numero 9(SIGKILL) elimina um processo, exemplo:
1- Vamos listar os processos:
2- Para eliminar o processo destacado basta executar o comando kill com o parametro 9 seguido do PID do programa
Pode-se descobrir o PID do programa, também através do comando
pgrep, basta digitar o comando seguindo do nome do processo:
Ex:
# pgrep cron 347 -> PID do processo
KILLALLO comando killall diferente do comando kill que elimina os processos atraves do PID, elimina os processos pelo nome:
Ex - Para eliminarmos o editor de texto vi basta digitar o comando kill -9:
RECURSOS JOBS, FG, BGJOBSServe para visualizar os processos que estão parados ou executando em segundo plano.
#jobs -opçõesOpções:- -l: lista os processos através do PID;
- -r: lista apenas os processos em execução;
- -s: lista apenas os processos parados;
Dicas:- Para ver os processos que estão executando em segundo plano basta verificar a existência do caractere "&" no final da linha
- Se aparecer (+) na linha do processo significa que é o processo mais recente a ser parado;
- Se aparecer (-), foi o penúltimo;
FGO comando FG permite que um programa rodando em segundo plano ou parado rode em primeiro plano.
Ex - Vamos colocar o editor vi que esta rodando em segundo plano para o primeiro.
# fg viou
# fg (PID do vi)BGO comando BG faz ao contrario do FG passando o processo do primeiro para o segundo plano.
Ex - Vamos colocar o editor vi que esta rodando em primeiro plano para o segundo.
# bg viou
# bg (PID do vi)MODIFICANDO PRIORIDADES DE EXECUÇÕES DOS PROCESSOS
Uns processos tem prioridades sobre outros, isso tudo é atribuído a "gentileza" que cada processo tem com outros. O comando nice atribuí valores e quanto mais alto for o valor atribuído ao processo mais gentil é e menor prioridade tem. Esses números variam de -19 a 19.
Sintaxe:
#nice -n 1 vi (o processo vi recebe prioridade 1)
e
#nice -n -1 gpedit (o processo gpedit tem mais prioridade que o processo anteior pois o valor é menor)
Se um processo já esta em execução, ele ja tem sua prioridade definida. Para modificar essa prioridade utiliza-se o comando
renice.Opções:- -u: a alteração acontecera nos processos do usuário informado;
- -g: a alteração acontecera nos processos do grupo informado;
- -p: a alteração acontecera no processo cujo PID foi informado;
Exemplo:
Esse post foi baseado num estudo de dois artigos!
Artigo 01
Artigo 02
loading...
-
Gerenciamento De Memória
A memória como um recurso importante deve ser gerenciado com cuidado, sendo o gerenciador de memória a parte do sistema operacional que gerencia a sua hierarquia. Seu trabalho é controlar que partes da memória que estão em uso e que partes...
-
Iniciando Com Php
PHP Seu acrônimo é Hypertext Preprocessor, ou seja, linguagem de script open source de uso geral. Sua maior utilização esta associado ao desenvolvimento Web, dentro de sua pagina html, você embutira o código php que será executado...
-
Gerenciamento De Usuários, Grupos E Privilégios
Gerenciamento de usuários Visa controlar todos os usuários que de certa maneira manipulam o sistema operacional. Esse gerenciamento tem como objetivo, entre outros, manter a integridade dos dados manipulados por determinado usuário. Imagine...
-
Criação E Gerenciamento De Partições - Linux
A tarefa inicial quando se deseja instalar um sistema operacional é preparar o disco rígido, criando uma estrutura pré-definida, para que se possa armazenar os dados. Isso deve ser principalmente usado quando se deseja instalar...
-
Sistema De Arquivos Linux
Oque é um sistema de Arquivos ? Sistema de arquivos é maneira como os dados são organizados no meio de armazenamento. O sistema de arquivos é uma forma de criar uma estrutura lógica de acesso aos dados numa partição. Não sendo possível ter...
Casa dos Resumos