Gestão de processos. José Pedro Oliveira.

Documentos relacionados
Gestão de processos. Processos. Processo Comando ps Comando top Comando nice Comando kill. José Pedro Oliveira

A D M I N I S T R A Ç Ã O D E S I S T E M A S / P E D R O B R A N D Ã O REFERÊNCIAS DOS SLIDES

Administração de sistemas Linux. Administração de processos.

Comunicação entre Processos 9/21/17 1

SISTEMAS OPERACIONAIS

Comandos TOP, PS e PSTREE

Monitoramento no Linux Avaliação de Desempenho. Prof: Paulo Maciel Instrutor: Jamilson Dantas

PROCESSOS COMPONENTES DE UM PROCESSO. A execução de um processo possui vários componentes. PID e PPID

Processos. Volnys Borges Bernal. Edson Toshimi Midorikawa

Compreenda a utilização da alta utilização da CPU relatada pelo vmanage para o vedge 5000/1000/100B e as Plataformas da nuvem do vedge

SISTEMAS OPERACIONAIS DE ARQUITETURA ABERTA

Sinais. Sinais e fork. Sinais e exec. Segunda aula. Chamada ao sistema fork Chamada ao sistema execve. José Pedro Oliveira

Tópicos Especiais em Linguagens de Programação Shell Script Processos

Sinais: eventos assíncronos

Aula 06 Comandos Linux Gerenciamento de Privilégios e Processos Gerenciamento de Processos

Monitoramento no Linux Avaliação de desempenho. Prof: Paulo Maciel Instrutor: Jamilson Dantas

Sistema Operacional Unidade 7.2 Gerenciamento de Processos. QI ESCOLAS E FACULDADES Curso Técnico em Informática

Descrição. Termos e utilitários. Áreas em foco. Processos. Processos. Comandos GNU e Linux

Tratamento de sinais em sistemas UNIX

Everson Santos Araujo

TE244 - Sistemas Operacionais Lista Exercícios 1

Laboratório de Sistemas Operacionais

Processos. Programas e Processos. Aula 1 - Chamadas ao sistema. José Pedro Oliveira fork exit getpid, getppid wait, waitpid

Eventos. Rotinas Assíncronas

Minicurso Básico de Linux

Programação de sistema UNIX

Pesquisa por nome. Pesquisa por nome Pesquisa por tipo Pesquisa por tamanho. Pesquisa de ficheiros. José Pedro Oliveira

Segurança de Software: Testes de Caixa Preta

Tratamento de Sinais

Programação em Shell Script (Linux Administration) Jacson RC Silva <jeiks>

Linux Essentials. Managing Package and Process

Gerenciamento de memória virtual no Kernel Linux conceitos básicos

UFRJ IM - DCC. Departamento de Ciência da Computação. Sistemas Operacionais II. 25/10/2016 Profª Valeria Menezes Bastos 1

Arquitetura de Sistemas Operativos

Processos e Sinais - Linux

Sistemas Operacionais e Introdução à Programação. Módulo 1 Sistemas Operacionais

Interface gráfico. José Pedro Oliveira Interpretador de comandos Comando su. Conceitos de Sistemas Informáticos 2005

Sistemas Operacionais Prof. André Y. Kusumoto

Instalação e Configuração de Servidores Linux Server Gerenciamento de Processos. Prof. Alex Furtunato

Guia de Troubleshooting do uso da alta utilização da CPU do nexo 7000

Gerenciamento de Processos

Programação de Sistemas

Processos. Sistemas Operativos 2008 / Multiprogramação

Este documento não é de forma alguma exaustivo, nem pretende ser um manual, apenas uma referência aos pontos nele abordados.

Arranque do Sistema. Iniciação do Kernel. Iniciação de Processo/Serviços. Runlevel(s) /etc/inittab. Runlevel(s)

Complementos de Programação. Engenharia Electrotécnica - Electrónica e Computadores. Ano Lectivo: 2005/2006. Ana Madureira. Gestão de Processos

Interpretadores de comandos. Interpretadores de comandos de login válidos. Caracteres especiais. José Pedro Oliveira

Sistemas Operativos. (ano letivo ) Laboratório 2

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

Abortar a execução dum programa

Gerenciamento de Processos

Laboratório de Redes de Computadores e Sistemas Operacionais

Este documento não é de forma alguma exaustivo, nem pretende ser um manual, apenas uma referência aos pontos nele abordados.

Processos. Sistemas Operativos 2009 / Multiprogramação

