SO 03 Classificação

Fazer download em pptx, pdf ou txt
Fazer download em pptx, pdf ou txt
Você está na página 1de 36

SISTEMAS

OPERACIONAIS I
Análise e Desenvolvimento de Sistemas
Prof. Ms. José Geraldo de Moraes - http://lattes.cnpq.br/3313135299163906
Roteiro
 Conceitos de Sistemas Operacionais
 Classificação dos Sistemas Operacionais
 Sistemas Monoprogramáveis
 Sistemas Multiprogramáveis
 Sistemas com Múltiplos processadores
 Interrupção e Exceção
 Buffering
 Spooling
 Reentrância
 Tendências
Conceitos de Sistemas Operacionais
Conceitos de Sistemas Operacionais
 É uma máquina estendida (visão top-down)
 Software que abstrai as complexidades do hardware de um
usuário/programador;
 Apresenta ao usuário uma máquina virtual, mais fácil de usar;
 Software que controla a execução dos programas de aplicação e
mascara os detalhes do hardware;
 É um gerenciador de recurso (visão botton-up)
 Provê acesso ordenado aos elementos do hw;
 Monitora os acessos aos recursos do hardware.
Tipos de Sistemas Operacionais
 Mainframes
 Jobs em batch, transações, multiprogramação
 Servidores
 Usuários conectados remotamente por redes
 Distribuídos
 Extensão de SO em servidores (programação paralela)
 Desktop
 Interface amigável com o usuário. Ex. Windows
 Tempo real
 Confiabilidade de resposta previsível é priorizada Ex. RT-Linux, Vx Works
 Sistemas embarcados
 Limitados em memória, potência. Ex.: Tablets, TVs, Microondas, etc.
 Sistemas Móveis
 Gestão eficiente de energia, conectividade com diversos tipos de redes. Ex. Smartphones, tablets.
Classificação - Sistemas Operacionais
 Os principais aspectos que diferem os tipos de SOs se
referem ao propósito para o qual o mesmo foi
desenvolvido.
 Assim, o tipo de um SO é classificado de acordo com os
seguintes aspectos:
 Interatividade
 Tempo de Resposta
 Produtividade (throughput)
Classificação – Sistemas Operacionais

Sistemas
Operacionais

Sistemas Sistemas Sistemas com


Monoprogramáveis / Multiprogramáveis / Múltiplos
Monotarefa Multitarefa Processadores

Sistemas de Tempo Sistemas de Tempo Fortemente Fracamente


Sistemas Bach
Compartilhado Real Acoplados Acoplados

Assimétricos Simétricos Redes Distribuidos


Sistemas Monoprogramáveis
Sistemas Multiprogramáveis

Sistemas
Multiprogramávei
s / Multitarefa

Sistemas de
Sistemas de
Sistemas em Batch Tempo
Tempo Real
Compartilhado
Sistemas Multiprogramáveis
Sistema Monoprogramável x Sistema
Multiprogramável
Sistemas Multiprogramáveis
 Sistemas Batch (Lotes)
 Primeiros sistemas multiprogramáveis e caracterizam-se por
ter seus programas, quando submetidos, armazenados em
disco ou fita, onde esperam para se executados
sequencialmente.
 Não exigiam interação com o usuário.
 Utilizam melhor o processador, porém o tempo de resposta
pode ser longo devido ao processamento sequencial.
Sistemas Multiprogramáveis
 Sistemas de Tempo Compartilhado
