SlideShare ist ein Scribd-Unternehmen logo
1 von 8
Downloaden Sie, um offline zu lesen
04/04/2011




                      Bootstrap
Programa inicial ou de partida, que inicializa todos os
aspectos do sistema, desde registradores de CPU a
controladoras de dispositivos, passando pelo conteúdo da
memória.

Etapas do carregamento :
    • Localizar e carregar na memória o kernel do SO
    • Inicia a execução do primeiro processo “init”
    • Monitorar ocorrência de evento (interrupção de
    Hardware ou Software) , caso ocorra o hardware envia
    um sinal para CPU, geralmente por meio do barramento
    do sistema.




                      Bootstrap
Sistemas modernos são baseados em interrupções, se nao
houver processos para executar, nenhum dispositivo I/O ao
qual fornecer serviço e nenhum usuário a ser atendido, um
SO ficará parado, esperando que algo aconteça.
Os eventos são quase sempre sinalizados pela ocorrência de
uma interrupção ou um trap.
Trap, ou exceção, é uma interrupção gerada por software
causada por um erro (por exemplo, a divisão por zero, ou
acesso inválido à memória)
Para cada tipo de interrupção , segmentos de código no SO
determinam que ação deve ser realizada.




          Gerência de processos
O que é um processo ?
     • Pode ser considerado um programa em execução
          Programa de usuário de tempo compartilhado,
         como um compilador
          Enviar saída para impressora
          Processador de textos executado por um usuário
         individual em um PC
Obs: Por enquanto podemos considerar que um processo é
um job ou programa de tempo compartilhado, mais tarde
veremos que o conceito é mais geral, onde será possivel
fornecer chamadas ao sistema que permitem aos processos
criar subprocessos para a execução concorrente.




                                                                     1
04/04/2011




          Gerência de processos
Um processo precisa de determinados recursos, para realizar
suas tarefas, tais como :
    • Tempo de CPU
    • Memória
    • Arquivos e dispositivos de I/O

Que são dados ao processo quando ele é criado ou alocados a
ele durante sua execução.

Vale a pena lembrar que um programa por si só não é um
processo; um programa é uma entidade passiva, como o
conteúdo de um arquivo armazenado em disco, enquanto um
processo é uma entidade ativa, com um contador do
programa especificando a próxima instrução a ser executada.




          Gerência de processos
• A execução de um processo deve ser sequencial, onde a
CPU executa uma instrução do processo após a outra até o
processo terminar
• No máximo uma instrução do processo é executada em
nome do processo, ou seja, embora 2 processos possam ser
associados com o mesmo programa, ele são considerados
duas sequencias de execução separadas.
• É comum ter programas que utilize muitos processos para
sua execução.
• Vários processos podem executar concorrentemente,
multiplexando a CPU entre entre eles.




          Gerência de processos
O sistema operacional é responsável pelas seguintes
atividades em relação à gerência de processos :
      Criar e excluir processos de usuários e sistemas
      Suspender e retomar processos
      Fornecer mecanismos para sincronização de
     processos
      Fornecer mecanismos para comunicação de
     processos
      Fornecer mecanismos para tratamento de deadlocks
     (impasses)




                                                                      2
04/04/2011




          Gerência de processos
• Um processo é formado por três partes:

     Contexto de hardware
     Contexto de software
     Espaço de endereçamento




          Gerência de processos
Contexto de Hardware
    Armazena o conteúdo dos registradores gerais da
   CPU e de uso específico, como o program counter (PC),
   o stack pointer (SP) e o registrador de status (PSW).

     Quando um processo está em execução , o os
    registradores da CPU são utilizados

     Quando o processo perde a utilização da CPU, o
    sistema salva o contexto de hardware no processo.

    A troca de um processo por outro na CPU é chamada
    de mudança de contexto.




          Gerência de processos
Contexto de Software

    São especificadas as características e limites dos
    recursos que podem ser alocados pelo processo, como
    prioridade para execução, privilégios, tamanho do buffer
    para operações de E/S etc.;

     O contexto de software é formado por três grupos de
    informações:

        • Identificação
        • Quotas
        • Privilégios




                                                                       3