Planeamento. Introdução ao Sistema Operativo UNIX. Java: Ferramentas, Entradas/Saídas, Excepções. Threads e Semáforos. Problemas de Sincronização

Minicurso Básico de Linux

Sistemas Operacionais Profa. Roberta Lima Gomes ROTEIRO LAB File System

Sistemas Operacionais e Introdução a Programação

Sistemas Operacionais. Laboratório 1 (Ambiente de Aprendizado)

Gestão de ficheiros e directórios

Comandos de Verificação. Alberto Felipe Friderichs Barros

Introdução aos Sistemas Operativos

João Correia Lopes. v 1.0, Outubro de Introdução aos Sistemas Operativos v1.0 1

A memória do 1000 Series Router ASR pesquisa defeitos o guia

Configurações avançadas de rede

3. Criação e terminação de processos

Comandos de arquivos

Processos. processos UNIX e Linux threads em Linux. Taisy Weber

SVCs para Controle de Processos no Unix

b. Causa parada do processo c. Reinicia um processo parado d. O processo é enviado para primeiro plano e. O processo é enviado para segundo plano 5)

Gerenciamento de Processos

1. Processos. Núcleo, Processos e Tarefas. Page 1. Processo Processo Processo. Sistemas Operativos 2011 / Departamento de Engenharia Informática

Gerenciamento de processos

5. Comunicação entre processos - Sinais

ps: Process Status - Apresenta o estado dos processos ps a: Outros utilizadores ps u: Info Utilizador

LAB DHCP Configuração do serviço DHCP

Ficha de Revisão do Módulo 4 - Sistema Operativo Open Source

Monitore o USO de CPU no ISR4300 Series

Configurando a autenticação radius por meio de Cisco cache engine

Negociação de Identificador de Ponto Final de Terminal ISDN BRI

Processos Volnys B. Bernal Versão de 20/03/2015. Agenda. Processos. Programa x Processo. Programa x Processo. Programa.

1.2 Organização de directórios e ficheiros A linha de comandos

Relembrando. Em nossas primeiras aulas discutimos o conceito do que seria um processo! Quem lembra?

Entraremos em sistema linux para realizar algumas tarefas e aprender alguns comandos.

Segurança em Sistemas Operativos

Verifique a utilização de memória no Roteadores de serviços de agregação Cisco ASR série 1000

Segurança em Sistemas Operativos

Sistemas Operacionais. Rodrigo Rubira Branco

Manual on-line. Volnys Borges Bernal. Edson Toshimi Midorikawa

Exemplo de configuração do módulo do shell CLI do Cisco IOS

Processos. (c) 2005 Volnys B. Bernal Versão de 15/3/2006. Agenda. Processos. Introdução aos Processos. Introdução aos Processos

Processos. Conceitos Básicos

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Sistemas Operativos: Processos

Processo. Gerência de Processos. Um programa em execução. Centro de Informática/UFPE :: Infraestrutura de Software

Sistemas Operacionais de Redes Comandos de Administração. segunda-feira, 1 de julho de 13

Fundamentos de Sistemas Operacionais

Transcrição:

(jpo@di.uminho.pt) Grupo de Sistemas Distribuídos Departamento de Informática Escola de Engenharia Universidade do Minho Sistemas Operativos 2005-2006

Conteúdo 1 2 s

s Identificador de processo pid - process identifier ppid - parent process identifier Estado de processos D - uninterruptible sleep (IO), R - runnable, S - sleeping, T - traced or stopped, Z - zombie

O comando ps permite obter um snapshot dos processos actuais. Synopsis ps [opç~oes] Algumas opções a - todos os processos sem terminal associado l - lista pids e ppids x - inclusive os processos sem terminal associado u - formato orientado ao utilizador -u user - processos do utilizador user f - hierarquia de processos am arte ASCII

: exemplos $ ps PID TTY TIME CMD 5549 pts/5 00:00:00 bash 7530 pts/5 00:00:00 ps Colunas PID - identificador do processo TTY - terminal associado ao processo TIME - tempo de CPU acumulado CMD - comando executado

: exemplos $ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.0 0.0 2064 552? S 06:12 0:00 init [3] root 2 0.0 0.0 0 0? SN 06:12 0:00 [ksoftirqd/0] root 3 0.0 0.0 0 0? S< 06:12 0:00 [events/0]... Colunas USER - utilizador PID - identificador do processo TTY - terminal associado ao processo STAT - estado do processo TIME - tempo de CPU acumulado COMMAND - comando executado

