Sistemas Operacionais 
Conceito de processos
SUMÁRIO 
• INTRODUÇÃO 
• MODELO DE PROCESSO 
– CONTEXTO DE HARDWARE 
– CONTEXTO DE SOFTWARE 
– ESPAÇO DE ENDEREÇAMENTO 
• ...
INTRODUÇÃO 
O termo processo apareceu, de forma a 
ser usado pelos autores, após o surgimento dos 
sistemas multi-programá...
INTRODUÇÃO 
“Processo pode ser entendido como um 
programa em execução, só que seu conceito é 
mais abrangente. Este conce...
MODELO DE PROCESSO 
O conceito de processo pode ser definido como 
sendo o ambiente onde se executa um 
programa. Um mesmo...
MODELO DE PROCESSO 
“O sistema operacional materializa o processo 
através de uma estrutura chamada bloco de 
controle do ...
MODELO DE PROCESSO 
• Identificação 
• Prioridade 
• Estado corrente 
• Recursos alocados
MODELO DE PROCESSO 
Bloco de controle de processo
MODELO DE PROCESSO 
Os processos são gerenciados através de system 
calls, realizando operações como criação, 
eliminação ...
MODELO DE PROCESSO: CONTEXTO DE 
HARDWARE 
“O contexto de hardware constitui-se, basicamente, 
do conteúdo de registradore...
MODELO DE PROCESSO: CONTEXTO DE 
HARDWARE 
O contexto de hardware é fundamental, 
implementa o time-sharing (sistema de te...
MODELO DE PROCESSO: CONTEXTO DE 
HARDWARE 
Essa mudança de contexto consiste em salvar o 
conteúdo dos registradores da UC...
MODELO DE PROCESSO: CONTEXTO DE 
HARDWARE
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
“Contexto de software especifica características 
do processo que vão influir n...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Identificação: 
Os processos criados pelo sistemas 
recebem um identificação ún...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Identificação: 
É através do PID, que o sistema 
operacional e outros processos...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Identificação: 
Owner, é o nome dado a identificação 
gerada pelo usuário ou um...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Quotas: 
São os limites de cada recurso do sistema 
que um processo pode alocar...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Quotas: 
Alguns exemplos de quotas 
• Número máximo de arquivos abertos 
simult...
MODELO DE PROCESSO: CONTEXTO DE 
SOFTWARE 
Privilégios: 
Define o que o processo pode ou não fazer 
em relação ao sistema ...
MODELO DE PROCESSO: ESPAÇO DE 
ENDEREÇAMENTO 
É a área da memória do processo onde 
o programa será executado. 
Cada proce...
ESTADOS DOS PROCESSOS 
Um processo não é executado todo o 
tempo pelo processador. Ele transita por uma 
série de estados,...
ESTADOS DOS PROCESSOS 
Execução: 
Um processo é dito no estado de execução 
quando está sendo processado pela UCP. 
Os pro...
ESTADOS DOS PROCESSOS 
Pronto: 
Quando aguarda para ser executado, ou 
seja espera a UCP executar. 
O sistema operacional ...
ESTADOS DOS PROCESSOS 
Espera: 
Quando aguarda um evento externo ou 
algum recurso para poder prosseguir seu 
processament...
ESTADOS DOS PROCESSOS 
“O sistema operacional gerencia os processos 
através de lista encadeadas, onde cada PCB tem 
um po...
MUDANÇAS DE ESTADO DO PROCESSO 
Um processo muda de estado varias vezes 
em função de eventos originados por ele próprio 
...
MUDANÇAS DE ESTADO DO PROCESSO 
Pronto para execução 
Quando um processo é criado o sistema o 
coloca em uma lista de proc...
MUDANÇAS DE ESTADO DO PROCESSO 
Execução para espera 
Passa-se para o estado de espera por 
eventos gerados pelo próprio p...
MUDANÇAS DE ESTADO DO PROCESSO 
Espera para pronto 
Passa-se para o estado de pronto quando a 
operação solicitada é atend...
MUDANÇAS DE ESTADO DO PROCESSO 
Execução para pronto 
Passa-se para o estado de pronto por 
eventos gerados pelo sistema.
MUDANÇAS DE ESTADO DO PROCESSO
SUBPROCESSO E THREAD 
“Um processo pode criar outros processo de 
maneira hierárquica. Quando um processo 
(processo pai) ...
SUBPROCESSO E THREAD 
Usar subprocessos permite dividir uma aplicação 
em partes que podem trabalhar de forma 
concorrente...
SUBPROCESSO E THREAD 
Em ambientes com múltiplos threads 
(multithread), não é necessário haver vários 
processos para se ...
SUBPROCESSO E THREAD 
A diferença entre subprocessos e threads é em 
relação ao espaço de endereçamento. Enquanto 
process...
PROCESSOS DO SISTEMA 
“O conceito de processo, além de estar 
associado a aplicações de usuário, pode também 
ser implemen...
PROCESSOS DO SISTEMA 
“Quando se usa processos para a 
implementação de funções do sistema, estamos 
retirando código do s...
PROCESSOS DO SISTEMA 
Algumas funções do sistema operacional implementadas 
através de processos 
• Auditoria e segurança ...
TIPOS DE PROCESSOS 
• CPU- bound 
quando o processo passa a maior parte do 
tempo no estado de execução 
• I/O-bound 
Quan...
QUESTÕES 
1. Defina conceito de processo. 
2. A partir do bloco de controle de processo, quais 
informações o sistema oper...
REFERÊNCIAS 
MACHADO, Francis Berenger e MAIA, Luiz Paulo. 
Arquitetura de Sistemas Operacionais. Rio de 
Janeiro, RJ. Edi...
Próximos SlideShares
Carregando em…5
×

Conceito de processos

440 visualizações

Publicada em

INTRODUÇÃO
MODELO DE PROCESSO
CONTEXTO DE HARDWARE
CONTEXTO DE SOFTWARE
ESPAÇO DE ENDEREÇAMENTO
ESTADO DO PROCESSO
MUDANÇAS DE ESTADO DO PROCESSO
SUBPROCESSO E THREAD
PROCESSOS DO SISTEMA
TIPOS DE PROCESSO

Publicada em: Educação
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
440
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
10
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Conceito de processos

  1. 1. Sistemas Operacionais Conceito de processos
  2. 2. SUMÁRIO • INTRODUÇÃO • MODELO DE PROCESSO – CONTEXTO DE HARDWARE – CONTEXTO DE SOFTWARE – ESPAÇO DE ENDEREÇAMENTO • ESTADO DO PROCESSO • MUDANÇAS DE ESTADO DO PROCESSO • SUBPROCESSO E THREAD • PROCESSOS DO SISTEMA • TIPOS DE PROCESSO • QUESTÕES
  3. 3. INTRODUÇÃO O termo processo apareceu, de forma a ser usado pelos autores, após o surgimento dos sistemas multi-programáveis, sendo um dos conceitos mais importantes em sistemas operacionais.
  4. 4. INTRODUÇÃO “Processo pode ser entendido como um programa em execução, só que seu conceito é mais abrangente. Este conceito torna-se mais claro quando pensamos de que forma os sistemas multiprogramáveis (multitarefa) atendem os diversos usuários (tarefas) e mantêm informações a respeito dos vários programas que estão sendo executados concorrentemente.” Machado, Francis Berenger e Maia, Luiz Paulo pag. 65
  5. 5. MODELO DE PROCESSO O conceito de processo pode ser definido como sendo o ambiente onde se executa um programa. Um mesmo programa pode produzir resultados diferentes, em função do processo no qual ele é executado.
  6. 6. MODELO DE PROCESSO “O sistema operacional materializa o processo através de uma estrutura chamada bloco de controle do processo (Process Control Block – PCB)” Machado, Francis Berenger e Maia, Luiz Paulo pag.66 A partir do bloco de controle de processo o sistema operacional mantém todas as informações sobre o processo.
  7. 7. MODELO DE PROCESSO • Identificação • Prioridade • Estado corrente • Recursos alocados
  8. 8. MODELO DE PROCESSO Bloco de controle de processo
  9. 9. MODELO DE PROCESSO Os processos são gerenciados através de system calls, realizando operações como criação, eliminação sincronização, suspensão de processos. O processo pode ser dividido em três elementos básicos: contexto de hardware, contexto de software e espaço de endereçamento
  10. 10. MODELO DE PROCESSO: CONTEXTO DE HARDWARE “O contexto de hardware constitui-se, basicamente, do conteúdo de registradores: program counter (PC), stack pointer (SP) e bits de estado. Quando um processo está em execução, o seu contexto de hardware está armazenado nos registradores do processador. No momento em que o processo perde a utilização da UCP, o sistema salva suas informações no seu contexto de hardware” Machado, Francis Berenger e Maia, Luiz Paulo pag.66
  11. 11. MODELO DE PROCESSO: CONTEXTO DE HARDWARE O contexto de hardware é fundamental, implementa o time-sharing (sistema de tempo compartilhado) onde os processos se revezam no uso do processador, podendo sofrer interrupções. A troca de um processo por outro na UCP é denominada context switching (mudança de contexto).
  12. 12. MODELO DE PROCESSO: CONTEXTO DE HARDWARE Essa mudança de contexto consiste em salvar o conteúdo dos registradores da UCP e carrega-los com os valores referentes ao do processo que esteja ganhando a utilização do processador. Essa operação resume-se em substituir o contexto de hardware de um processo pelo outro
  13. 13. MODELO DE PROCESSO: CONTEXTO DE HARDWARE
  14. 14. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE “Contexto de software especifica características do processo que vão influir na execução de um programa...” Machado, Francis Berenger e Maia, Luiz Paulo pag.66 Contexto de software define três grupos de informações sobre um processo: Identificação, quotas e privilégios.
  15. 15. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Identificação: Os processos criados pelo sistemas recebem um identificação única, PID( Process Identification) que é representada por um número. Observação: Alguns sistemas identificam o processo por um nome, além do PID.
  16. 16. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Identificação: É através do PID, que o sistema operacional e outros processos podem fazer referência a um determinado processo e também podendo alterar uma de suas características.
  17. 17. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Identificação: Owner, é o nome dado a identificação gerada pelo usuário ou um processo UID (user identification), cada usuário possui uma identificação única atribuída ao processo no momento de sua criação. A UID é usada como modelo de segurança, onde apenas objetos que possuem a mesma UID do usuário podem ser acessados.
  18. 18. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Quotas: São os limites de cada recurso do sistema que um processo pode alocar. Quanto uma quota é insuficiente, o processo será executado lentamente ou não será executado.
  19. 19. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Quotas: Alguns exemplos de quotas • Número máximo de arquivos abertos simultaneamente; • Tamanho máximo de memória que o processo pode alocar; • Número máximo de operações de E/S pendentes; • Tamanho máximo do buffer de operações de E/S; • Número máximo de processos e sub-processos que podem ser criados.
  20. 20. MODELO DE PROCESSO: CONTEXTO DE SOFTWARE Privilégios: Define o que o processo pode ou não fazer em relação ao sistema e aos outros processos. “... Existem privilégios associados à segurança que permitem a um usuário eliminar processos de outros usuários e ter acesso a arquivos que não lhe pertencem.”Machado, Francis Berenger e Maia, Luiz Paulo pag.68
  21. 21. MODELO DE PROCESSO: ESPAÇO DE ENDEREÇAMENTO É a área da memória do processo onde o programa será executado. Cada processo possui seu próprio espaço de endereçamento.
  22. 22. ESTADOS DOS PROCESSOS Um processo não é executado todo o tempo pelo processador. Ele transita por uma série de estados, sendo três mais básicos: • Execução (running) • Pronto (ready) • Espera (wait)
  23. 23. ESTADOS DOS PROCESSOS Execução: Um processo é dito no estado de execução quando está sendo processado pela UCP. Os processos revezam a utilização do processador seguindo uma politica estabelecida pelo sistema operacional.
  24. 24. ESTADOS DOS PROCESSOS Pronto: Quando aguarda para ser executado, ou seja espera a UCP executar. O sistema operacional é responsável por determinar a ordem dos processos em estado de pronto para ganhar a UCP. “... Normalmente existem vários processos no sistema no esta de pronto.”Machado, Francis Berenger e Maia, Luiz Paulo pag.69
  25. 25. ESTADOS DOS PROCESSOS Espera: Quando aguarda um evento externo ou algum recurso para poder prosseguir seu processamento. Em alguns sistemas esse estado pode assumir uma subdivisão em função ao tipo de evento que processo aguarda. Quando o recurso não se encontra disponível é dito que o processo esta em estado de bloqueado (blocked).
  26. 26. ESTADOS DOS PROCESSOS “O sistema operacional gerencia os processos através de lista encadeadas, onde cada PCB tem um ponteiro para seu sucessor. Como podem existir vários processos nos estados de pronto ou de espera, o sistema implementa listas, onde os processos aguardam seu processamento... Ou esperam por algum evento....” Machado, Francis Berenger e Maia, Luiz Paulo pag.69
  27. 27. MUDANÇAS DE ESTADO DO PROCESSO Um processo muda de estado varias vezes em função de eventos originados por ele próprio ou pelo sistema operacional.
  28. 28. MUDANÇAS DE ESTADO DO PROCESSO Pronto para execução Quando um processo é criado o sistema o coloca em uma lista de processos no “estado pronto” aguardando para ser executado. Cada sistema operacional tem seus critérios e algoritmos para escolha da ordem de execução dos processos.
  29. 29. MUDANÇAS DE ESTADO DO PROCESSO Execução para espera Passa-se para o estado de espera por eventos gerados pelo próprio processo.
  30. 30. MUDANÇAS DE ESTADO DO PROCESSO Espera para pronto Passa-se para o estado de pronto quando a operação solicitada é atendida ou o recurso é concedido. Um processo no estado de espera sempre terá de passar pelo estado de pronto antes de poder ser novamente selecionado para execução.
  31. 31. MUDANÇAS DE ESTADO DO PROCESSO Execução para pronto Passa-se para o estado de pronto por eventos gerados pelo sistema.
  32. 32. MUDANÇAS DE ESTADO DO PROCESSO
  33. 33. SUBPROCESSO E THREAD “Um processo pode criar outros processo de maneira hierárquica. Quando um processo (processo pai) cria um outro, chamamos o processo criado de subprocesso ou processo filho.” Machado, Francis Berenger e Maia, Luiz Paulo pag.71
  34. 34. SUBPROCESSO E THREAD Usar subprocessos permite dividir uma aplicação em partes que podem trabalhar de forma concorrente. O uso de subprocessos no desenvolvimento de aplicações concorrentes demanda consumo de diversos recursos do sistema. Na tentativa de diminuir o tempo gasto na criação/eliminação de processos, bem como economizar recursos do sistema como um todo, foi introduzido o conceito de thread
  35. 35. SUBPROCESSO E THREAD Em ambientes com múltiplos threads (multithread), não é necessário haver vários processos para se implementar aplicações concorrentes. Cada processo pode responder a várias solicitações concorrentemente ou mesmo simultaneamente, se houver mais de um processador.
  36. 36. SUBPROCESSO E THREAD A diferença entre subprocessos e threads é em relação ao espaço de endereçamento. Enquanto processos possuem, cada um, espaços independentes e protegidos as threads compartilham o mesmo espaço de endereçamento do processo, sem nenhuma proteção, permitindo assim que um thread possa alterar dados de outro thread. Threads são desenvolvidas para trabalhar de forma cooperativa.
  37. 37. PROCESSOS DO SISTEMA “O conceito de processo, além de estar associado a aplicações de usuário, pode também ser implementado na própria estrutura do sistema operacional.” Machado, Francis Berenger e Maia, Luiz Paulo pag.73
  38. 38. PROCESSOS DO SISTEMA “Quando se usa processos para a implementação de funções do sistema, estamos retirando código do seu núcleo, tornando-o menos e mais estável.” Machado, Francis Berenger e Maia, Luiz Paulo pag.73
  39. 39. PROCESSOS DO SISTEMA Algumas funções do sistema operacional implementadas através de processos • Auditoria e segurança • Serviço de rede • Contabilização de recursos • Contabilização de erros • Gerencia de impressão • Gerencia de jobs batch • Temporização • Comunicação de eventos • Interface de comandos (shell)
  40. 40. TIPOS DE PROCESSOS • CPU- bound quando o processo passa a maior parte do tempo no estado de execução • I/O-bound Quando passa a maior parte do tempo em estado de espera, pois realiza um elevado número de operações de entrada e saída.
  41. 41. QUESTÕES 1. Defina conceito de processo. 2. A partir do bloco de controle de processo, quais informações o sistema operacional mantem sobre o processo? 3. Em contexto de hardware como é chamado a troca de um processo por outro na UCP? 4. Em contexto de software, qual os três grupos de informação de um processo? 5. Defina PID (contexto de software). 6. O que é espaço de endereçamento? 7. Quais os três estados de um processo?
  42. 42. REFERÊNCIAS MACHADO, Francis Berenger e MAIA, Luiz Paulo. Arquitetura de Sistemas Operacionais. Rio de Janeiro, RJ. Editora LTC, 1994.

×