04/04/2011




          Gerência de processos
Contexto de Software

     Identificação
        • PID (Program Id)
        • UID (Owner) (identificação do usuário que os criou)

     Quotas
       • São os limites de cada recurso do sistema que um
       processo pode alocar:
            Número máximo de arquivos abertos
           simultaneamente;
            Tamanho máximo de memória principal e
           secundária
            Número máximo de operações de E/S pendentes




          Gerência de processos
Contexto de Software

 Privilégios
    • Definem as ações que um processo pode fazer em
    relação a ele mesmo, aos demais processos e ao SO

         Privilégios que afetam o próprio processo permitem
        que suas características possam ser modificadas.
             Prioridade de execução
             Limites alocados na memória principal e
            secundária

         O usuário que possuem todos os privilégios são
        chamados de Administrador (Windows) e root (Linux)




          Gerência de processos
  Espaço de endereçamento

   É a área do processo onde as instruções e dados do
  programa são armazenados para sua execução

   Cada processo possui o seu espaço; nenhum outro processo
  poderá ocupá-lo.




                                                                        4
04/04/2011




        Gerência de processos
Estado do processo

 Nos sistemas operacionais multitarefa, um processo não
poderá ocupar exclusivamente uma CPU.

 Para que o compartilhamento da CPU seja efetivado, um
processo passa por vários estados ao longo de seu
completo processamento

 A mudança de estados é gerada por eventos do sistema
operacional ou do próprio processo.




        Gerência de processos
 Um processo ativo pode se encontrar em 3 estados :

     Pronto

     Execução

     Espera




        Gerência de processos
Estado de pronto (ready)

     Está no estado de pronto quando aguarda para ser
    executado

     Os processos no estado de pronto ficam em uma lista
    encadeada

     O escalonamento dos processos determina a ordem e
    os critérios pelos quais os processos neste estado deverá
    fazer uso do processador.




                                                                        5
04/04/2011




         Gerência de processos
 Estado de execução (running)

      Está no estado de execução quando está sendo
     processado pela CPU

      Os processos se alternam na utilização da CPU
     seguindo uma política de escalonamento estabelecida pelo
     Sistema Operacional




         Gerência de processos
 Estado de espera (waiting)

      Aguarda por algum evento externo ou por algum recurso
 para prosseguir o processamento.

      Também são organizados em lista encadeada

      Todos os processos em estado de espera são colocados
     novamente em fila de pronto

          Espera de uma data e hora para executar uma ação
         ou espera de entrada pelo usuário.




         Gerência de processos
Mudança de Estado do processo

   Um processo muda de estado durante seu processamento
   em função de :

       • Eventos voluntários originados pelo próprio processo
       • Eventos involuntários originados pelo SO

   São 4 as mudanças de estado :
       • de pronto para execução
       • de execução para espera
       • de espera para pronto
       • de execução para pronto




                                                                        6
04/04/2011




         Gerência de processos
De pronto para execução

       1. SO cria o processo

       2. Sistema coloca processo em estado de pronto e fica
       aguardando uma oportunidade para ser executado.

       3. Processo é executado




         Gerência de processos

 De execução para pronto

        1. Processo se encontra em execução;

        2. Tempo para execução do processo termina;

        3. Processo retorna à fila de pronto




         Gerência de processos

 De execução para espera

        1. Processo está sendo executado;

        2. SO suspende a execução do processo colocando-o
        em fila de espera por um determinado tempo;




                                                                       7
04/04/2011




        Gerência de processos

De espera para pronto

       1. Processo está em espera (waiting);

       2. Um determinado recurso ou operação é solicitada
          pelo processo, que é atendido.

       3. Processo entra para a fila de pronto




        Gerência de processos
Swapping

   • Processos em estado de pronto ou espera podem ser
   alocados em memória secundária caso não haja espaço
   suficiente na memória principal;

   • Esta técnica chamamos de Swapping

   • Swapp out quando o processo ou programa é levado para
   a memória secundária.
   • Swapp in quando o mesmo retorna para a memória
   principal




                                                                     8

