24
Tema 3 temas Operacionais e a organização em proce Sistemas Operacionais Luis Cezar Ribei

Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Embed Size (px)

Citation preview

Page 1: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Tema 3Sistemas Operacionais e a organização em processos

Sistemas Operacionais

Luis Cezar Ribeiro

Page 2: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Estrutura dos Sistemas operacionais

O sistema operacional é formado por um conjunto de rotinas que oferecem serviços aos usuários do sistema e suas aplicações, bem como a outras rotinas do próprio sistema.

Page 3: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Estrutura dos Sistemas operacionais

Esse conjunto de rotinas é chamado núcleo do sistema ou Kernel (cérebro). As principais funções do núcleo são:•tratamento de interrupções;•criação e eliminação de processos;•sincronização e comunicação de processos;•escalonamento e controle dos processos;•gerência de memória;•gerência do sistema de arquivos;•operações de entrada e saída;•contabilização e segurança do sistema.

Page 4: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

System CallsUma preocupação que surge na grande maioria dos projetos de sistemas operacionais é a implementação de mecanismos de proteção ao núcleo do sistema e de acesso aos seus serviços.

HardwareAplicaçãoSystem

Call Núcleo

Page 5: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

As system call podem ser divididas em grupos de função:

* Gerência de processosCriação e eliminação de processosAlteração das características do

processoSincronização e comunicação entre

processos* Gerência de memória

Alocação e desalocação de memória*Gerência de entrada/saída

Operações de entrada/saídaManipulação de arquivos e diretórios

Page 6: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Memória

principal

PROGRAMA AProgramas do

usuário executam no modo usuário

PROGRAMA BSYSTEM CALL

ROTINA DO S.O.

Sistema Operacional executa no

modo Kernell

Page 7: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Sistemas MonolíticosSimplesmente não há estruturação visível na organização monolítica. O sistema operacional é escrito como um conjunto de procedimentos, cada um dos quais podendo chamar qualquer dos demais sempre que necessário.

Page 8: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Sistemas em CamadasUm sistema em camadas divide o sistema operacional em camadas sobrepostas. Neste tipo de implementação, as camadas mais internas são mais privilegiadas que as mais externas.

Operador5

Programas de Usuário4

Entrada/Saída3

Comunicação2

Gerência de memória1

Multiprogramação0

Page 9: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Máquinas Virtuais

Sistemas Operacionais Modernos 2ª Ed.

O conceito que surgiu na década de 1970, consiste principalmente em um S. O. que atua como supervisor, e permite a instalação de outros S.O.´s no mesmo Hardware, de maneira independente e hermética.Esta aplicação é atualmente largamente utilizada em ambientes complexos como os DataCenters.

Page 10: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Modelo Cliente ServidorUma tendência dos sistemas operacionais modernos é tornar o núcleo do sistema operacional o menor e mais simples possível.

Núcleo

Hardware

Cliente

Servidorde arquivo

Servidorde memória

Servidorde processo

Servidorde rede

Modo usuário

Modo kernel

Page 11: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

O modelo do ProcessoNeste modelo, todo software passível de rodar em um computador, muitas vezes incluindo o próprio sistema operacional, é organizado como um conjunto de processos sequenciais, ou simplesmente processos.

Page 12: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Hierarquias de Processos

Na grande maioria dos sistemas, é preciso haver um mecanismo que permita criar e destruir processos, quando necessário, durante a operação.

Page 13: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Estado do ProcessoConsiderando que os S. O. executam diversos processos simultaneamente, é importante entender as suas instruções serão alternadamente executadas pelo processador.

Sistemas Operacionais Modernos 2ª Ed.

Page 14: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Esta visão dá origem ao modelo mostrado na figura abaixo. Nele, o nível mais baixo do sistema operacional é escalonador de processos, o qual é programado em código de montagem. O resto do sistema operacional é estruturado confortavelmente na forma de processos.

Modelo de Processo

Processo

1 2 ... n-2 n-1

Escalonador

Page 15: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Operação de criação de processos

Principais eventos que levam à criação de processos

1. Início do sistema2. Execução de chamada ao sistema de

criação de processos3. Solicitação do usuário para criar um

novo processo4. Início de um job em lote

Page 16: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Operação de encerramento de processos

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

1. Saída normal (voluntária)2. Saída por erro (voluntária)3. Erro fatal (involuntário)4. Cancelamento por um outro processo

(involuntário)

Page 17: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Campos de uma tabela de processos

Page 18: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Threads

Um thread é uma sequência de instruções que vão ser executadas num programa.Pode-se dizer que um thread é um procedimento que é executado dentro de um processo de uma forma independente.

Page 19: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Modelo de Threads

A tabela abaixo apresenta a organização das Threads pelo sistema Operacional, onde a primeira coluna é comum para todos os processos, e a segunda coluna apresenta os itens restritos a cada Thread.

Page 20: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Interrupção e ExceçãoUma interrupção é gerada pelo sistema operacional ou por algum dispositivo e, neste caso, independe do programa que está sendo executado. Neste caso, a UCP deve interromper o programa para atender a solicitação do dispositivo.

Interrupção

.

.

.

.

.

.

.

.

.

.

.

.

.

Salva osregistradores

Identifica a origemda interrupção

Rotina deTratamentoObtém o endereço da

rotina de tratamento :::

Restauraos registradores

Programa

Page 21: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Buffering

A técnica de buffering consiste na utilização de uma área de memória para a transferência de dados entre os periféricos e a memória principal denominada buffer.

BufferControlador

de E/SUCP

Memória Principal

GravaçãoGravação

LeituraLeitura

Page 22: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Spooling

A técnica de spooling (simultaneous peripheral operation on-line) foi introduzida no final dos anos 50 para aumentar a produtividade e a eficiência dos sistemas operacionais. Atualmente, a técnica de spooling é implementada na maioria dos sistemas operacionais.

SistemaOperacionalPrograma

Impressão

Arquivo de Spool

Page 23: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

ReentrânciaReentrância é a capacidade de um código de programa (código reentrante) poder ser compartilhado por diversos usuários, exigindo que apenas uma cópia do programa esteja na memória. A reentrância permite que cada usuário possa estar em um ponto diferente do código reentrante, manipulando dados próprios, exclusivos de cada usuários.

Page 24: Tema 3 Sistemas Operacionais e a organização em processos Sistemas Operacionais Luis Cezar Ribeiro

Até a próxima aula.