Permitem a integração do usuário com o sistema através de
terminais.
 Também conhecidos como sistemas on-line.
 Para cada usuário (aplicação o sistema aloca uma fatia de
tempo (time-slice) de processador, e caso o programa não
seja concluído neste intervalo de tempo, é substituído por
outro usuário e aguarda outra fatia de tempo.
Sistemas Multiprogramáveis
 Sistemas de Tempo Real

 Semelhantes em implementação aos sistemas de tempo compartilhado.


 Diferem no tempo de resposta exigido no processamento das aplicações.
 Os tempos de resposta devem estar dentro de limites rígidos, que devem ser
obedecidos, caso contrário podem ocorrer problemas irreparáveis.
 Um programa detém o processador o quanto for necessário, até que apareça outro
prioritário (controlado pela própria aplicação e não e pelo sistema).
 Presentes em controles de processo, como monitoramento de refinarias de petróleo,
tráfego aéreo ou em qualquer aplicação onde o tempo de resposta é fator fundamental.
Prioridades – Tempo Real
Ex.: Caldeira

P0 = Aquece a caldeira
(Pri = 0)
P1 = Mantem a caldeira
aquecida (Pri=1)
1.000
P1

P0 0
Sistemas Multiprogramáveis
 Sistemas Móveis
 S.O.s adaptados para dispositivos móveis, como PDAs, smartphones.
 Memória limitada, processador mais lento e display de pequenas
dimensões.
 S.O. e aplicações projetados para minimizar o uso do processador
(redução do consumo da bateria).
 Uso possível de tecnologias wireless, como Bluetooth, para acesso
remoto a e-mail e navegação Web.
 Câmeras e players são exemplos de acessórios que expandem a sua
funcionalidade
Sistemas com múltiplos
processadores
Sistemas com múltiplos
processadores
 Sistemas fortemente acoplados
 São sistemas com mais de uma UCP atuando de modo colaborativo (“
multiprocessor systems”).
 Os processadores compartilham o barramento, memória e relógio, além
de dispositivos periféricos;

 Principais vantagens:
 Escalabilidade, Disponibilidade, Balanceamento de carga.
 Classificam-se em Simétricos e Assimétricos.
Sistemas com múltiplos
processadores
 Sistemas Simétricos
 Todos os processadores tem as mesmas funções e podem executar o Sistema
Operacional de forma independente.
 Todos os processadores são pares, não existindo relação de mestre-escravo.

 Sistemas Assimétricos(master/slave)
 Nos sistemas assimétricos(mestre/escravo) somente um processador primário
é responsável pelo controle dos demais processadores e pela execução do
Sistema Operacional.
Sistemas com múltiplos
processadores
Sistemas com múltiplos
processadores
 Sistemas Fracamente Acoplados (Sistemas Distribuidos / Clusters)
 Conjunto de computadores interconectados de forma a possibilitar a
execução de um serviço.
 Requer uma infra-estrutura física de redes (LAN, WAN) e suporte de
protocolos de comunicação (TCP/IP).
 A realização de uma tarefa é distribuída entre vários nós da rede.
 A existência de várias máquinas é transparente, isto é, o software fornece
uma visão única do sistema.
 Vantagens:
 Compartilhamento de recursos Balanceamento de carga, Aumento da
velocidade de computação, Maior confiabilidade
Interrupção e Exceção (SO Multiprogramáveis)
 Na execução de um programa, alguns eventos podem ocorrer
durante o processamento, obrigando a intervenção do sistema
operacional.
 Este tipo de intervenção é chamada interrupção e obriga que o
fluxo de execução seja alterado.
 Eventos responsáveis pelas interrupções:
 resultado da execução do programa;
 gerado pelo Sistema Operacional;
 gerado por dispositivo de hardware.
Tipos de Interrupções

 Interna (Exceção)
 É resultado direto da execução do próprio programa, ou seja,
uma instrução responsável pela ocorrência da interrupção.
Também é chamado de traps ou exceções.
 Exemplo: Divisão por zero ou exceder a representação
numérica (overflow).
Exemplo de Exceção
Tipos de Interrupções

 Externa ou do Sistema
 É gerada pelo S. O . ou por algum dispositivo e, neste caso,
independe do programa que está sendo executado .
 Exemplo: Ocorre quando um dispositivo de E/S avisa à CPU
que está pronto para transmitir algum dado.
Mecanismo de Interrupção e
Exceção
Buffering
 Técnica que consiste no uso de uma área na MP para a transferência de dados
entre os periféricos e a memória principal (Buffer de E/S).
 Objetivo: minimizar o problema da disparidade da velocidade de processamento
existente entre a UCP e os dispositivos de E/S, mantendo-os ocupados na maior
parte do tempo.
 Registro: é a unidade de transferência. O tamanho do registro é especificado em
função da natureza do dispositivo.
 O buffer deve ter capacidade de armazenar diversos registros, de modo a sempre
existirem dados lidos, mas não processados (leitura), ou dados processados, mas
não gravados (gravação).
Buffering (Operações de E/S)
Spooling
 A técnica de Spooling tem a finalidade de liberar a UCP das
tarefas de impressão. No momento em que um comando de
impressão é executado, as informações a serem impressas são
gravadas em um arquivo em disco (arquivo de spool), para ser
impresso posteriormente pelo sistema conforme mostra a figura.
 Dessa forma, situações como a de um programa reservar a
impressora, imprimir uma linha e ficará guardando para
continuar a impressão não acontecerão.
Características da técnica de Spooling
 Spool = carretel; “spooling” uso do disco para enfileirar imagens
de cartões e relatórios para serem gravados/lidos posteriormente.
 SO controla a localização de cada job e cada relatório no disco
através de uma estrutura de dados chamada “tabela de spooling”
 Há concorrência entre submissão, execução e impressão de
diferentes serviços.
 Job-spool - grupo de serviços aguardando execução segundo
algum critério de escalonamento (“Scheduling”)
Técnica de Spooling
Técnica de Reentrância
Tendências
 Blade Servers (Consolidação)

 Máquinas virtuais (virtualização)

 Thin clients

 Múltiplos cores

 Cloud Computing
Tendências de rede
Computação em nuvem

 A computação em nuvem é uma tendência global que


permite armazenar arquivos pessoais ou fazer backup dos
nossos dados nos servidores pela Internet.
 Aplicações como processamento de texto e edição de
fotos também podem ser acessadas usando a nuvem.
 A computação em nuvem também permite que as
empresas ampliem seus recursos sob demanda e que
sejam entregues automaticamente a qualquer dispositivo
em qualquer lugar do mundo.
 A computação em nuvem é possível devido aos data
centers. Empresas menores que não podem arcar com
seus próprios data centers, alugar serviços de
armazenamento e servidor de maiores empresas de data
center na nuvem.
Tendências de rede
Computação em nuvem (Continuação)

 Quatro tipos de nuvens:


 Nuvens Públicas
 Serviços e aplicativos são disponibilizados para o
público em geral por meio de um modelo de
pagamento por uso ou gratuitamente.
 Nuvens Particulares
 Os aplicativos e serviços devem ser usados por uma
empresa ou entidade específica, como, por exemplo, o
governo.
 Nuvens Híbridas
 Com dois ou mais tipos de nuvem – por exemplo,
parte personalizada e parte pública. Cada parte
permanece um objeto distintivo, mas as duas estão
conectadas usando a mesma arquitetura.
 Nuvens personalizadas
Atividades
 Em um sistema multiprogramável, seus usuários utilizam o
mesmo editor de textos (200 Kb), compilador (300 Kb),
software de correio eletrônico (400 Kb) e uma aplicação
corporativa (500 Kb). Caso o sistema não implemente
reentrância, qual o espaço de memória principal ocupado
pelos programas quando 10 usuários estiverem utilizando
todas as aplicações simultaneamente? Qual o espaço liberado
quando o sistema implementa reentrância em todas as
aplicações?

Você também pode gostar