: exemplos $ ps axf PID TTY STAT TIME COMMAND 1? S 0:00 init [3] 2? SN 0:00 [ksoftirqd/0] 3? S< 0:00 [events/0] 4? S< 0:00 \_ [khelper]... 4642 tty3 Ss+ 0:00 /sbin/mingetty tty3 4643? Ss 0:00 login -- jpo 5252 tty4 Ss 0:00 \_ -bash 5299 tty4 S+ 0:00 \_ /bin/sh /usr/x11r6/bin/startx 5310 tty4 S+ 0:00 \_ xinit /etc/x11/xinit/xinitrc -- 5311? S 1:10 \_ X :0 5384 tty4 S 0:00 \_ /bin/sh /usr/bin/startkde 5774 tty4 S 0:00 \_ kwrapper ksmserver 4646 tty5 Ss+ 0:00 /sbin/mingetty tty5...

Permite monitorizar a actividade do sistema. Por omissão lista os processos com maior utilização de CPU. Synopsis top [opç~oes] Algumas opções -d - intervalo entre actualizações -n - número de iterações

: exemplo $ top top - 02:25:32 up 53 min, 11 users, load average: 0.04, 0.08, 0.08 Tasks: 91 total, 1 running, 90 sleeping, 0 stopped, 0 zombie Cpu(s): 1.0% us, 0.0% sy, 0.0% ni, 99.0% id, 0.0% wa, 0.0% hi, 0.0% si Mem: 636984k total, 333860k used, 303124k free, 22140k buffers Swap: 1020088k total, 0k used, 1020088k free, 185932k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 5311 root 15 0 143m 10m 2196 S 0.3 1.7 0:43.71 X 5809 jpo 15 0 32032 15m 12m S 0.3 2.6 0:02.84 kdeinit 7652 jpo 17 0 2364 940 748 R 0.3 0.1 0:00.05 top 1 root 16 0 2928 552 472 S 0.0 0.1 0:00.84 init 2 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0 3 root 5-10 0 0 0 S 0.0 0.0 0:00.16 events/0...

Permite executar programas com prioridades de escalonamento modificadas. Synopsis nice [opç~ao] [comando [arg]...] Algumas opções -n adjust - incrementa a prioridade em adjust

O comando kill permite enviar um sinal para um processo ou um grupo de processos. Se nenhum sinal for especificado, o sinal TERM é enviado por omissão. O sinal TERM mata todos os processos que não o interceptarem. Nalguns casos pode ser necessário enviar o sinal KILL (9), dado que este sinal não pode ser interceptado. Synopsis kill [opç~oes] [pid]...

: listar sinais $ kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1 11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP 21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ 26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR 31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3 38) SIGRTMIN+4 39) SIGRTMIN+5... 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2 63) SIGRTMAX-1 64) SIGRTMAX

: sinais Alguns sinais SIGHUP (1) - Hangup. SIGINT (2) - Interrupt. (gerado pela sequência de teclas CTRL+C) SIGQUIT (3) - Quit. (gerado pela sequência de teclas CTRL+\) SIGKILL (9) - Kill, unblockable. Este sinal não pode ser interceptado pela processo. SIGTERM (15) - Termination. Sinal enviado por omissão pelo comando kill.

: exemplos $ kill pid Envia o sinal TERM para o processo pid. O processo ao receber este sinal deverá terminar a sua execução. $ kill -9 pid O sistema operativo termina o processo pid, não lhe dando qualquer hipótese de executar código de limpeza. $ kill -INT pid O sinal INT é enviado para o processo pid.

Conteúdo s 1 2 s

s Descrição O pseudo sistema de ficheiros /proc actua como interface a estruturas de dados do kernel. Pode ser utilizado para obter informação sobre o sistema e alterar certos parâmetros do kernel em runtime (sysctl). Enquanto que a grande maioria do pseudo sistema de ficheiros /proc só pode ser acedida para leitura, o ramo /proc/sys é utilizado para configurar o kernel em runtime, ou seja, permite operações de escrita.

s : informação Informação subdirectórios por processo informação sobre o kernel dispositivos IDE (/proc/ide) informação sobre rede (/proc/net) informação SCSI (/proc/scsi) informação sobre porta paralela (/proc/parport) informação sobre TTY (/proc/tty) estatísticas diversas sobre o kernel (/proc/stat)

