Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Gerenciamento do processador, Resumos de Sistemas Operacionais

Gerenciamento do processador e suas funcionalidades

Tipologia: Resumos

2021

Compartilhado em 26/04/2022

silas-alves-21
silas-alves-21 🇧🇷

2 documentos

1 / 50

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
SISTEMAS
OPERACIONAIS
Gerenciamento
do
Processador
Prof.: Salustiano Oliveira
E-mail: salustiano.oliveira@estacio.br 1
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32

Pré-visualização parcial do texto

Baixe Gerenciamento do processador e outras Resumos em PDF para Sistemas Operacionais, somente na Docsity!

SISTEMAS

OPERACIONAIS

Gerenciamento

do

Processador

Prof.: Salustiano Oliveira E-mail: [email protected]

Sistemas Operacionais

Processos

(^4) Construção de um Programa

Modelo de processo

 Os primeiros sistemas permitiam a execução de apenas um programa de
cada vez, que deveria ter o controle completo do sistema e acesso a
todos os seus recursos. Os sistemas atuais permitem que diversos
programas sejam carregados na memória e executados simultaneamente.
 Essa evolução tornou necessário um controle maior na divisão de tarefas
dos vários programas, resultando na noção de processo.
 Em um sistema multiprogramável, a unidade central de processamento
(CPU) alterna entre processos, dedicando um pouco de seu tempo a
cada um, dando a ilusão de paralelismo. Este esquema costuma ser
chamado de pseudoparalelismo.

Modelo de Processo  Multiprogramação de 4 programas;  Modelo conceitual de 4 processos sequenciais, independentes;  Somente um programa está ativo a cada momento;  Conceitualmente, cada processo tem sua própria CPU. Com a CPU alternando entre os processos, a velocidade com que um processo executa não será uniforme.

Criação de Processos

 Sistemas operacionais precisam de mecanismos para criar processos.
 Principais eventos que levam à criação de processos:

 Início do sistema (processos de background e foreground);  Execução de chamada ao sistema de criação de processos;  Solicitação do usuário para criar um novo processo;  Início de um job em lote;

Criação de Processos

 Todo novo processo (filho) é criado por um processo existente (pai).

 UNIX: fork e execve ;  Windows: CreateProcess ;

Termino de Processos

 Condições que levam ao término de processos:

 Saída normal (voluntária);  Saída por erro (voluntária);  Erro fatal (involuntário);  Cancelamento por um outro processo (involuntário);

 Em alguns sistemas, quando um processo termina, todos os processos
criados por ele são imediatamente cancelados.

UNIX e Windows não funcionam dessa maneira.

Hierarquias de Processos

 No Linux, um processo e todos os seus filhos e demais descendentes
formam um grupo de processos.
 No Linux, um processo especial chamado systemd (ou init , dependendo
da versão) está presente na imagem de inicialização do sistema. É o
primeiro processo a ser executado e é responsável por iniciar a execução
dos demais processos do sistema operacional.
 Cada um desses processos pode iniciar mais processos. Desse modo, todos
os processos no Linux pertencem a uma única árvore, com o systemd (ou
init) em sua raiz.

Hierarquias de Processos

 A imagem a seguir exemplifica a árvore de processos em um sistema Linux
por meio da execução do comando “ pstree ”.

Estados de Processos  No estado executando , o processo tem suas instruções executadas pelo processador e três coisas podem acontecer:  1. A primeira delas é o processo ser executado por muito tempo. Então, o sistema operacional interrompe momentaneamente a execução do processo para colocar outro em seu lugar, ocorrendo a transição 3, que leva o processo de volta ao estado pronto, no qual aguardará nova oportunidade de execução.  2. Pode ocorrer ainda de o processo solicitar uma operação de entrada e saída e ter de aguardar a conclusão da operação, que costuma ser demorada quando comparada à capacidade de processamento do processador de um computador. Nesse caso, ocorre a transição 4, e o processo vai para o estado bloqueado.  3. Por último, o processo pode encerrar sua execução, realizando a transição 6 e indo para o estado terminado.  O processo que vai para o estado bloqueado permanece nele até que seja concluída a operação que aguardava. Quando isso ocorre, o processo passa pela transição 5 e vai para o estado pronto até ser novamente selecionado para

16 execução.

O estado terminado é para os processos que não serão mais executados. Quando está neste estado, o sistema operacional deve providenciar a desalocação dos recursos que ainda estejam alocados ao processo. Somente após a desalocação de todos os recursos, o processo deixa de existir no sistema.

Estados de Processos

 Para implementar o modelo de processos, o Linux mantém uma tabela de
processos, com uma entrada por processo. Esta entrada é chamada de
Bloco de Controle de Processo – BCP ( Process Control Block – PCB ) e
contém todas as informações do processo. Algumas entradas do BCP são:

 Estado do processo  Prioridade do processo  Número do processo  Registradores da CPU  Informações relativas ao gerenciamento de memória  Informações de contabilidade  Informações sobre operações de E/S

Mudança de contexto

 Para transferir o controle da CPU de um processo a outro, é necessário
guardar o estado do processo em execução e carregar o estado do
processo a entrar em execução. Esta tarefa é conhecida como mudança
de contexto (ou troca de contexto).
 O tempo gasto na mudança de contexto varia, dependendo de fatores
como velocidade da memória, quantidade de registradores e existência
de instruções especiais. Este tempo costuma variar de 1 a 1000
microssegundos.

Mudança de contexto

 O contexto de um processo pode ser dividido em três elementos básicos:

 O contexto de hardware constitui-se basicamente do conteúdo dos registradores. No momento em que o processo perde a CPU, o sistema salva suas informações. Ele é fundamental para a implementação dos sistemas multiprogramáveis.  O contexto de software especifica características do processo que influenciarão na execução de um programa. Ele define basicamente três grupos de informações sobre um processo: identificação, quotas e privilégios. O contexto de software especifica características do processo que influenciarão na execução de um programa. Ele define basicamente três grupos de informações sobre um processo: identificação, quotas e privilégios.  O espaço de endereçamento é a área de memória do processo em que o programa será executado e a área de memória onde os dados do processo serão armazenados. Cada processo possui seu próprio espaço de endereçamento, que deve ser protegido dos demais.