Weitere ähnliche Inhalte

Was ist angesagt?

Gerência de processos
Gerência de processosGerência de processos
Gerência de processosVirgínia
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamentoBruno Rick
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threadsPaulo Fonseca
 
Sistemas Operacionais - 03 - Tipos e Estrutura dos SO
Sistemas Operacionais - 03 - Tipos e Estrutura dos SOSistemas Operacionais - 03 - Tipos e Estrutura dos SO
Sistemas Operacionais - 03 - Tipos e Estrutura dos SOMauro Duarte
 
Sistemas Operacionais parte 2
Sistemas Operacionais  parte 2Sistemas Operacionais  parte 2
Sistemas Operacionais parte 2Matheus Brito
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisCid de Andrade
 
Sistemas operativos trabalho 10ºano
Sistemas operativos trabalho 10ºanoSistemas operativos trabalho 10ºano
Sistemas operativos trabalho 10ºanoHus Juky
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosCharles Fortes
 
Componentes do Sistema operacional
Componentes do Sistema operacional Componentes do Sistema operacional
Componentes do Sistema operacional Rodrigo Rodrigues
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisIsaac Vieira
 
2010 02 26 Sistemas Operacionais Aula1
2010 02 26 Sistemas Operacionais Aula12010 02 26 Sistemas Operacionais Aula1
2010 02 26 Sistemas Operacionais Aula1Universal.org.mx
 
Unix - Sistemas Operacionais
Unix - Sistemas OperacionaisUnix - Sistemas Operacionais
Unix - Sistemas OperacionaisJunior Silva
 

Was ist angesagt? (20)

Gerência de processos
Gerência de processosGerência de processos
Gerência de processos
 
Sistema operacional
Sistema operacionalSistema operacional
Sistema operacional
 
Aula3 escalonamento
Aula3 escalonamentoAula3 escalonamento
Aula3 escalonamento
 
Escalonamento de processos
Escalonamento de processosEscalonamento de processos
Escalonamento de processos
 
Apostila 5 processos e threads
Apostila 5   processos e threadsApostila 5   processos e threads
Apostila 5 processos e threads
 
Sistemas Operacionais - 03 - Tipos e Estrutura dos SO
Sistemas Operacionais - 03 - Tipos e Estrutura dos SOSistemas Operacionais - 03 - Tipos e Estrutura dos SO
Sistemas Operacionais - 03 - Tipos e Estrutura dos SO
 
Unix - Sistema Operacional
Unix - Sistema OperacionalUnix - Sistema Operacional
Unix - Sistema Operacional
 
02 so
02 so02 so
02 so
 
S.o aula 5678
S.o aula 5678S.o aula 5678
S.o aula 5678
 
Sistemas operacionais
Sistemas operacionaisSistemas operacionais
Sistemas operacionais
 
Sistemas Operacionais parte 2
Sistemas Operacionais  parte 2Sistemas Operacionais  parte 2
Sistemas Operacionais parte 2
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas Operacionais
 
Atps sistemas operacionais
Atps sistemas operacionaisAtps sistemas operacionais
Atps sistemas operacionais
 
Sistemas operativos trabalho 10ºano
Sistemas operativos trabalho 10ºanoSistemas operativos trabalho 10ºano
Sistemas operativos trabalho 10ºano
 
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e ExercíciosSistemas Operacionais - Aula 4 - Revisão e Exercícios
Sistemas Operacionais - Aula 4 - Revisão e Exercícios
 
Processos+threads.2pp
Processos+threads.2ppProcessos+threads.2pp
Processos+threads.2pp
 
Componentes do Sistema operacional
Componentes do Sistema operacional Componentes do Sistema operacional
Componentes do Sistema operacional
 
Estruturas de Sistemas Operacionais
Estruturas de Sistemas OperacionaisEstruturas de Sistemas Operacionais
Estruturas de Sistemas Operacionais
 
2010 02 26 Sistemas Operacionais Aula1
2010 02 26 Sistemas Operacionais Aula12010 02 26 Sistemas Operacionais Aula1
2010 02 26 Sistemas Operacionais Aula1
 
