Anda di halaman 1dari 9

PROCESSOS

Um processo um canal de comunicao entre os programas que esto sendo executados no sistema operacional e o usurio, ou seja um processo um programa que est sendo executado. No Linux / Unix os processos utilizam os recursos de forma inteligente diminuindo o uso do processador (CPU), ou seja quando processo de um programa tentar ler ou escrever informaes no HD, este processo entrar na fila de espera at finalizar a entrada e sada dados, enquanto isso ocorre, outro processo pode ser executado diminuindo o tempo de uso e acesso do processador, memria RAM e perifricos. Cada processo que est sendo executado armazena um subdiretrio com o mesmo nmero do processo (PID) em /proc, e dentro desses subdiretrios armazenado informaes sobre cada processo nos arquivos cmdline, environ e status. Para exibir os processos so utilizados os comandos ps, pstree e top e para mudar a ordem de prioridade dos processos so usados os comandos nice e renice. Os processos tem prioridades alternando entre -20 (prioridade (maior) e 19 (prioridade menor), o comando nice pode executar um programa com prioridade especficas sendo o seu padro 10. O comando renice modifica a prioridade de um processo em execuo, sendo que somente o usurio root pode executar processos com prioridade negativa e modificar a ordem de execuo de processos positivos para negativos.

COMPONENTES DE UM PROCESSO A execuo de um processo possui vrios componentes. PID e PPID A execuo de um processo possuem vrios componentes PID e PPID O PID (Process Identification - indentificador de processo) um nmero de identificao que o sistema exibe a cada processo. Nenhum PID pode existir para dois ou mais processos ao mesmo tempo, devendo ser gerado um novo numero a cada um novo processo. Quando isso ocorre, o processo "copiado" recebe o nome de "processo pai", enquanto que o novo denominado "processo filho". justamente nesse momento que o PPID (Parent Process Identification - indentificador de processo pai) passa a ser usado, sendo gerado em funo do processo pai, o PID.

UID e GID Lembrando que cada processo necessita de um proprietrio, ou seja, um usurio que seja considerado seu dono. Nesse ponto, o sistema ir identificar, quem pode ou no executar o processo em questo, isso de acordo com as permisses do usurio. Para lidar com os donos, o sistema utiliza os nmeros UID e GID.

No Linux os usurios e os grupos so gerenciados atravs dos nmeros UID (User Identifier) e GID (Group Identifier). Como podemos perceber, que UID so nmeros de usurios e GID so nmeros de grupos. No processo podemos visualizar os usurios e grupos, facilitando a sua visualizao e somente o usurio root pode finalizar processos criados por outros usurios

CLASSIFICAO DOS PROCESSOS Abaixo podemos distinguir a classificao dos processos utilizados no sistema Linux / Unix. Foreground (primeiro plano) Os comandos quando executados em primeiro plano no terminal de comandos, passam a interagir junto com o usurio, exibindo a sua execuo na tela do computador. Esses processos ficam fixos no prompt, impedindo que outros processos sejam inicializados no terminal. Background (segundo plano) Os processos executados em background podem ser inicializados no terminal de shell, no h interao com o usurio e nenhuma execuo visvel na tela do computador. Esses processos no seguram o prompt de comandos, permitido assim que outros processos sejam inicializados no terminal.

TIPOS DE PROCESSOS Processos dinmicos A partir de uma sesso de usurio, os processos dinmicos so executados inicialmente em um terminal de comandos e gerenciado por ele. Quando se executa um comando no terminal, geralmente ele processado em modo foreground (primeiro plano). Para interromper um processo utiliza-se as teclas <CTRL> + <Z>, onde automaticamente ser exibido a mensagem "Stopeed" e o nmero do job entre colchetes [ ] desse processo, e para cancelar um processo utiliza-se as teclas <CTRL> + <C>. Para controlar o gerenciamento de processos so utilizados os comandos fg, bg e jobs. Exemplo: $ xeyes <CTRL> + <Z> [1]+ Stopped xeyes $ xeyes <CTRL> + <C>

GERENCIAMENTO DE TAREFAS (JOBS) a maneira pelo o qual os processos so finalizados e retornados ao seu estado inicial, os processos so executados no terminal de comandos atravs de comandos de shell pelo usurio, podendo um job armazenar um ou mais processos que podem ser visualizados pelo comando jobs. No exemplo abaixo executado o programa xeyes em backgroung &. $ xeyes & [1] 3480 $ jobs -l [1]+ 3480 Running xeyes &

Acima exibido o nmero do job [1] e o PID do processo 3480.

COMANDOS DE GERENCIAMENTO DE PROCESSOS CTRL + C (finaliza um processo) CTRL + Z (interrompe um processo) & - Executa um comando(processo) em background (segundo plano) Exemplo: $ firefox &

bg - Pe um comando(processo) em background (segundo plano) %id Nmero do job colocado em segundo plano. Exemplo: $ xeyes CTRL + Z [1] + Stopped $ bg %1 [1]+ xeyes &

xeyes

fg - Coloca um processo em primeiro plano (background) %id - Nmero do job colocado em primeiro plano. Exemplo: $ top &

[1] 3004 $ fg %1 CTRL + C

jobs - Exibe os jobs em execuo Opo -l -s -p Exemplo: $ $ $ $ firefox & jobs jobs -l jobs -p Significado Exibe o nome e o numero de cada processo Exibe o nome de cada processo Exibe o numero de cada processo

ps - Mostra informaes sobre processos em execuo Opo -A -a -u -x -p Exemplo: $ firefox & $ ps -aux $ ps -aux | grep firefox Abaixo seguem as opes exibidas na sada dos comandos: Opo USER PID Significado Nome do usurio dono do processo ID do processo Significado Mostra todos os processos Mostra informaes de outros usurios Mostra o nome do usurio e o horrio de incio do processo Mostra processos do terminal corrente e de outros terminais Mostra o nmero do processo PID

%CPU %MEM VSZ RSS TTY STAT

Porcentagem do consumo de CPU Porcentagem do consumo de memria Tamanho virtual do processo Nmero de pginas na memria(Resident Set Size) TTY do terminal Estado processo: R (executvel), S (Dormente (< 20 segundos)), Z (Zumbi), D (espera no disco(curto prazo)), T (rastreado ou interrompido) Outras opes adicionais: W (processo paginado em disco), < (prioridade do processo maior que o normal), N (prioridade do processo menor que o normal), L (pginas bloqueadas no kernel do sistema)

START TIME COMMAND

Horrio de incio do processo Tempo de consumo do processador (CPU) consumido pelo processo Nome do comando e opes

pstree - Mostra informaes sobre processos em execuo em forma de rvore Opo -a -c -l -n -p Significado

Mostra opes de comandos no terminal . No compacta subrvores. Mostra linhas de forma detalhada Classifica os processos pelo PID Exibe o PID dos processos.

Exemplo: $ pstree -p $ pstree -nap

pidof - Exibe o PID do processo informado Opo -s -x Significado Exibe apenas o PID Exibe o PID do script que est sendo executado

Exemplo: $ top & $ pidof top

top - Visualiza os processos com o maior uso do processador (CPU) Opo -u -U -d (n) Significado Mostra processos de um usurio especfico No mostra processos de um usurio especfico Atualiza a tela do monitor a cada n segundos

Exemplo: $ top $ top -u aluno1 $ top -u aluno1 -d 3 (atualiza os processos do usurio aluno1 a cada 3 segundos)

free - Visualiza a quantidade de memria livre e usada pelo sistema Opo -b -k -m -g -o -s (n) Exemplo: $ free - -help $ free $ free -m $ free -s 3 (atualiza os processos do usurio aluno1 a cada 3 segundos) Significado Mostra informaes em bytes (Bytes) Mostra informaes em kbytes (KB) Mostra informaes em megabytes (MB) Mostra informaes em gigabytes (GB) Mostra os dados de memria sem exibir a memria utilizada como buffer Mostra os dados de memria a cada n segundos

vmstat - Exibe estatstica de utilizao da memria swap Opo -n -V Exemplo: $ vmstat - -help $ vmstat $ vmstat -n $ vmstat 1 3 (atualiza o comando a cada 1 segundo 3 vezes) Significado Mostra as informaes de uma s vez Exibe a verso do comando

kill - Finaliza um processo pelo PID Opo -V -l Significado Exibe a verso Lista todos os nomes e nmeros de sinais .

O sinal padro para o kill TERM(encerramento por hardware), usando a opo -l no comando kill so exibidos todos os sinais, como HUP (suspender), INT (interromper), KILL (destruir), STOP (parar), QUIT (sair) e etc. Para mais detalhes sobre os sinais use o comando man kill. Para matar um processo so utilizadas 3 maneiras usando os sinais negativos: -9, -SIGKILL e -KILL. Exemplo: $ kill -l $ kill -l KILL 9 $ top & [1] 3357 $ kill -9 3357 ou $ kill -KILL 3357 ou $ kill -SIGKILL 3357

killall - Finaliza processos pelo nome Opo -V -l Exemplo: $ kill -l $ xeyes & [1] 3409 $ killall xeyes [1]+ Terminado $ top & [1] 3357 Significado Exibe a verso Lista todos os nomes e nmeros de sinais.

$ killall -9 top ou $ killall -KILL top ou $ killall -SIGKILL top

nohup - Continua executando um comando mesmo que o usurio saia do sistema Exemplo: $ nohup find /usr | grep adduser &

nice - Executa um processo com prioridade de execuo Opo --help --version (prioridade) Exemplo: $ nice -1 firefox Significado Mostra uma mensagem de ajuda Mostra a verso do comando Valor da prioridade do processo, sendo que quanto maior o valor, menor ser a prioridade de escalonamento do processo, variando entre os valores -20 a +19, sendo -10 o valor padro de prioridade.

renice - Modifica a prioridade de um processo em execuo opo (prioridade) -p (nmero) -u (usurio) -g (grupo) Exemplo: $ firefox & [2] 3429 $ renice +19 3429 (modifica a prioridade do processo 3429 para +19) 3429: prioridade antiga = 0; prioridade nova = 19 Significado Valor que deve ser atribudo prioridade do processo Processo Nome do usurio Grupo do usurio

$ renice -1 -p 3429 (modifica a prioridade do processo 3429 para -1) 3429: prioridade antiga = 19; prioridade nova = -1 # renice -20 -u aluno1 (modifica a prioridade para -20 de todos os processos do usurio aluno1) 3429: prioridade antiga = -1; prioridade nova = -20

Anda mungkin juga menyukai