so - cap 2 - processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o...

13
Sistemas Operacionais Prof. Fabio Augusto Oliveira Processos •O processador é projetado apenas para executar instruções, não sendo capaz de distinguir qual programa se encontra em execução. A gerência de um ambiente multiprogramável é uma função exclusiva do sistema operacional, que deve controlar a execução dos diversos programas e o uso concorrente do processador

Upload: vuduong

Post on 15-Mar-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

1

Sistemas Operacionais

Prof. Fabio Augusto Oliveira

Processos

• O processador é projetado apenas para executar instruções, não sendo capaz de distinguir qual programa se encontra em execução.

• A gerência de um ambiente multiprogramável éuma função exclusiva do sistema operacional, que deve controlar a execução dos diversos programas e o uso concorrente do processador

Page 2: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

2

Processos

• Para isso, para ser executado, um programa deve estar sempre associado a um processo.

• Tornou-se usual depois da criação dos sistemas operacionais multiprogramáveis.

• Algumas bibliografias utilizam:– Tarefas– Jobs

Processos

• A gerência de processo é uma das principais funções de um sistema operacional.

• Através de processos, um programa pode alocar recursos, compartilhar dados, trocar informações e sincronizar sua execução.

Page 3: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

3

Processos

• Multiprogramáveis - os processos são executados concorrentemente, compartilhando, dentre outros recursos, o uso do processador, da memória principal e dos dispositivos de E/S.

• Múltiplos processadores - não só existe a concorrência de processos pelo uso do processador, como também a execução simultânea de processos nos diferentes processadores

Estrutura do Processo

• Um processo pode ser entendido inicialmente como um programa em execução.

• Em um sistema multiusuário, cada usuário é associado a um processo.

• Ao executar um programa, o usuário tem a impressão de possuir o processador e todos os demais recursos reservados exclusivamente para seu uso.

Page 4: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

4

Estrutura do Processo

• Um processo também pode ser definido como o ambiente onde um programa éexecutado.

• Este ambiente, além das informações sobre a execução, possui também o quanto de recursos do sistema cada programa pode utilizar, como o espaço de endereçamento, tempo de processador e área em disco

Estrutura do Processo

• Um processo é formado por três partes, conhecidas como contexto de hardware, contexto de software e espaço de endereçamento, que juntas mantêm todas as informações necessárias à execução de um programa.

Page 5: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

5

Estrutura do Processo

Programa

Contexto deSoftware

Contexto deHardware

Espaço deEndereçamento

Estrutura do Processo

• Contexto de Hardware– O contexto de hardware armazena o conteúdo dos

registradores gerais da CPU, além dos registradores de uso especifico.

– 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 CPU, o sistema salva as informações no contexto de hardware do processo.

Page 6: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

6

Estrutura do Processo

Carrega registradores doProcesso B

Carrega registradores doProcesso A

Sistema Operacional

Salva registradores doProcesso A

executando

executando

executando

Salva registradores doProcesso B

Processo A Processo B

Estrutura do Processo

• Contexto de Software– No contexto de software são especificados

características e limites dos recursos que podem ser alocadas pelo processo, como o número máximo de arquivos abertos simultaneamente, prioridade de execução e tamanho do buffer para operações de E/S.

– Muitas destas características são determinadas no momento da criação do processo, enquanto outras podem ser alteradas durante sua existência.

Page 7: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

7

Estrutura do Processo

• Contexto de Software– O contexto de software é composto por três

grupos de informações sobre o processo: identificação, quotas e privilégios

• IdentificaçãoCada processo criado pelo sistema recebe uma identificação única (PID – process identification) representada por um número.

Estrutura do Processo

• Contexto de Software• Quotas

As quotas são limites de cada recurso do sistema que um processo pode alocar. Caso uma quota seja insuficiente, o processo poderá ser executado lentamente, interrompido durante seu processamento ou mesmo não ser executado.

– Número máximo de arquivos abertos simultaneamente;– Tamanho máximo de memória principal e secundária

que o processo pode alocar;– Número máximo de operações de E/S pendentes;– Tamanho máximo do buffer para operações de E/S;

Page 8: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

8

Estrutura do Processo

• Contexto de Software• Privilégios