Unix - Sistemas Operacionais
Unix - Sistemas OperacionaisUnix - Sistemas Operacionais
Unix - Sistemas Operacionais
 

Ähnlich wie Fso parte iii

2 organização do sistema operativo - sistemas operativos
2   organização do sistema operativo - sistemas operativos2   organização do sistema operativo - sistemas operativos
2 organização do sistema operativo - sistemas operativosMaria194536
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3Universal.org.mx
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: IntroduçãoAlexandre Duarte
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsPedro De Almeida
 
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSilvano Oliveira
 
Estrutura de processos apresentação
Estrutura de processos apresentaçãoEstrutura de processos apresentação
Estrutura de processos apresentaçãoRafael Dos Santos
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxcassamo2
 
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosSeminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosRobson Ferreira
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisRonildo Oliveira
 
Sistemas operativos de grande porte
Sistemas operativos de grande porteSistemas operativos de grande porte
Sistemas operativos de grande porteteacherpereira
 
Sistemas operativos de grande porte
Sistemas operativos de grande porteSistemas operativos de grande porte
Sistemas operativos de grande porteteacherpereira
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsEvandro Júnior
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: ProcessosAlexandre Duarte
 
SO-01 Introdução aos Sistemas Operacionais
SO-01 Introdução aos Sistemas OperacionaisSO-01 Introdução aos Sistemas Operacionais
SO-01 Introdução aos Sistemas OperacionaisEduardo Nicola F. Zagari
 

Ähnlich wie Fso parte iii (20)

2 organização do sistema operativo - sistemas operativos
2   organização do sistema operativo - sistemas operativos2   organização do sistema operativo - sistemas operativos
2 organização do sistema operativo - sistemas operativos
 
Processos
ProcessosProcessos
Processos
 
12/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula312/03/2010 - Sistemas Operacionais Aula3
12/03/2010 - Sistemas Operacionais Aula3
 
Visão Geral: Introdução
Visão Geral: IntroduçãoVisão Geral: Introdução
Visão Geral: Introdução
 
Sistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e ThreadsSistemas Operativos - Processos e Threads
Sistemas Operativos - Processos e Threads
 
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdfSO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
SO02 - Sistemas-Operacionais - Gerencia de Processos.pdf
 
Estrutura de processos apresentação
Estrutura de processos apresentaçãoEstrutura de processos apresentação
Estrutura de processos apresentação
 
Lecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptxLecture 4-Processos e Threads pt mz.pptx
Lecture 4-Processos e Threads pt mz.pptx
 
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processosSeminário 1º Tema parte III - Estados de processos e escalonamento de processos
Seminário 1º Tema parte III - Estados de processos e escalonamento de processos
 
Processos e threads cap 02 (i unidade)
Processos e threads   cap 02 (i unidade)Processos e threads   cap 02 (i unidade)
Processos e threads cap 02 (i unidade)
 
SO-04 Escalonamento de Processos
SO-04 Escalonamento de ProcessosSO-04 Escalonamento de Processos
SO-04 Escalonamento de Processos
 
Aula3so
Aula3soAula3so
Aula3so
 
SO - Aula 05 - Concorrencia
SO - Aula 05 - ConcorrenciaSO - Aula 05 - Concorrencia
SO - Aula 05 - Concorrencia
 
Conceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionaisConceitos básicos de sistemas operacionais
Conceitos básicos de sistemas operacionais
 
Sistemas operativos de grande porte
Sistemas operativos de grande porteSistemas operativos de grande porte
Sistemas operativos de grande porte
 
Sistemas operativos de grande porte
Sistemas operativos de grande porteSistemas operativos de grande porte
Sistemas operativos de grande porte
 
Arquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e ThreadsArquitetura de Computadores: Processos e Threads
Arquitetura de Computadores: Processos e Threads
 
Gerência de Processos: Processos
Gerência de Processos: ProcessosGerência de Processos: Processos
Gerência de Processos: Processos
 
S.o aula 121314
S.o aula 121314S.o aula 121314
S.o aula 121314
 