/proc/cpuinfo s Informação sobre o(s) processador(es) $ cat /proc/cpuinfo processor : 0 vendor_id : GenuineIntel cpu family : 15 model : 2 model name : Intel(R) Pentium(R) 4 CPU 2.40GHz stepping : 4 cpu MHz : 2405.473 cache size : 512 KB...

nnn (/proc/nnn) s $ ls -l /proc/7218/ total 0 dr-xr-xr-x 2 jpo jpo 0 Feb 21 00:07 attr -r-------- 1 jpo jpo 0 Feb 21 00:09 auxv -r--r--r-- 1 jpo jpo 0 Feb 21 00:06 cmdline lrwxrwxrwx 1 jpo jpo 0 Feb 21 00:09 cwd -> /home/users/jpo/csi -r-------- 1 jpo jpo 0 Feb 21 00:06 environ lrwxrwxrwx 1 jpo jpo 0 Feb 21 00:09 exe -> /usr/x11r6/bin/gvim dr-x------ 2 jpo jpo 0 Feb 21 00:09 fd -r-------- 1 jpo jpo 0 Feb 21 00:09 maps -rw------- 1 jpo jpo 0 Feb 21 00:09 mem -r--r--r-- 1 jpo jpo 0 Feb 21 00:09 mounts lrwxrwxrwx 1 jpo jpo 0 Feb 21 00:09 root -> / -r--r--r-- 1 jpo jpo 0 Feb 21 00:06 stat -r--r--r-- 1 jpo jpo 0 Feb 21 00:09 statm -r--r--r-- 1 jpo jpo 0 Feb 21 00:06 status dr-xr-xr-x 3 jpo jpo 0 Feb 21 00:09 task -r--r--r-- 1 jpo jpo 0 Feb 21 00:09 wchan

s nnn (/proc/nnn) Informação sobre a linha de comando e as variáveis de ambiente $ cat /proc/7218/cmdline tr \0 \n gvim processos.tex $ cat /proc/7218/environ tr \0 \n KDE MULTIHEAD=false HOSTNAME=localhost.localdomain SHELL=/bin/bash TERM=xterm...

nnn (/proc/nnn) s Informação sobre descriptores de ficheiros abertos $ ls -l /proc/7218/fd total 6 lrwx------ 1 jpo jpo 64 Feb 21 00:18 0 -> /dev/pts/5 lrwx------ 1 jpo jpo 64 Feb 21 00:18 1 -> /dev/pts/5 lrwx------ 1 jpo jpo 64 Feb 21 00:18 2 -> /dev/pts/5 lrwx------ 1 jpo jpo 64 Feb 21 00:18 3 -> socket:[17997] lrwx------ 1 jpo jpo 64 Feb 21 00:18 4 -> socket:[17999] lrwx------ 1 jpo jpo 64 Feb 21 00:18 6 -> /tmp/.processos.tex.swp

s Configurar o kernel em runtime: /proc/sys Introdução O directório /proc/sys não só é uma fonte de informação, como permite alterar parâmetros do kernel. Alterar parâmetros do kernel Para alterar um valor basta apenas fazer echo do novo valor para o ficheiro.

Alterar um parâmetro do kernel s Exemplo Alterar o comportamento da stack TCP/IP na recepção de pacotes ICMP broadcast. Executar os seguintes comandos $ cd /proc/sys/net/ipv4 $ cat icmp echo ignore broadcasts 0 $ echo 1 > icmp echo ignore broadcasts $ cat icmp echo ignore broadcasts 1

s Alterar um parâmetro do kernel: comando sysctl Comando sysctl Permite configurar parâmetros em runtime. Os parâmteros disponiveis são os que se encontram listados em /proc/sys. Synopsis sysctl [opç~oes] variável... sysctl [opç~oes] -w variável=valor...... Exemplos $ sysctl -n kernel.hostname $ sysctl -w kernel.hostname=posto123

s Ficheiro de configuração /etc/sysctl.conf $ cat /etc/sysctl.conf # Kernel sysctl configuration file for Red Hat Linux # # For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and # sysctl.conf(5) for more details. # Controls IP packet forwarding net.ipv4.ip_forward = 0 # Controls source route verification net.ipv4.conf.default.rp_filter = 1 # Controls the System Request debugging functionality of the kernel kernel.sysrq = 0...

s man 8 sysctl man 5 sysctl.conf <kernel>/documentation/filesystems/proc.txt Exemplo: linux-2.4.28/documentation/filesystems/proc.txt