Os privilégios ou direitos definem as ações que um processo pode fazer em relação a ele mesmo, aos demais processos e ao sistema operacional.Privilégios que afetam o próprio processo permitem que suas características possam ser alteradas, como prioridade de execução, limites alocados na memória principal e secundária etc. Já os privilégios que afetam os demais processos permitem, além da alteração de suas próprias características, alterarem as de outros processos.

Estrutura do Processo

• Espaço de Endereçamento– O espaço de endereçamento é a área de

memória pertencente ao processo onde as instruções e os dados do programa são armazenados para execução.

– Cada processo possui seu próprio espaço de endereçamento, que deve ser devidamente protegido do acesso aos demais processos.

Page 9: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

9

Estrutura do Processo

Programa

Contexto deSoftware

prioridade deexecução registrador PC

data/horade criação

tempo deprocessador

registrador SP

quotas

privilégios

endereços de memóriaprincipal alocados

registradorde status

owner (UID)PID

nomeregistradores

gerais

Contexto deHardware

Espaço deEndereçamento

Estados do Processo

• Em um sistema multiprogramável, um processo não deve alocar CPU com exclusividade, de forma que possa existir um compartilhamento no uso do processador.

• Os processos passam por diferentes estados ao longo do seu processamento, em função de eventos gerados pelo sistema operacional ou pelo próprio processo.

• Um processo ativo pode encontrar-se em três diferentes estados.

Page 10: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

10

Estados do Processo

• Execução– Um processo é dito no estado de execução quando

está sendo processado pela CPU.– Em sistemas com apenas uma CPU, somente um

processo pode estar sendo executado em um dado instante.

– Os processos se alternam na utilização do processador seguindo uma política estabelecida pelo sistema operacional.

– Em sistemas com múltiplos processadores, existe a possibilidade de mais de um processo estar sendo executado ao mesmo tempo, ou ser executado em mais de uma CPU (Processamento Paralelo).

Estados do Processo

• Pronto– Um processo está no estado de pronto quando

aguarda apenas para ser executado.– O sistema operacional é responsável por determinar

a ordem e os critérios pelos quais os processos em estado de pronto devem fazer uso do processador.

– Este mecanismo e conhecido como escalonamento.

Page 11: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

11

Estados do Processo

• Espera– Um processo no estado de espera aguarda por

algum evento externo ou por algum recurso para prosseguir seu processamento.

– Como exemplo, podemos citar o término de uma operação de entrada/saída ou a espera de uma determinada data e/ou hora para continuar sua execução.

Mudanças de Estado do Processo

• Um processo muda de estado durante seu processamento em função de eventos originados por ele próprio (eventos voluntários) ou pelo sistema operacional (eventos involuntários). Basicamente, existem quatro mudanças de estado que podem ocorrer a um processo.

Page 12: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

12

Mudanças de Estado do Processo

• Pronto → Execução– Após a criação de um processo, o sistema o coloca

em uma lista de processos no estado de pronto, onde aguarda por uma oportunidade para ser executado (a).

• Execução → Espera– Um processo em execução passa para o estado de

espera por eventos gerados pelo próprio processo, como uma operação de E/S, ou por eventos externos (b). Um evento externo é gerado, por exemplo, quando o sistema operacional suspende por um período de tempo a execução de um processo.

Mudanças de Estado do Processo

• Espera → Pronto– Um processo no estado de espera passa para o

estado de pronto quando a operação solicitada éatendida ou o recurso esperado é concedido. Um processo no estado de espera sempre terá de passar pelo estado de pronto antes de poder ser novamente selecionado para execução. Não existe a mudança do estado de espera para o estado de execução diretamente (c).

Page 13: SO - Cap 2 - Processos sticas e limites dos recursos que podem ser alocadas pelo processo, como o número áximo de arquivos abertosm ... SO - Cap 2 - Processos.ppt

13

Mudanças de Estado do Processo

• Execução → Pronto– Um processo em execução passa para o estado de

pronto por eventos gerados pelo sistema, como o término da fatia de tempo que o processo possui para sua execução (d). Nesse caso, o processo volta para a fila de pronto, onde aguarda por uma nova oportunidade para continuar seu processamento.

Mudanças de Estado do Processo

Estado de Execução

Estado de Espera Estado de Pronto

a

c

db