SO-01 Introdução aos Sistemas Operacionais
SO-01 Introdução aos Sistemas OperacionaisSO-01 Introdução aos Sistemas Operacionais
SO-01 Introdução aos Sistemas Operacionais
 

Mehr von paulocsm

Gc19maiomenor 140520055303-phpapp02
Gc19maiomenor 140520055303-phpapp02Gc19maiomenor 140520055303-phpapp02
Gc19maiomenor 140520055303-phpapp02paulocsm
 
Estacoes (1)
Estacoes (1)Estacoes (1)
Estacoes (1)paulocsm
 
Manual pim iii_ti
Manual pim iii_tiManual pim iii_ti
Manual pim iii_tipaulocsm
 
Manual PIM II
Manual PIM IIManual PIM II
Manual PIM IIpaulocsm
 
Redes e telecom
Redes e telecomRedes e telecom
Redes e telecompaulocsm
 
Matematica
MatematicaMatematica
Matematicapaulocsm
 
Modelagem processos
Modelagem processosModelagem processos
Modelagem processospaulocsm
 
Sistema da informacao
Sistema da informacaoSistema da informacao
Sistema da informacaopaulocsm
 
Metodologia cientifica
Metodologia cientificaMetodologia cientifica
Metodologia cientificapaulocsm
 
Psi caso continental airlines
Psi   caso continental airlinesPsi   caso continental airlines
Psi caso continental airlinespaulocsm
 
Cultura de informacao.v0
Cultura de informacao.v0Cultura de informacao.v0
Cultura de informacao.v0paulocsm
 
Lista de exercícios
Lista de exercíciosLista de exercícios
Lista de exercíciospaulocsm
 
Implicação lógica2
Implicação lógica2Implicação lógica2
Implicação lógica2paulocsm
 
Apresentacao unip 24.03.11
Apresentacao unip 24.03.11Apresentacao unip 24.03.11
Apresentacao unip 24.03.11paulocsm
 
Discurso obama teatro_rj_orig
Discurso obama teatro_rj_origDiscurso obama teatro_rj_orig
Discurso obama teatro_rj_origpaulocsm
 
Discurso obama teatro_rj_trad
Discurso obama teatro_rj_tradDiscurso obama teatro_rj_trad
Discurso obama teatro_rj_tradpaulocsm
 
Discurso obama empresarios_df_trad
Discurso obama empresarios_df_tradDiscurso obama empresarios_df_trad
Discurso obama empresarios_df_tradpaulocsm
 
Medidas de dispersão
Medidas de dispersãoMedidas de dispersão
Medidas de dispersãopaulocsm
 

Mehr von paulocsm (20)

Gc19maiomenor 140520055303-phpapp02
Gc19maiomenor 140520055303-phpapp02Gc19maiomenor 140520055303-phpapp02
Gc19maiomenor 140520055303-phpapp02
 
Estacoes (1)
Estacoes (1)Estacoes (1)
Estacoes (1)
 
Manual pim iii_ti
Manual pim iii_tiManual pim iii_ti
Manual pim iii_ti
 
Manual PIM II
Manual PIM IIManual PIM II
Manual PIM II
 
Pim ii
Pim iiPim ii
Pim ii
 
Redes e telecom
Redes e telecomRedes e telecom
Redes e telecom
 
Matematica
MatematicaMatematica
Matematica
 
Modelagem processos
Modelagem processosModelagem processos
Modelagem processos
 
Sistema da informacao
Sistema da informacaoSistema da informacao
Sistema da informacao
 
Etica
EticaEtica
Etica
 
Metodologia cientifica
Metodologia cientificaMetodologia cientifica
Metodologia cientifica
 
Psi caso continental airlines
Psi   caso continental airlinesPsi   caso continental airlines
Psi caso continental airlines
 
Cultura de informacao.v0
Cultura de informacao.v0Cultura de informacao.v0
Cultura de informacao.v0
 
Lista de exercícios
Lista de exercíciosLista de exercícios
Lista de exercícios
 
Implicação lógica2
Implicação lógica2Implicação lógica2
Implicação lógica2
 
Apresentacao unip 24.03.11
Apresentacao unip 24.03.11Apresentacao unip 24.03.11
Apresentacao unip 24.03.11
 
Discurso obama teatro_rj_orig
Discurso obama teatro_rj_origDiscurso obama teatro_rj_orig
Discurso obama teatro_rj_orig
 
Discurso obama teatro_rj_trad
Discurso obama teatro_rj_tradDiscurso obama teatro_rj_trad
Discurso obama teatro_rj_trad
 
Discurso obama empresarios_df_trad
Discurso obama empresarios_df_tradDiscurso obama empresarios_df_trad
Discurso obama empresarios_df_trad
 
Medidas de dispersão
Medidas de dispersãoMedidas de dispersão
Medidas de dispersão
 

Fso parte iii

  • 1. 04/04/2011 Bootstrap Programa inicial ou de partida, que inicializa todos os aspectos do sistema, desde registradores de CPU a controladoras de dispositivos, passando pelo conteúdo da memória. Etapas do carregamento : • Localizar e carregar na memória o kernel do SO • Inicia a execução do primeiro processo “init” • Monitorar ocorrência de evento (interrupção de Hardware ou Software) , caso ocorra o hardware envia um sinal para CPU, geralmente por meio do barramento do sistema. Bootstrap Sistemas modernos são baseados em interrupções, se nao houver processos para executar, nenhum dispositivo I/O ao qual fornecer serviço e nenhum usuário a ser atendido, um SO ficará parado, esperando que algo aconteça. Os eventos são quase sempre sinalizados pela ocorrência de uma interrupção ou um trap. Trap, ou exceção, é uma interrupção gerada por software causada por um erro (por exemplo, a divisão por zero, ou acesso inválido à memória) Para cada tipo de interrupção , segmentos de código no SO determinam que ação deve ser realizada. Gerência de processos O que é um processo ? • Pode ser considerado um programa em execução  Programa de usuário de tempo compartilhado, como um compilador  Enviar saída para impressora  Processador de textos executado por um usuário individual em um PC Obs: Por enquanto podemos considerar que um processo é um job ou programa de tempo compartilhado, mais tarde veremos que o conceito é mais geral, onde será possivel fornecer chamadas ao sistema que permitem aos processos criar subprocessos para a execução concorrente. 1
  • 2. 04/04/2011 Gerência de processos Um processo precisa de determinados recursos, para realizar suas tarefas, tais como : • Tempo de CPU • Memória • Arquivos e dispositivos de I/O Que são dados ao processo quando ele é criado ou alocados a ele durante sua execução. Vale a pena lembrar que um programa por si só não é um processo; um programa é uma entidade passiva, como o conteúdo de um arquivo armazenado em disco, enquanto um processo é uma entidade ativa, com um contador do programa especificando a próxima instrução a ser executada. Gerência de processos • A execução de um processo deve ser sequencial, onde a CPU executa uma instrução do processo após a outra até o processo terminar • No máximo uma instrução do processo é executada em nome do processo, ou seja, embora 2 processos possam ser associados com o mesmo programa, ele são considerados duas sequencias de execução separadas. • É comum ter programas que utilize muitos processos para sua execução. • Vários processos podem executar concorrentemente, multiplexando a CPU entre entre eles. Gerência de processos O sistema operacional é responsável pelas seguintes atividades em relação à gerência de processos :  Criar e excluir processos de usuários e sistemas  Suspender e retomar processos  Fornecer mecanismos para sincronização de processos  Fornecer mecanismos para comunicação de processos  Fornecer mecanismos para tratamento de deadlocks (impasses) 2
  • 3. 04/04/2011 Gerência de processos • Um processo é formado por três partes:  Contexto de hardware  Contexto de software  Espaço de endereçamento Gerência de processos Contexto de Hardware  Armazena o conteúdo dos registradores gerais da CPU e de uso específico, como o program counter (PC), o stack pointer (SP) e o registrador de status (PSW).  Quando um processo está em execução , o os registradores da CPU são utilizados  Quando o processo perde a utilização da CPU, o sistema salva o contexto de hardware no processo. A troca de um processo por outro na CPU é chamada de mudança de contexto. Gerência de processos Contexto de Software São especificadas as características e limites dos recursos que podem ser alocados pelo processo, como prioridade para execução, privilégios, tamanho do buffer para operações de E/S etc.;  O contexto de software é formado por três grupos de informações: • Identificação • Quotas • Privilégios 3
  • 4. 04/04/2011 Gerência de processos Contexto de Software  Identificação • PID (Program Id) • UID (Owner) (identificação do usuário que os criou)  Quotas • São os limites de cada recurso do sistema que um processo pode alocar:  Número máximo de arquivos abertos simultaneamente;  Tamanho máximo de memória principal e secundária  Número máximo de operações de E/S pendentes Gerência de processos Contexto de Software  Privilégios • Definem as ações que um processo pode fazer em relação a ele mesmo, aos demais processos e ao SO  Privilégios que afetam o próprio processo permitem que suas características possam ser modificadas.  Prioridade de execução  Limites alocados na memória principal e secundária  O usuário que possuem todos os privilégios são chamados de Administrador (Windows) e root (Linux) Gerência de processos Espaço de endereçamento  É a área do processo onde as instruções e dados do programa são armazenados para sua execução  Cada processo possui o seu espaço; nenhum outro processo poderá ocupá-lo. 4
  • 5. 04/04/2011 Gerência de processos Estado do processo  Nos sistemas operacionais multitarefa, um processo não poderá ocupar exclusivamente uma CPU.  Para que o compartilhamento da CPU seja efetivado, um processo passa por vários estados ao longo de seu completo processamento  A mudança de estados é gerada por eventos do sistema operacional ou do próprio processo. Gerência de processos  Um processo ativo pode se encontrar em 3 estados :  Pronto  Execução  Espera Gerência de processos Estado de pronto (ready)  Está no estado de pronto quando aguarda para ser executado  Os processos no estado de pronto ficam em uma lista encadeada  O escalonamento dos processos determina a ordem e os critérios pelos quais os processos neste estado deverá fazer uso do processador. 5
  • 6. 04/04/2011 Gerência de processos Estado de execução (running)  Está no estado de execução quando está sendo processado pela CPU  Os processos se alternam na utilização da CPU seguindo uma política de escalonamento estabelecida pelo Sistema Operacional Gerência de processos Estado de espera (waiting)  Aguarda por algum evento externo ou por algum recurso para prosseguir o processamento.  Também são organizados em lista encadeada  Todos os processos em estado de espera são colocados novamente em fila de pronto  Espera de uma data e hora para executar uma ação ou espera de entrada pelo usuário. Gerência de processos Mudança de Estado do processo Um processo muda de estado durante seu processamento em função de : • Eventos voluntários originados pelo próprio processo • Eventos involuntários originados pelo SO São 4 as mudanças de estado : • de pronto para execução • de execução para espera • de espera para pronto • de execução para pronto 6
  • 7. 04/04/2011 Gerência de processos De pronto para execução 1. SO cria o processo 2. Sistema coloca processo em estado de pronto e fica aguardando uma oportunidade para ser executado. 3. Processo é executado Gerência de processos De execução para pronto 1. Processo se encontra em execução; 2. Tempo para execução do processo termina; 3. Processo retorna à fila de pronto Gerência de processos De execução para espera 1. Processo está sendo executado; 2. SO suspende a execução do processo colocando-o em fila de espera por um determinado tempo; 7
  • 8. 04/04/2011 Gerência de processos De espera para pronto 1. Processo está em espera (waiting); 2. Um determinado recurso ou operação é solicitada pelo processo, que é atendido. 3. Processo entra para a fila de pronto Gerência de processos Swapping • Processos em estado de pronto ou espera podem ser alocados em memória secundária caso não haja espaço suficiente na memória principal; • Esta técnica chamamos de Swapping • Swapp out quando o processo ou programa é levado para a memória secundária. • Swapp in quando o mesmo retorna para a memória principal 8